Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v4.20-rc5 89 lines 1.6 kB view raw
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * linux/include/linux/sunrpc/xprtsock.h 4 * 5 * Declarations for the RPC transport socket provider. 6 */ 7 8#ifndef _LINUX_SUNRPC_XPRTSOCK_H 9#define _LINUX_SUNRPC_XPRTSOCK_H 10 11#ifdef __KERNEL__ 12 13int init_socket_xprt(void); 14void cleanup_socket_xprt(void); 15 16#define RPC_MIN_RESVPORT (1U) 17#define RPC_MAX_RESVPORT (65535U) 18#define RPC_DEF_MIN_RESVPORT (665U) 19#define RPC_DEF_MAX_RESVPORT (1023U) 20 21struct sock_xprt { 22 struct rpc_xprt xprt; 23 24 /* 25 * Network layer 26 */ 27 struct socket * sock; 28 struct sock * inet; 29 30 /* 31 * State of TCP reply receive 32 */ 33 struct { 34 struct { 35 __be32 fraghdr, 36 xid, 37 calldir; 38 } __attribute__((packed)); 39 40 u32 offset, 41 len; 42 43 unsigned long copied; 44 } recv; 45 46 /* 47 * State of TCP transmit queue 48 */ 49 struct { 50 u32 offset; 51 } xmit; 52 53 /* 54 * Connection of transports 55 */ 56 unsigned long sock_state; 57 struct delayed_work connect_worker; 58 struct work_struct recv_worker; 59 struct mutex recv_mutex; 60 struct sockaddr_storage srcaddr; 61 unsigned short srcport; 62 63 /* 64 * UDP socket buffer size parameters 65 */ 66 size_t rcvsize, 67 sndsize; 68 69 struct rpc_timeout tcp_timeout; 70 71 /* 72 * Saved socket callback addresses 73 */ 74 void (*old_data_ready)(struct sock *); 75 void (*old_state_change)(struct sock *); 76 void (*old_write_space)(struct sock *); 77 void (*old_error_report)(struct sock *); 78}; 79 80/* 81 * TCP RPC flags 82 */ 83#define XPRT_SOCK_CONNECTING 1U 84#define XPRT_SOCK_DATA_READY (2) 85#define XPRT_SOCK_UPD_TIMEOUT (3) 86 87#endif /* __KERNEL__ */ 88 89#endif /* _LINUX_SUNRPC_XPRTSOCK_H */