[ICSK]: Generalise tcp_listen_{start,stop}
This also moved inet_iif from tcp to inet_hashtables.h, as it is needed by the inet_lookup callers, perhaps this needs a bit of polishing, but for now seems fine. Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
9f1d2604c7
commit
0a5578cf8e
@@ -26,6 +26,7 @@
|
||||
#include <linux/wait.h>
|
||||
|
||||
#include <net/inet_connection_sock.h>
|
||||
#include <net/route.h>
|
||||
#include <net/sock.h>
|
||||
#include <net/tcp_states.h>
|
||||
|
||||
@@ -280,6 +281,11 @@ out:
|
||||
wake_up(&hashinfo->lhash_wait);
|
||||
}
|
||||
|
||||
static inline int inet_iif(const struct sk_buff *skb)
|
||||
{
|
||||
return ((struct rtable *)skb->dst)->rt_iif;
|
||||
}
|
||||
|
||||
extern struct sock *__inet_lookup_listener(const struct hlist_head *head,
|
||||
const u32 daddr,
|
||||
const unsigned short hnum,
|
||||
|
@@ -558,6 +558,7 @@ struct proto {
|
||||
|
||||
kmem_cache_t *twsk_slab;
|
||||
unsigned int twsk_obj_size;
|
||||
atomic_t *orphan_count;
|
||||
|
||||
struct request_sock_ops *rsk_prot;
|
||||
|
||||
|
@@ -860,7 +860,7 @@ static __inline__ void tcp_update_wl(struct tcp_sock *tp, u32 ack, u32 seq)
|
||||
tp->snd_wl1 = seq;
|
||||
}
|
||||
|
||||
extern void tcp_destroy_sock(struct sock *sk);
|
||||
extern void inet_csk_destroy_sock(struct sock *sk);
|
||||
|
||||
|
||||
/*
|
||||
@@ -987,7 +987,7 @@ static __inline__ void tcp_done(struct sock *sk)
|
||||
if (!sock_flag(sk, SOCK_DEAD))
|
||||
sk->sk_state_change(sk);
|
||||
else
|
||||
tcp_destroy_sock(sk);
|
||||
inet_csk_destroy_sock(sk);
|
||||
}
|
||||
|
||||
static __inline__ void tcp_sack_reset(struct tcp_options_received *rx_opt)
|
||||
|
Reference in New Issue
Block a user