cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

timewait_sock.h (925B)


      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
     14struct timewait_sock_ops {
     15	struct kmem_cache	*twsk_slab;
     16	char		*twsk_slab_name;
     17	unsigned int	twsk_obj_size;
     18	int		(*twsk_unique)(struct sock *sk,
     19				       struct sock *sktw, void *twp);
     20	void		(*twsk_destructor)(struct sock *sk);
     21};
     22
     23static inline int twsk_unique(struct sock *sk, struct sock *sktw, void *twp)
     24{
     25	if (sk->sk_prot->twsk_prot->twsk_unique != NULL)
     26		return sk->sk_prot->twsk_prot->twsk_unique(sk, sktw, twp);
     27	return 0;
     28}
     29
     30static inline void twsk_destructor(struct sock *sk)
     31{
     32	if (sk->sk_prot->twsk_prot->twsk_destructor != NULL)
     33		sk->sk_prot->twsk_prot->twsk_destructor(sk);
     34}
     35
     36#endif /* _TIMEWAIT_SOCK_H */