glusterfs  8.2
About: GlusterFS is a network/cluster filesystem. The storage server (or each in a cluster) runs glusterfsd and the clients use mount command or glusterfs client to mount the exported filesystem. Release series 8.x (latest version).
  Fossies Dox: glusterfs-8.2.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

nfs.h File Reference
#include "rpcsvc.h"
#include <glusterfs/dict.h>
#include <glusterfs/xlator.h>
#include <glusterfs/lkowner.h>
#include <glusterfs/gidcache.h>
Include dependency graph for nfs.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  nfs_initer_list
 
struct  nfs_state
 
struct  nfs_inode_ctx
 
struct  nfs_user_info
 

Macros

#define GF_NFS   "nfs"
 
#define GF_NFS_CONCURRENT_OPS_MULT   15
 
#define GF_NFS_INODE_LRU_MULT   6000
 
#define GF_RPC_MIN_THREADS   1
 
#define GF_RPC_MAX_THREADS   16
 
#define GF_NFS_DEFAULT_MEMFACTOR   15
 
#define GF_NFS_MIN_MEMFACTOR   1
 
#define GF_NFS_MAX_MEMFACTOR   30
 
#define GF_NFS_DVM_ON   1
 
#define GF_NFS_DVM_OFF   0
 
#define GF_NFS_DEFAULT_EXPORT_AUTH   0
 
#define GF_NFS_DEFAULT_AUTH_REFRESH_INTERVAL_SEC   2
 
#define GF_NFS_DEFAULT_AUTH_CACHE_TTL_SEC   300 /* 5 min */
 
#define GF_REQUEST_MAXGROUPS   16
 
#define gf_nfs_dvm_on(nfsstt)    (((struct nfs_state *)nfsstt)->dynamicvolumes == GF_NFS_DVM_ON)
 
#define gf_nfs_dvm_off(nfsstt)    (((struct nfs_state *)nfsstt)->dynamicvolumes == GF_NFS_DVM_OFF)
 
#define __gf_nfs_enable_ino32(nfsstt)    (((struct nfs_state *)nfsstt)->enable_ino32)
 
#define gf_nfs_this_private   ((struct nfs_state *)((xlator_t *)THIS)->private)
 
#define gf_nfs_enable_ino32()   (__gf_nfs_enable_ino32(gf_nfs_this_private))
 
#define NFS_NGROUPS   (GF_REQUEST_MAXGROUPS + 1)
 
#define NFS_PRIMGID_IDX   0
 

Typedefs

typedef rpcsvc_program_t *(* nfs_version_initer_t) (xlator_t *nfsx)
 
typedef struct nfs_user_info nfs_user_t
 

Functions

int nfs_user_root_create (nfs_user_t *newnfu)
 
int nfs_user_create (nfs_user_t *newnfu, uid_t uid, gid_t gid, rpc_transport_t *trans, gid_t *auxgids, int auxcount)
 
void nfs_request_user_init (nfs_user_t *nfu, rpcsvc_request_t *req)
 
void nfs_request_primary_user_init (nfs_user_t *nfu, rpcsvc_request_t *req, uid_t uid, gid_t gid)
 
int nfs_subvolume_started (struct nfs_state *nfs, xlator_t *xl)
 
void nfs_fix_groups (xlator_t *this, call_stack_t *root)
 

Macro Definition Documentation

◆ __gf_nfs_enable_ino32

#define __gf_nfs_enable_ino32 (   nfsstt)     (((struct nfs_state *)nfsstt)->enable_ino32)

Definition at line 115 of file nfs.h.

◆ GF_NFS

#define GF_NFS   "nfs"

Definition at line 20 of file nfs.h.

◆ GF_NFS_CONCURRENT_OPS_MULT

#define GF_NFS_CONCURRENT_OPS_MULT   15

Definition at line 22 of file nfs.h.

◆ GF_NFS_DEFAULT_AUTH_CACHE_TTL_SEC

#define GF_NFS_DEFAULT_AUTH_CACHE_TTL_SEC   300 /* 5 min */

Definition at line 40 of file nfs.h.

