removing fix applied by Changeset 4378
authorAndreas Steffen <andreas.steffen@strongswan.org>
Wed, 8 Oct 2008 06:15:41 +0000 (06:15 -0000)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Wed, 8 Oct 2008 06:15:41 +0000 (06:15 -0000)
src/charon/plugins/kernel_netlink/kernel_netlink_net.c

index 6e1489c..f147762 100644 (file)
@@ -698,16 +698,14 @@ static bool addr_in_subnet(chunk_t addr, chunk_t net, int net_len)
        /* scan through all bits, beginning in the front */
        for (byte = 0; byte < addr.len; byte++)
        {
-               for (bit = 0; bit < 8; bit++)
+               for (bit = 7; bit >= 0; bit--)
                {
-                       u_char bitpos = 1 << (7-bit);
-
                        /* check if bits are equal (or we reached the end of the net) */
                        if (bit + byte * 8 > net_len)
                        {
                                return TRUE;
                        }
-                       if ((bitpos & addr.ptr[byte]) != (bitpos & net.ptr[byte]))
+                       if (((1<<bit) & addr.ptr[byte]) != ((1<<bit) & net.ptr[byte]))
                        {
                                return FALSE;
                        }