Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d9e85655 authored by YOSHIFUJI Hideaki / 吉藤英明's avatar YOSHIFUJI Hideaki / 吉藤英明 Committed by David S. Miller
Browse files

netfilter ip6table_mangle: Use ipv6_addr_equal() where appropriate.

parent 70e94e66
Loading
Loading
Loading
Loading
+3 −2
Original line number Original line Diff line number Diff line
@@ -11,6 +11,7 @@
#include <linux/module.h>
#include <linux/module.h>
#include <linux/netfilter_ipv6/ip6_tables.h>
#include <linux/netfilter_ipv6/ip6_tables.h>
#include <linux/slab.h>
#include <linux/slab.h>
#include <net/ipv6.h>


MODULE_LICENSE("GPL");
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Netfilter Core Team <coreteam@netfilter.org>");
MODULE_AUTHOR("Netfilter Core Team <coreteam@netfilter.org>");
@@ -60,8 +61,8 @@ ip6t_mangle_out(struct sk_buff *skb, const struct net_device *out)
			    dev_net(out)->ipv6.ip6table_mangle);
			    dev_net(out)->ipv6.ip6table_mangle);


	if (ret != NF_DROP && ret != NF_STOLEN &&
	if (ret != NF_DROP && ret != NF_STOLEN &&
	    (memcmp(&ipv6_hdr(skb)->saddr, &saddr, sizeof(saddr)) ||
	    (!ipv6_addr_equal(&ipv6_hdr(skb)->saddr, &saddr) ||
	     memcmp(&ipv6_hdr(skb)->daddr, &daddr, sizeof(daddr)) ||
	     !ipv6_addr_equal(&ipv6_hdr(skb)->daddr, &daddr) ||
	     skb->mark != mark ||
	     skb->mark != mark ||
	     ipv6_hdr(skb)->hop_limit != hop_limit ||
	     ipv6_hdr(skb)->hop_limit != hop_limit ||
	     flowlabel != *((u_int32_t *)ipv6_hdr(skb))))
	     flowlabel != *((u_int32_t *)ipv6_hdr(skb))))