xref: /linux-6.15/include/linux/sunrpc/xprtsock.h (revision 643d1f7f)
1 /*
2  *  linux/include/linux/sunrpc/xprtsock.h
3  *
4  *  Declarations for the RPC transport socket provider.
5  */
6 
7 #ifndef _LINUX_SUNRPC_XPRTSOCK_H
8 #define _LINUX_SUNRPC_XPRTSOCK_H
9 
10 #ifdef __KERNEL__
11 
12 int		init_socket_xprt(void);
13 void		cleanup_socket_xprt(void);
14 
15 /*
16  * RPC transport identifiers for UDP, TCP
17  *
18  * To preserve compatibility with the historical use of raw IP protocol
19  * id's for transport selection, these are specified with the previous
20  * values. No such restriction exists for new transports, except that
21  * they may not collide with these values (17 and 6, respectively).
22  */
23 #define XPRT_TRANSPORT_UDP	IPPROTO_UDP
24 #define XPRT_TRANSPORT_TCP	IPPROTO_TCP
25 
26 /*
27  * RPC slot table sizes for UDP, TCP transports
28  */
29 extern unsigned int xprt_udp_slot_table_entries;
30 extern unsigned int xprt_tcp_slot_table_entries;
31 
32 /*
33  * Parameters for choosing a free port
34  */
35 extern unsigned int xprt_min_resvport;
36 extern unsigned int xprt_max_resvport;
37 
38 #define RPC_MIN_RESVPORT	(1U)
39 #define RPC_MAX_RESVPORT	(65535U)
40 #define RPC_DEF_MIN_RESVPORT	(665U)
41 #define RPC_DEF_MAX_RESVPORT	(1023U)
42 
43 #endif /* __KERNEL__ */
44 
45 #endif /* _LINUX_SUNRPC_XPRTSOCK_H */
46