blob: 779742cfc1ffe3178fc0c320b6d0832e0f420d64 [file] [log] [blame]
Pavel Emelyanov2f72c9b2010-09-27 14:01:27 +04001#ifndef __SUNRPC_NETNS_H__
2#define __SUNRPC_NETNS_H__
3
4#include <net/net_namespace.h>
5#include <net/netns/generic.h>
6
Pavel Emelyanov90d51b02010-09-27 14:02:29 +04007struct cache_detail;
8
Pavel Emelyanov2f72c9b2010-09-27 14:01:27 +04009struct sunrpc_net {
Pavel Emelyanov4f42d0d2010-09-27 14:01:58 +040010 struct proc_dir_entry *proc_net_rpc;
Pavel Emelyanov90d51b02010-09-27 14:02:29 +040011 struct cache_detail *ip_map_cache;
Stanislav Kinsbursky73393232012-01-19 21:42:29 +040012 struct cache_detail *unix_gid_cache;
Stanislav Kinsburskya1db4102012-01-19 21:42:37 +040013 struct cache_detail *rsc_cache;
14 struct cache_detail *rsi_cache;
Stanislav Kinsbursky90c4e822011-12-26 15:39:30 +030015
16 struct super_block *pipefs_sb;
Stanislav Kinsburskyc21a5882011-12-26 15:39:39 +030017 struct mutex pipefs_sb_lock;
Stanislav Kinsbursky70abc492012-01-12 22:07:51 +040018
19 struct list_head all_clients;
20 spinlock_t rpc_client_lock;
Stanislav Kinsburskydff02d42012-01-13 12:52:10 +040021
22 struct rpc_clnt *rpcb_local_clnt;
23 struct rpc_clnt *rpcb_local_clnt4;
24 spinlock_t rpcb_clnt_lock;
25 unsigned int rpcb_users;
Trond Myklebust786615b2013-08-05 16:04:47 -040026 unsigned int rpcb_is_af_local : 1;
Simo Sorce1d658332012-05-25 18:09:55 -040027
28 struct mutex gssp_lock;
Simo Sorce030d7942012-05-25 18:09:56 -040029 wait_queue_head_t gssp_wq;
Simo Sorce1d658332012-05-25 18:09:55 -040030 struct rpc_clnt *gssp_clnt;
Simo Sorce030d7942012-05-25 18:09:56 -040031 int use_gss_proxy;
Trond Myklebust2aed8b42013-05-15 10:27:32 -070032 int pipe_version;
33 atomic_t pipe_users;
Simo Sorce030d7942012-05-25 18:09:56 -040034 struct proc_dir_entry *use_gssp_proc;
Trond Myklebustabfdbd52013-05-15 11:28:54 -070035
36 unsigned int gssd_running;
Pavel Emelyanov2f72c9b2010-09-27 14:01:27 +040037};
38
39extern int sunrpc_net_id;
40
Pavel Emelyanov90d51b02010-09-27 14:02:29 +040041int ip_map_cache_create(struct net *);
42void ip_map_cache_destroy(struct net *);
43
Pavel Emelyanov2f72c9b2010-09-27 14:01:27 +040044#endif