◆ GF_NFS_DEFAULT_AUTH_REFRESH_INTERVAL_SEC

#define GF_NFS_DEFAULT_AUTH_REFRESH_INTERVAL_SEC   2

Definition at line 39 of file nfs.h.

◆ GF_NFS_DEFAULT_EXPORT_AUTH

#define GF_NFS_DEFAULT_EXPORT_AUTH   0

Definition at line 37 of file nfs.h.

◆ GF_NFS_DEFAULT_MEMFACTOR

#define GF_NFS_DEFAULT_MEMFACTOR   15

Definition at line 29 of file nfs.h.

◆ GF_NFS_DVM_OFF

#define GF_NFS_DVM_OFF   0

Definition at line 34 of file nfs.h.

◆ gf_nfs_dvm_off

#define gf_nfs_dvm_off (   nfsstt)     (((struct nfs_state *)nfsstt)->dynamicvolumes == GF_NFS_DVM_OFF)

Definition at line 113 of file nfs.h.

◆ GF_NFS_DVM_ON

#define GF_NFS_DVM_ON   1

Definition at line 33 of file nfs.h.

◆ gf_nfs_dvm_on

#define gf_nfs_dvm_on (   nfsstt)     (((struct nfs_state *)nfsstt)->dynamicvolumes == GF_NFS_DVM_ON)

Definition at line 111 of file nfs.h.

◆ gf_nfs_enable_ino32

#define gf_nfs_enable_ino32 ( )    (__gf_nfs_enable_ino32(gf_nfs_this_private))

Definition at line 118 of file nfs.h.

◆ GF_NFS_INODE_LRU_MULT

#define GF_NFS_INODE_LRU_MULT   6000

Definition at line 24 of file nfs.h.

◆ GF_NFS_MAX_MEMFACTOR

#define GF_NFS_MAX_MEMFACTOR   30

Definition at line 31 of file nfs.h.

◆ GF_NFS_MIN_MEMFACTOR

#define GF_NFS_MIN_MEMFACTOR   1

Definition at line 30 of file nfs.h.

◆ gf_nfs_this_private

#define gf_nfs_this_private   ((struct nfs_state *)((xlator_t *)THIS)->private)

Definition at line 117 of file nfs.h.

◆ GF_REQUEST_MAXGROUPS

#define GF_REQUEST_MAXGROUPS   16

Definition at line 46 of file nfs.h.

◆ GF_RPC_MAX_THREADS

#define GF_RPC_MAX_THREADS   16

Definition at line 27 of file nfs.h.

◆ GF_RPC_MIN_THREADS

#define GF_RPC_MIN_THREADS   1

Definition at line 26 of file nfs.h.

◆ NFS_NGROUPS

#define NFS_NGROUPS   (GF_REQUEST_MAXGROUPS + 1)

Definition at line 123 of file nfs.h.

◆ NFS_PRIMGID_IDX

#define NFS_PRIMGID_IDX   0

Definition at line 126 of file nfs.h.

Typedef Documentation

◆ nfs_user_t

typedef struct nfs_user_info nfs_user_t

◆ nfs_version_initer_t

typedef rpcsvc_program_t*(* nfs_version_initer_t) (xlator_t *nfsx)

Definition at line 52 of file nfs.h.

Function Documentation

◆ nfs_fix_groups()

◆ nfs_request_primary_user_init()

void nfs_request_primary_user_init ( nfs_user_t nfu,
rpcsvc_request_t req,
uid_t  uid,
gid_t  gid 
)

Definition at line 688 of file nfs.c.

References nfs_user_create(), rpcsvc_auth_unix_auxgids(), and rpcsvc_request_transport.

Referenced by nfs3_create_common().

◆ nfs_request_user_init()

◆ nfs_subvolume_started()

int nfs_subvolume_started ( struct nfs_state nfs,
xlator_t xl 
)

◆ nfs_user_create()

int nfs_user_create ( nfs_user_t newnfu,
uid_t  uid,
gid_t  gid,
rpc_transport_t trans,
gid_t *  auxgids,
int  auxcount 
)

◆ nfs_user_root_create()

int nfs_user_root_create ( nfs_user_t newnfu)