diff options
Diffstat (limited to 'include/linux/udp.h')
-rw-r--r-- | include/linux/udp.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/udp.h b/include/linux/udp.h index 832361e3e596..03f72a2ba028 100644 --- a/include/linux/udp.h +++ b/include/linux/udp.h | |||
@@ -55,6 +55,9 @@ static inline int udp_hashfn(struct net *net, unsigned num, unsigned mask) | |||
55 | struct udp_sock { | 55 | struct udp_sock { |
56 | /* inet_sock has to be the first member */ | 56 | /* inet_sock has to be the first member */ |
57 | struct inet_sock inet; | 57 | struct inet_sock inet; |
58 | #define udp_port_hash inet.sk.__sk_common.skc_u16hashes[0] | ||
59 | #define udp_portaddr_hash inet.sk.__sk_common.skc_u16hashes[1] | ||
60 | #define udp_portaddr_node inet.sk.__sk_common.skc_portaddr_node | ||
58 | int pending; /* Any pending frames ? */ | 61 | int pending; /* Any pending frames ? */ |
59 | unsigned int corkflag; /* Cork is required */ | 62 | unsigned int corkflag; /* Cork is required */ |
60 | __u16 encap_type; /* Is this an Encapsulation socket? */ | 63 | __u16 encap_type; /* Is this an Encapsulation socket? */ |
@@ -85,6 +88,12 @@ static inline struct udp_sock *udp_sk(const struct sock *sk) | |||
85 | return (struct udp_sock *)sk; | 88 | return (struct udp_sock *)sk; |
86 | } | 89 | } |
87 | 90 | ||
91 | #define udp_portaddr_for_each_entry(__sk, node, list) \ | ||
92 | hlist_nulls_for_each_entry(__sk, node, list, __sk_common.skc_portaddr_node) | ||
93 | |||
94 | #define udp_portaddr_for_each_entry_rcu(__sk, node, list) \ | ||
95 | hlist_nulls_for_each_entry_rcu(__sk, node, list, __sk_common.skc_portaddr_node) | ||
96 | |||
88 | #define IS_UDPLITE(__sk) (udp_sk(__sk)->pcflag) | 97 | #define IS_UDPLITE(__sk) (udp_sk(__sk)->pcflag) |
89 | 98 | ||
90 | #endif | 99 | #endif |