[IPv6] route: Simplify ip6_del_rt()
Provide a simple ip6_del_rt() for the majority of users and an alternative for the exception via netlink. Avoids code obfuscation. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
e9ce1cd3cf
commit
e0a1ad73d3
@ -736,7 +736,7 @@ static void ipv6_del_addr(struct inet6_ifaddr *ifp)
|
||||
|
||||
if (rt && ((rt->rt6i_flags & (RTF_GATEWAY | RTF_DEFAULT)) == 0)) {
|
||||
if (onlink == 0) {
|
||||
ip6_del_rt(rt, NULL, NULL, NULL);
|
||||
ip6_del_rt(rt);
|
||||
rt = NULL;
|
||||
} else if (!(rt->rt6i_flags & RTF_EXPIRES)) {
|
||||
rt->rt6i_expires = expires;
|
||||
@ -1662,7 +1662,7 @@ void addrconf_prefix_rcv(struct net_device *dev, u8 *opt, int len)
|
||||
if (rt && ((rt->rt6i_flags & (RTF_GATEWAY | RTF_DEFAULT)) == 0)) {
|
||||
if (rt->rt6i_flags&RTF_EXPIRES) {
|
||||
if (valid_lft == 0) {
|
||||
ip6_del_rt(rt, NULL, NULL, NULL);
|
||||
ip6_del_rt(rt);
|
||||
rt = NULL;
|
||||
} else {
|
||||
rt->rt6i_expires = jiffies + rt_expires;
|
||||
@ -3557,7 +3557,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
|
||||
addrconf_leave_anycast(ifp);
|
||||
addrconf_leave_solict(ifp->idev, &ifp->addr);
|
||||
dst_hold(&ifp->rt->u.dst);
|
||||
if (ip6_del_rt(ifp->rt, NULL, NULL, NULL))
|
||||
if (ip6_del_rt(ifp->rt))
|
||||
dst_free(&ifp->rt->u.dst);
|
||||
break;
|
||||
}
|
||||
|
Reference in New Issue
Block a user