summaryrefslogtreecommitdiffstats
path: root/include/net/ip6_route.h
diff options
context:
space:
mode:
authorWang Yufen <wangyufen@huawei.com>2014-03-29 02:27:30 +0100
committerDavid S. Miller <davem@davemloft.net>2014-03-31 22:16:16 +0200
commit60ea37f7a5c776be4631c535c7cdd3ce62cf4dee (patch)
treeb2d87158ab2ea59d199d0b02b2242571e761ec58 /include/net/ip6_route.h
parentipv6: tcp_ipv6 do some cleanup (diff)
downloadlinux-60ea37f7a5c776be4631c535c7cdd3ce62cf4dee.tar.xz
linux-60ea37f7a5c776be4631c535c7cdd3ce62cf4dee.zip
ipv6: reuse rt6_need_strict
Move the whole rt6_need_strict as static inline into ip6_route.h, so that it can be reused Signed-off-by: Wang Yufen <wangyufen@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/ip6_route.h')
-rw-r--r--include/net/ip6_route.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/ip6_route.h b/include/net/ip6_route.h
index 00e3f12cb2f9..3c3bb184eb8f 100644
--- a/include/net/ip6_route.h
+++ b/include/net/ip6_route.h
@@ -51,6 +51,11 @@ static inline unsigned int rt6_flags2srcprefs(int flags)
return (flags >> 3) & 7;
}
+static inline bool rt6_need_strict(const struct in6_addr *daddr)
+{
+ return ipv6_addr_type(daddr) &
+ (IPV6_ADDR_MULTICAST | IPV6_ADDR_LINKLOCAL | IPV6_ADDR_LOOPBACK);
+}
void ip6_route_input(struct sk_buff *skb);