inet_timewait_sock
BTF_SOCK_TYPE(BTF_SOCK_TYPE_INET_TW, inet_timewait_sock) \
struct inet_timewait_sock tw_sk;
struct inet_timewait_sock **,
void inet_twsk_free(struct inet_timewait_sock *tw);
void inet_twsk_put(struct inet_timewait_sock *tw);
void inet_twsk_bind_unhash(struct inet_timewait_sock *tw,
struct inet_timewait_sock *inet_twsk_alloc(const struct sock *sk,
void inet_twsk_hashdance_schedule(struct inet_timewait_sock *tw,
void __inet_twsk_schedule(struct inet_timewait_sock *tw, int timeo,
static inline void inet_twsk_reschedule(struct inet_timewait_sock *tw, int timeo)
void inet_twsk_deschedule_put(struct inet_timewait_sock *tw);
struct net *twsk_net(const struct inet_timewait_sock *twsk)
void twsk_net_set(struct inet_timewait_sock *twsk, struct net *net)
static inline struct inet_timewait_sock *inet_twsk(const struct sock *sk)
return (struct inet_timewait_sock *)sk;
static inline void nf_tproxy_twsk_deschedule_put(struct inet_timewait_sock *tw)
psp_twsk_rx_policy_check(struct inet_timewait_sock *tw, struct sk_buff *skb)
struct inet_timewait_sock;
psp_twsk_init(struct inet_timewait_sock *tw, const struct sock *sk) { }
static inline void psp_twsk_assoc_free(struct inet_timewait_sock *tw) { }
psp_twsk_rx_policy_check(struct inet_timewait_sock *tw, struct sk_buff *skb)
void psp_twsk_init(struct inet_timewait_sock *tw, const struct sock *sk);
void psp_twsk_assoc_free(struct inet_timewait_sock *tw);
enum tcp_tw_status tcp_timewait_state_process(struct inet_timewait_sock *tw,
BTF_TYPE_EMIT(struct inet_timewait_sock);
struct sock *, __u16, struct inet_timewait_sock **,
struct inet_timewait_sock *tw = NULL;
struct inet_timewait_sock **twp,
struct inet_timewait_sock *tw = NULL;
void inet_twsk_hashdance_schedule(struct inet_timewait_sock *tw,
struct inet_timewait_sock *tw = timer_container_of(tw, t, tw_timer);
struct inet_timewait_sock *inet_twsk_alloc(const struct sock *sk,
struct inet_timewait_sock *tw;
void inet_twsk_deschedule_put(struct inet_timewait_sock *tw)
void __inet_twsk_schedule(struct inet_timewait_sock *tw, int timeo, bool rearm)
void inet_twsk_bind_unhash(struct inet_timewait_sock *tw,
static void inet_twsk_kill(struct inet_timewait_sock *tw)
void inet_twsk_free(struct inet_timewait_sock *tw)
void inet_twsk_put(struct inet_timewait_sock *tw)
static void inet_twsk_schedule(struct inet_timewait_sock *tw, int timeo)
struct inet_timewait_sock *tw = inet_twsk(sk);
struct inet_timewait_sock *tw = inet_twsk(sk);
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_family) !=
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_num) !=
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_dport) !=
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_rcv_saddr) !=
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_daddr) !=
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_v6_rcv_saddr) !=
BUILD_BUG_ON(offsetof(struct inet_timewait_sock, tw_v6_daddr) !=
struct inet_timewait_sock *tw = inet_twsk(sk);
const struct inet_timewait_sock *tw = inet_twsk(sktw);
static void get_timewait4_sock(const struct inet_timewait_sock *tw,
offsetof(struct inet_timewait_sock, tw_bound_dev_if));
tcp_timewait_state_process(struct inet_timewait_sock *tw, struct sk_buff *skb,
struct inet_timewait_sock *tw;
tcp_timewait_check_oow_rate_limit(struct inet_timewait_sock *tw,
struct inet_timewait_sock **twp,
struct inet_timewait_sock *tw = NULL;
struct inet_timewait_sock *tw = inet_twsk(sk);
struct inet_timewait_sock *tw = inet_twsk(sk);
struct inet_timewait_sock *tw, int i)
void psp_twsk_init(struct inet_timewait_sock *tw, const struct sock *sk)
void psp_twsk_assoc_free(struct inet_timewait_sock *tw)
BTF_SOCK_TYPE(BTF_SOCK_TYPE_INET_TW, inet_timewait_sock) \
struct inet_timewait_sock *tw = &ttw->tw_sk;
struct inet_timewait_sock *tw = &ttw->tw_sk;