diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2006-08-09 18:47:12 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-09-22 17:54:14 -0400 |
commit | 8f491069b40be5d627007a343f99759e9da6a178 (patch) | |
tree | ba2be735de32fa30015fe22febf4329c8e79ca25 /net/ipv4/inet_hashtables.c | |
parent | 832b4c5e184391773e462653aa862a8cab71f38d (diff) |
[IPV4]: Use network-order dport for all visible inet_lookup_*
Right now most inet_lookup_* functions take a host-order hnum instead
of a network-order dport because that's how it is represented
internally.
This means that users of these functions have to be careful about
using the right byte-order. To add more confusion, inet_lookup takes
a network-order dport unlike all other functions.
So this patch changes all visible inet_lookup functions to take a
dport and move all dport->hnum conversion inside them.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/inet_hashtables.c')
-rw-r--r-- | net/ipv4/inet_hashtables.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/net/ipv4/inet_hashtables.c b/net/ipv4/inet_hashtables.c index bfc39066e730..fb296c9a7f3f 100644 --- a/net/ipv4/inet_hashtables.c +++ b/net/ipv4/inet_hashtables.c | |||
@@ -124,10 +124,10 @@ EXPORT_SYMBOL(inet_listen_wlock); | |||
124 | * remote address for the connection. So always assume those are both | 124 | * remote address for the connection. So always assume those are both |
125 | * wildcarded during the search since they can never be otherwise. | 125 | * wildcarded during the search since they can never be otherwise. |
126 | */ | 126 | */ |
127 | static struct sock *__inet_lookup_listener(const struct hlist_head *head, | 127 | static struct sock *inet_lookup_listener_slow(const struct hlist_head *head, |
128 | const u32 daddr, | 128 | const u32 daddr, |
129 | const unsigned short hnum, | 129 | const unsigned short hnum, |
130 | const int dif) | 130 | const int dif) |
131 | { | 131 | { |
132 | struct sock *result = NULL, *sk; | 132 | struct sock *result = NULL, *sk; |
133 | const struct hlist_node *node; | 133 | const struct hlist_node *node; |
@@ -162,9 +162,9 @@ static struct sock *__inet_lookup_listener(const struct hlist_head *head, | |||
162 | } | 162 | } |
163 | 163 | ||
164 | /* Optimize the common listener case. */ | 164 | /* Optimize the common listener case. */ |
165 | struct sock *inet_lookup_listener(struct inet_hashinfo *hashinfo, | 165 | struct sock *__inet_lookup_listener(struct inet_hashinfo *hashinfo, |
166 | const u32 daddr, const unsigned short hnum, | 166 | const u32 daddr, const unsigned short hnum, |
167 | const int dif) | 167 | const int dif) |
168 | { | 168 | { |
169 | struct sock *sk = NULL; | 169 | struct sock *sk = NULL; |
170 | const struct hlist_head *head; | 170 | const struct hlist_head *head; |
@@ -179,7 +179,7 @@ struct sock *inet_lookup_listener(struct inet_hashinfo *hashinfo, | |||
179 | (sk->sk_family == PF_INET || !ipv6_only_sock(sk)) && | 179 | (sk->sk_family == PF_INET || !ipv6_only_sock(sk)) && |
180 | !sk->sk_bound_dev_if) | 180 | !sk->sk_bound_dev_if) |
181 | goto sherry_cache; | 181 | goto sherry_cache; |
182 | sk = __inet_lookup_listener(head, daddr, hnum, dif); | 182 | sk = inet_lookup_listener_slow(head, daddr, hnum, dif); |
183 | } | 183 | } |
184 | if (sk) { | 184 | if (sk) { |
185 | sherry_cache: | 185 | sherry_cache: |
@@ -188,7 +188,7 @@ sherry_cache: | |||
188 | read_unlock(&hashinfo->lhash_lock); | 188 | read_unlock(&hashinfo->lhash_lock); |
189 | return sk; | 189 | return sk; |
190 | } | 190 | } |
191 | EXPORT_SYMBOL_GPL(inet_lookup_listener); | 191 | EXPORT_SYMBOL_GPL(__inet_lookup_listener); |
192 | 192 | ||
193 | /* called with local bh disabled */ | 193 | /* called with local bh disabled */ |
194 | static int __inet_check_established(struct inet_timewait_death_row *death_row, | 194 | static int __inet_check_established(struct inet_timewait_death_row *death_row, |