]> bbs.cooldavid.org Git - net-next-2.6.git/commit - net/ipv6/route.c
ipv6: Optmize translation between IPV6_PREFER_SRC_xxx and RT6_LOOKUP_F_xxx.
authorYOSHIFUJI Hideaki / 吉藤英明 <yoshfuji@linux-ipv6.org>
Sun, 7 Mar 2010 00:14:44 +0000 (00:14 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sun, 7 Mar 2010 23:25:53 +0000 (15:25 -0800)
commit0c9a2ac1f8a2e55b3382dfc27256878a58ea49e9
tree0084f79428afa47efd40594cc96fd3a6b87cfc24
parent25dc27d17dc868aae78fd03bef3113cf586b12e5
ipv6: Optmize translation between IPV6_PREFER_SRC_xxx and RT6_LOOKUP_F_xxx.

IPV6_PREFER_SRC_xxx definitions:
| #define IPV6_PREFER_SRC_TMP             0x0001
| #define IPV6_PREFER_SRC_PUBLIC          0x0002
| #define IPV6_PREFER_SRC_COA             0x0004

RT6_LOOKUP_F_xxx definitions:
| #define RT6_LOOKUP_F_SRCPREF_TMP        0x00000008
| #define RT6_LOOKUP_F_SRCPREF_PUBLIC     0x00000010
| #define RT6_LOOKUP_F_SRCPREF_COA        0x00000020

So, we can translate between these two groups by shift operation
instead of multiple 'if's.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/ip6_route.h
net/ipv6/fib6_rules.c
net/ipv6/route.c