#include <linux/nfsd/syscall.h> long nfsservctl(int cmd, struct nfsctl_arg *argp, union nfsctl_res *resp);
/* * These are the commands understood by nfsctl(). */ #define NFSCTL_SVC 0 /* This is a server process. */ #define NFSCTL_ADDCLIENT 1 /* Add an NFS client. */ #define NFSCTL_DELCLIENT 2 /* Remove an NFS client. */ #define NFSCTL_EXPORT 3 /* Export a filesystem. */ #define NFSCTL_UNEXPORT 4 /* Unexport a filesystem. */ #define NFSCTL_UGIDUPDATE 5 /* Update a client's UID/GID map (only in Linux 2.4.x and earlier). */ #define NFSCTL_GETFH 6 /* Get a file handle (used by mountd) (only in Linux 2.4.x and earlier). */ struct nfsctl_arg { int ca_version; /* safeguard */ union { struct nfsctl_svc u_svc; struct nfsctl_client u_client; struct nfsctl_export u_export; struct nfsctl_uidmap u_umap; struct nfsctl_fhparm u_getfh; unsigned int u_debug; } u; } union nfsctl_res { struct knfs_fh cr_getfh; unsigned int cr_debug; };