nfsservctl (2) - Linux Man Pages

nfsservctl: syscall interface to kernel nfs daemon


nfsservctl - syscall interface to kernel nfs daemon


#include <linux/nfsd/syscall.h>

long nfsservctl(int cmd, struct nfsctl_arg *argp,
                union nfsctl_res *resp);


Note: Since Linux 3.1, this system call no longer exists. It has been replaced by a set of files in the nfsd filesystem; see nfsd(7).

 * 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; };


On success, zero is returned. On error, -1 is returned, and errno is set appropriately.


This system call was removed from the Linux kernel in version 3.1. Library support was removed from glibc in version 2.28.


This call is Linux-specific.


This page is part of release 5.05 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at