| 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
| 2 | /* |
| 3 | * NET Generic infrastructure for Network protocols. |
| 4 | * |
| 5 | * Authors: Arnaldo Carvalho de Melo <acme@conectiva.com.br> |
| 6 | */ |
| 7 | #ifndef _TIMEWAIT_SOCK_H |
| 8 | #define _TIMEWAIT_SOCK_H |
| 9 | |
| 10 | #include <linux/slab.h> |
| 11 | #include <linux/bug.h> |
| 12 | #include <net/sock.h> |
| 13 | |
| 14 | struct timewait_sock_ops { |
| 15 | struct kmem_cache *twsk_slab; |
| 16 | char *twsk_slab_name; |
| 17 | unsigned int twsk_obj_size; |
| 18 | void (*twsk_destructor)(struct sock *sk); |
| 19 | }; |
| 20 | |
| 21 | static inline void twsk_destructor(struct sock *sk) |
| 22 | { |
| 23 | if (sk->sk_prot->twsk_prot->twsk_destructor != NULL) |
| 24 | sk->sk_prot->twsk_prot->twsk_destructor(sk); |
| 25 | } |
| 26 | |
| 27 | #endif /* _TIMEWAIT_SOCK_H */ |