ipv6: use ipv6_addr_any() helper
ipv6_addr_any() is a faster way to determine if an addr is ipv6 any addr, no need to compute the addr type. Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com> Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e43ac79a4b
commit
7996c799ae
@ -3846,7 +3846,7 @@ static int inet6_fill_ifaddr(struct sk_buff *skb, struct inet6_ifaddr *ifa,
|
|||||||
valid = INFINITY_LIFE_TIME;
|
valid = INFINITY_LIFE_TIME;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ipv6_addr_type(&ifa->peer_addr) != IPV6_ADDR_ANY) {
|
if (!ipv6_addr_any(&ifa->peer_addr)) {
|
||||||
if (nla_put(skb, IFA_LOCAL, 16, &ifa->addr) < 0 ||
|
if (nla_put(skb, IFA_LOCAL, 16, &ifa->addr) < 0 ||
|
||||||
nla_put(skb, IFA_ADDRESS, 16, &ifa->peer_addr) < 0)
|
nla_put(skb, IFA_ADDRESS, 16, &ifa->peer_addr) < 0)
|
||||||
goto error;
|
goto error;
|
||||||
@ -4579,7 +4579,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
|
|||||||
ip6_ins_rt(ifp->rt);
|
ip6_ins_rt(ifp->rt);
|
||||||
if (ifp->idev->cnf.forwarding)
|
if (ifp->idev->cnf.forwarding)
|
||||||
addrconf_join_anycast(ifp);
|
addrconf_join_anycast(ifp);
|
||||||
if (ipv6_addr_type(&ifp->peer_addr) != IPV6_ADDR_ANY)
|
if (!ipv6_addr_any(&ifp->peer_addr))
|
||||||
addrconf_prefix_route(&ifp->peer_addr, 128,
|
addrconf_prefix_route(&ifp->peer_addr, 128,
|
||||||
ifp->idev->dev, 0, 0);
|
ifp->idev->dev, 0, 0);
|
||||||
break;
|
break;
|
||||||
@ -4587,7 +4587,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
|
|||||||
if (ifp->idev->cnf.forwarding)
|
if (ifp->idev->cnf.forwarding)
|
||||||
addrconf_leave_anycast(ifp);
|
addrconf_leave_anycast(ifp);
|
||||||
addrconf_leave_solict(ifp->idev, &ifp->addr);
|
addrconf_leave_solict(ifp->idev, &ifp->addr);
|
||||||
if (ipv6_addr_type(&ifp->peer_addr) != IPV6_ADDR_ANY) {
|
if (!ipv6_addr_any(&ifp->peer_addr)) {
|
||||||
struct rt6_info *rt;
|
struct rt6_info *rt;
|
||||||
struct net_device *dev = ifp->idev->dev;
|
struct net_device *dev = ifp->idev->dev;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user