diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-01-31 08:07:21 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-31 22:28:20 -0500 |
commit | d86e0dac2ce412715181f792aa0749fe3effff11 (patch) | |
tree | bc9197a7316c7d7641112d5f5975d8b91afdbd08 /include/linux | |
parent | c67499c0e772064b37ad75eb69b28fc218752636 (diff) |
[NETNS]: Tcp-v6 sockets per-net lookup.
Add a net argument to inet6_lookup and propagate it further.
Actually, this is tcp-v6 implementation of what was done for
tcp-v4 sockets in a previous patch.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/ipv6.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h index c34786044a1b..4aaefc349a4b 100644 --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h | |||
@@ -457,16 +457,16 @@ static inline struct raw6_sock *raw6_sk(const struct sock *sk) | |||
457 | #define inet_v6_ipv6only(__sk) 0 | 457 | #define inet_v6_ipv6only(__sk) 0 |
458 | #endif /* defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) */ | 458 | #endif /* defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) */ |
459 | 459 | ||
460 | #define INET6_MATCH(__sk, __hash, __saddr, __daddr, __ports, __dif)\ | 460 | #define INET6_MATCH(__sk, __net, __hash, __saddr, __daddr, __ports, __dif)\ |
461 | (((__sk)->sk_hash == (__hash)) && \ | 461 | (((__sk)->sk_hash == (__hash)) && ((__sk)->sk_net == (__net)) && \ |
462 | ((*((__portpair *)&(inet_sk(__sk)->dport))) == (__ports)) && \ | 462 | ((*((__portpair *)&(inet_sk(__sk)->dport))) == (__ports)) && \ |
463 | ((__sk)->sk_family == AF_INET6) && \ | 463 | ((__sk)->sk_family == AF_INET6) && \ |
464 | ipv6_addr_equal(&inet6_sk(__sk)->daddr, (__saddr)) && \ | 464 | ipv6_addr_equal(&inet6_sk(__sk)->daddr, (__saddr)) && \ |
465 | ipv6_addr_equal(&inet6_sk(__sk)->rcv_saddr, (__daddr)) && \ | 465 | ipv6_addr_equal(&inet6_sk(__sk)->rcv_saddr, (__daddr)) && \ |
466 | (!((__sk)->sk_bound_dev_if) || ((__sk)->sk_bound_dev_if == (__dif)))) | 466 | (!((__sk)->sk_bound_dev_if) || ((__sk)->sk_bound_dev_if == (__dif)))) |
467 | 467 | ||
468 | #define INET6_TW_MATCH(__sk, __hash, __saddr, __daddr, __ports, __dif) \ | 468 | #define INET6_TW_MATCH(__sk, __net, __hash, __saddr, __daddr, __ports, __dif) \ |
469 | (((__sk)->sk_hash == (__hash)) && \ | 469 | (((__sk)->sk_hash == (__hash)) && ((__sk)->sk_net == (__net)) && \ |
470 | (*((__portpair *)&(inet_twsk(__sk)->tw_dport)) == (__ports)) && \ | 470 | (*((__portpair *)&(inet_twsk(__sk)->tw_dport)) == (__ports)) && \ |
471 | ((__sk)->sk_family == PF_INET6) && \ | 471 | ((__sk)->sk_family == PF_INET6) && \ |
472 | (ipv6_addr_equal(&inet6_twsk(__sk)->tw_v6_daddr, (__saddr))) && \ | 472 | (ipv6_addr_equal(&inet6_twsk(__sk)->tw_v6_daddr, (__saddr))) && \ |