/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
/* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
#ifndef _NFS_NFSSYS_H
#define _NFS_NFSSYS_H
#ifdef __cplusplus
extern "C" {
#endif
/*
* Private definitions for the nfssys system call.
* this file.
*/
/*
* Flavors of nfssys call. Note that OLD_mumble commands are no longer
* implemented, but the entries are kept as placeholders for binary
* compatibility.
*/
NFSCMD_ARGS };
struct nfs_svc_args {
};
#ifdef _SYSCALL32
struct nfs_svc_args32 {
};
#endif
struct exportfs_args {
char *dname;
};
#ifdef _SYSCALL32
struct exportfs_args32 {
};
#endif
struct nfs_getfh_args {
char *fname;
int vers;
int *lenp;
char *fhp;
};
#ifdef _SYSCALL32
struct nfs_getfh_args32 {
};
#endif
struct nfs_revauth_args {
int authtype;
};
#ifdef _SYSCALL32
struct nfs_revauth_args32 {
};
#endif
/*
* Arguments for establishing lock manager service. If you change
* lm_svc_args, you should increment the version number. Try to keep
* supporting one or more old versions of the args, so that old lockd's
* will work with new kernels.
*/
struct lm_svc_args {
int fd;
};
#ifdef _SYSCALL32
struct lm_svc_args32 {
};
#endif
/*
* Arguments for nfslog flush service.
*/
struct nfsl_flush_args {
int version;
int directive;
};
#ifdef _SYSCALL32
struct nfsl_flush_args32 {
};
#endif
/*
* Arguments for initialising RDMA service.
*/
struct rdma_svc_args {
};
#ifdef _SYSCALL32
struct rdma_svc_args32 {
};
#endif
struct nfs4clrst_args {
int vers;
int addr_type;
void *ap;
};
#ifdef _SYSCALL32
struct nfs4clrst_args32 {
};
#endif
struct nfsidmap_args {
};
#ifdef _KERNEL
union nfssysargs {
/* kill_lockmgr args: none */
};
struct nfssysa {
};
#ifdef _SYSCALL32
union nfssysargs32 {
/* kill_lockmgr args: none */
};
struct nfssysa32 {
};
#endif /* _SYSCALL32 */
#endif /* _KERNEL */
struct nfs4_svc_args {
int cmd;
};
#ifdef _SYSCALL32
struct nfs4_svc_args32 {
};
#endif
/* DSS: distributed stable storage */
/* default storage dir */
#ifdef _KERNEL
extern int lm_shutdown(void);
extern int rdma_start(struct rdma_svc_args *);
extern void rfs4_clear_client_state(struct nfs4clrst_args *);
extern void nfs_idmap_args(struct nfsidmap_args *);
extern void nfs4_ephemeral_set_mount_to(uint_t);
extern void mountd_args(uint_t);
#endif
#ifdef __cplusplus
}
#endif
#endif /* _NFS_NFSSYS_H */