xref: /freebsd/sys/nfs/nfssvc.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
12a536430SRick Macklem /*-
251369649SPedro F. Giffuni  * SPDX-License-Identifier: BSD-3-Clause
351369649SPedro F. Giffuni  *
42a536430SRick Macklem  * Copyright (c) 1989, 1993, 1995
52a536430SRick Macklem  *	The Regents of the University of California.  All rights reserved.
62a536430SRick Macklem  *
72a536430SRick Macklem  * This code is derived from software contributed to Berkeley by
82a536430SRick Macklem  * Rick Macklem at The University of Guelph.
92a536430SRick Macklem  *
102a536430SRick Macklem  * Redistribution and use in source and binary forms, with or without
112a536430SRick Macklem  * modification, are permitted provided that the following conditions
122a536430SRick Macklem  * are met:
132a536430SRick Macklem  * 1. Redistributions of source code must retain the above copyright
142a536430SRick Macklem  *    notice, this list of conditions and the following disclaimer.
152a536430SRick Macklem  * 2. Redistributions in binary form must reproduce the above copyright
162a536430SRick Macklem  *    notice, this list of conditions and the following disclaimer in the
172a536430SRick Macklem  *    documentation and/or other materials provided with the distribution.
18fbbd9655SWarner Losh  * 3. Neither the name of the University nor the names of its contributors
192a536430SRick Macklem  *    may be used to endorse or promote products derived from this software
202a536430SRick Macklem  *    without specific prior written permission.
212a536430SRick Macklem  *
222a536430SRick Macklem  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
232a536430SRick Macklem  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
242a536430SRick Macklem  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
252a536430SRick Macklem  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
262a536430SRick Macklem  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
272a536430SRick Macklem  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
282a536430SRick Macklem  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
292a536430SRick Macklem  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
302a536430SRick Macklem  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
312a536430SRick Macklem  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
322a536430SRick Macklem  * SUCH DAMAGE.
332a536430SRick Macklem  */
342a536430SRick Macklem 
352a536430SRick Macklem #ifndef _NFS_NFSSVC_H_
362a536430SRick Macklem #define _NFS_NFSSVC_H_
372a536430SRick Macklem 
382a536430SRick Macklem /*
392a536430SRick Macklem  * Flags for nfssvc() system call.
402a536430SRick Macklem  */
412a536430SRick Macklem #define	NFSSVC_OLDNFSD	0x004
422a536430SRick Macklem #define	NFSSVC_ADDSOCK	0x008
432a536430SRick Macklem #define	NFSSVC_NFSD	0x010
442a536430SRick Macklem 
452a536430SRick Macklem /*
462a536430SRick Macklem  * and ones for nfsv4.
472a536430SRick Macklem  */
482a536430SRick Macklem #define	NFSSVC_NOPUBLICFH	0x00000020
492a536430SRick Macklem #define	NFSSVC_STABLERESTART	0x00000040
502a536430SRick Macklem #define	NFSSVC_NFSDNFSD		0x00000080
512a536430SRick Macklem #define	NFSSVC_NFSDADDSOCK	0x00000100
522a536430SRick Macklem #define	NFSSVC_IDNAME		0x00000200
532a536430SRick Macklem #define	NFSSVC_GSSDDELETEALL	0x00000400
542a536430SRick Macklem #define	NFSSVC_GSSDADDPORT	0x00000800
552a536430SRick Macklem #define	NFSSVC_NFSUSERDPORT	0x00001000
562a536430SRick Macklem #define	NFSSVC_NFSUSERDDELPORT	0x00002000
572a536430SRick Macklem #define	NFSSVC_V4ROOTEXPORT	0x00004000
582a536430SRick Macklem #define	NFSSVC_ADMINREVOKE	0x00008000
592a536430SRick Macklem #define	NFSSVC_DUMPCLIENTS	0x00010000
602a536430SRick Macklem #define	NFSSVC_DUMPLOCKS	0x00020000
612a536430SRick Macklem #define	NFSSVC_GSSDADDFIRST	0x00040000
622a536430SRick Macklem #define	NFSSVC_PUBLICFH		0x00080000
632a536430SRick Macklem #define	NFSSVC_NFSCBD		0x00100000
642a536430SRick Macklem #define	NFSSVC_CBADDSOCK	0x00200000
652a536430SRick Macklem #define	NFSSVC_GETSTATS		0x00400000
665f73287aSRick Macklem #define	NFSSVC_BACKUPSTABLE	0x00800000
672e3b981aSRick Macklem #define	NFSSVC_ZEROCLTSTATS	0x01000000	/* modifier for GETSTATS */
682e3b981aSRick Macklem #define	NFSSVC_ZEROSRVSTATS	0x02000000	/* modifier for GETSTATS */
696001db29SRick Macklem #define	NFSSVC_SUSPENDNFSD	0x04000000
706001db29SRick Macklem #define	NFSSVC_RESUMENFSD	0x08000000
7199d2727dSRick Macklem #define	NFSSVC_DUMPMNTOPTS	0x10000000
7284be7e09SRick Macklem #define	NFSSVC_NEWSTRUCT	0x20000000
7347cbff34SRick Macklem #define	NFSSVC_FORCEDISM	0x40000000
74*90d2dfabSRick Macklem #define	NFSSVC_PNFSDS		0x80000000
7599d2727dSRick Macklem 
7699d2727dSRick Macklem /* Argument structure for NFSSVC_DUMPMNTOPTS. */
7799d2727dSRick Macklem struct nfscl_dumpmntopts {
7899d2727dSRick Macklem 	char	*ndmnt_fname;		/* File Name */
7999d2727dSRick Macklem 	size_t	ndmnt_blen;		/* Size of buffer */
8099d2727dSRick Macklem 	void	*ndmnt_buf;		/* and the buffer */
8199d2727dSRick Macklem };
822a536430SRick Macklem 
832a536430SRick Macklem #endif /* _NFS_NFSSVC_H */
84