Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6
authorDavid S. Miller <davem@davemloft.net>
Fri, 27 Mar 2009 05:45:23 +0000 (22:45 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 27 Mar 2009 05:45:23 +0000 (22:45 -0700)
1  2 
include/linux/netfilter/x_tables.h
lib/nlattr.c
net/ipv4/netfilter/arp_tables.c
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c
net/netfilter/nf_conntrack_core.c
net/netfilter/nf_conntrack_netlink.c
net/netfilter/nf_conntrack_proto_tcp.c

Simple merge
diff --cc lib/nlattr.c
index 80009a24e21dd553a6204310b083ccd5e8bf6cf3,ae32c573df00d1158ab019a3d91e3df92281a6ea..c4706eb98d3dfc922ec19fdbb0c23a36fab47a58
@@@ -463,10 -480,9 +489,11 @@@ int nla_append(struct sk_buff *skb, in
        memcpy(skb_put(skb, attrlen), data, attrlen);
        return 0;
  }
 +EXPORT_SYMBOL(nla_append);
 +#endif
  
  EXPORT_SYMBOL(nla_validate);
+ EXPORT_SYMBOL(nla_policy_len);
  EXPORT_SYMBOL(nla_parse);
  EXPORT_SYMBOL(nla_find);
  EXPORT_SYMBOL(nla_strlcpy);
index 84b9c179df5145fb998e54963496fe7dfbc62573,4f454ce9a602da8a6a6492cf5e4c0753ec3166fa..35c5f6a5cb7c8ee4dad9ad56eba517727ffefbc5
@@@ -81,28 -80,13 +81,16 @@@ static inline int arp_devaddr_compare(c
  static unsigned long ifname_compare(const char *_a, const char *_b, const char *_mask)
  {
  #ifdef CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS
-       const unsigned long *a = (const unsigned long *)_a;
-       const unsigned long *b = (const unsigned long *)_b;
-       const unsigned long *mask = (const unsigned long *)_mask;
-       unsigned long ret;
-       ret = (a[0] ^ b[0]) & mask[0];
-       if (IFNAMSIZ > sizeof(unsigned long))
-               ret |= (a[1] ^ b[1]) & mask[1];
-       if (IFNAMSIZ > 2 * sizeof(unsigned long))
-               ret |= (a[2] ^ b[2]) & mask[2];
-       if (IFNAMSIZ > 3 * sizeof(unsigned long))
-               ret |= (a[3] ^ b[3]) & mask[3];
-       BUILD_BUG_ON(IFNAMSIZ > 4 * sizeof(unsigned long));
+       unsigned long ret = ifname_compare_aligned(_a, _b, _mask);
  #else
        unsigned long ret = 0;
 +      const u16 *a = (const u16 *)_a;
 +      const u16 *b = (const u16 *)_b;
 +      const u16 *mask = (const u16 *)_mask;
        int i;
  
 -      for (i = 0; i < IFNAMSIZ; i++)
 -              ret |= (_a[i] ^ _b[i]) & _mask[i];
 +      for (i = 0; i < IFNAMSIZ/sizeof(u16); i++)
 +              ret |= (a[i] ^ b[i]) & mask[i];
  #endif
        return ret;
  }
Simple merge
Simple merge