summaryrefslogtreecommitdiffstats
path: root/include/net/timewait_sock.h
diff options
context:
space:
mode:
authorYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>2006-10-11 04:42:09 +0200
committerDavid S. Miller <davem@sunset.davemloft.net>2006-10-12 09:00:00 +0200
commit42b6785eeb40fe3e9dab9981b6e3231a77c7c2f6 (patch)
tree0d453071e13495eb740843f3a323f74f8a63b5db /include/net/timewait_sock.h
parent[NET]: Use typesafe inet_twsk() inline function instead of cast. (diff)
downloadlinux-42b6785eeb40fe3e9dab9981b6e3231a77c7c2f6.tar.xz
linux-42b6785eeb40fe3e9dab9981b6e3231a77c7c2f6.zip
[NET]: Introduce protocol-specific destructor for time-wait sockets.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/timewait_sock.h')
-rw-r--r--include/net/timewait_sock.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/net/timewait_sock.h b/include/net/timewait_sock.h
index 2544281e1d5e..be293d795e38 100644
--- a/include/net/timewait_sock.h
+++ b/include/net/timewait_sock.h
@@ -19,6 +19,7 @@ struct timewait_sock_ops {
unsigned int twsk_obj_size;
int (*twsk_unique)(struct sock *sk,
struct sock *sktw, void *twp);
+ void (*twsk_destructor)(struct sock *sk);
};
static inline int twsk_unique(struct sock *sk, struct sock *sktw, void *twp)
@@ -28,4 +29,10 @@ static inline int twsk_unique(struct sock *sk, struct sock *sktw, void *twp)
return 0;
}
+static inline void twsk_destructor(struct sock *sk)
+{
+ if (sk->sk_prot->twsk_prot->twsk_destructor != NULL)
+ sk->sk_prot->twsk_prot->twsk_destructor(sk);
+}
+
#endif /* _TIMEWAIT_SOCK_H */