Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef __SUNRPC_NETNS_H__
0003 #define __SUNRPC_NETNS_H__
0004 
0005 #include <net/net_namespace.h>
0006 #include <net/netns/generic.h>
0007 
0008 struct cache_detail;
0009 
0010 struct sunrpc_net {
0011     struct proc_dir_entry *proc_net_rpc;
0012     struct cache_detail *ip_map_cache;
0013     struct cache_detail *unix_gid_cache;
0014     struct cache_detail *rsc_cache;
0015     struct cache_detail *rsi_cache;
0016 
0017     struct super_block *pipefs_sb;
0018     struct rpc_pipe *gssd_dummy;
0019     struct mutex pipefs_sb_lock;
0020 
0021     struct list_head all_clients;
0022     spinlock_t rpc_client_lock;
0023 
0024     struct rpc_clnt *rpcb_local_clnt;
0025     struct rpc_clnt *rpcb_local_clnt4;
0026     spinlock_t rpcb_clnt_lock;
0027     unsigned int rpcb_users;
0028     unsigned int rpcb_is_af_local : 1;
0029 
0030     struct mutex gssp_lock;
0031     struct rpc_clnt *gssp_clnt;
0032     int use_gss_proxy;
0033     int pipe_version;
0034     atomic_t pipe_users;
0035     struct proc_dir_entry *use_gssp_proc;
0036 };
0037 
0038 extern unsigned int sunrpc_net_id;
0039 
0040 int ip_map_cache_create(struct net *);
0041 void ip_map_cache_destroy(struct net *);
0042 
0043 #endif