nfsservctl(2) интерфейс syscall к ядерной службе nfs

ОБЗОР

#include <linux/nfsd/syscall.h>


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

ОПИСАНИЕ

Замечание: Начиная с Linux 3.1, данный системный вызов больше не существует. Он был заменён набором файлов в файловой системе nfsd; смотрите nfsd(7).

/*
 * Эти команды понимает nfsctl().
 */
#define NFSCTL_SVC          0    /* Это серверный процесс. */
#define NFSCTL_ADDCLIENT    1    /* Добавить клиента NFS. */
#define NFSCTL_DELCLIENT    2    /* Удалить клиента NFS. */
#define NFSCTL_EXPORT       3    /* Экспортировать файловую систему. */
#define NFSCTL_UNEXPORT     4    /* Снять экспорт файловой системы. */
#define NFSCTL_UGIDUPDATE   5    /* Обновить карту клиентов UID/GID
                                    (только в Linux 2.4.x и ранее). */
#define NFSCTL_GETFH        6    /* Получить описатель файла
                                    (используется mountd)
                                    (только в Linux 2.4.x и ранее). */
struct nfsctl_arg {
    int                       ca_version;     /* защитная мера */
    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;
};

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.

СООТВЕТСТВИЕ СТАНДАРТАМ

Данный вызов существует только в Linux.