diff options
Diffstat (limited to 'sys/nfs4client/nfs4.h')
-rw-r--r-- | sys/nfs4client/nfs4.h | 260 |
1 files changed, 0 insertions, 260 deletions
diff --git a/sys/nfs4client/nfs4.h b/sys/nfs4client/nfs4.h deleted file mode 100644 index 4bcc6a7f3121..000000000000 --- a/sys/nfs4client/nfs4.h +++ /dev/null @@ -1,260 +0,0 @@ -/* $FreeBSD$ */ -/* $Id: nfs4.h,v 1.25 2003/11/05 14:58:58 rees Exp $ */ - -/*- - * copyright (c) 2003 - * the regents of the university of michigan - * all rights reserved - * - * permission is granted to use, copy, create derivative works and redistribute - * this software and such derivative works for any purpose, so long as the name - * of the university of michigan is not used in any advertising or publicity - * pertaining to the use or distribution of this software without specific, - * written prior authorization. if the above copyright notice or any other - * identification of the university of michigan is included in any copy of any - * portion of this software, then the disclaimer below must also be included. - * - * this software is provided as is, without representation from the university - * of michigan as to its fitness for any purpose, and without warranty by the - * university of michigan of any kind, either express or implied, including - * without limitation the implied warranties of merchantability and fitness for - * a particular purpose. the regents of the university of michigan shall not be - * liable for any damages, including special, indirect, incidental, or - * consequential damages, with respect to any claim arising out of or in - * connection with the use of the software, even if it has been or is hereafter - * advised of the possibility of such damages. - */ - -#ifndef _NFS4CLIENT_NFS4_H -#define _NFS4CLIENT_NFS4_H - -#define NFS4_USE_RPCCLNT - -#define NFS4_MINOR_VERSION 0 -#define NFS_PORT 2049 -#define NFS4_DEF_FILE_IO_BUFFER_SIZE 4096 -#define NFS4_MAX_FILE_IO_BUFFER_SIZE 32768 -#define NFS4_DEF_MAXFILESIZE 0xffffffff -#define NFS4_SUPER_MAGIC 0xF00BA4 - -#define NFS4FS_SILLY_RENAME 1 -#define NFS4FS_STRICT_LOCKING 1 -#define NFS4FS_RETRY_OLD_STATEID 1 -#define NFS4FS_MIN_LEASE (1 * hz) -#define NFS4FS_DEFAULT_LEASE (30 * hz) -#define NFS4FS_MAX_LEASE (120 * hz) -#define NFS4FS_RETRY_MIN_DELAY (hz >> 4) -#define NFS4FS_RETRY_MAX_DELAY (hz << 3) -#define NFS4FS_SEMAPHORE_DELAY (hz >> 4) -#define NFS4FS_GRACE_DELAY (hz * 5) -#define NFS4FS_OLD_STATEID_DELAY (hz >> 3) -#define NFS4FS_OP_MAX 10 - - -#define NFS4_BUFSIZE 8192 -#define NFS4FS_MAX_IOV 10 -#define NFS4_SETCLIENTID_MAXTRIES 5 -#define NFS4_READDIR_MAXTRIES 5 -#define NFS4_MAXIO 4 -#define NFS4_MAX_REQUEST_SOFT 192 -#define NFS4_MAX_REQUEST_HARD 256 -#define NFS4_MAXCOMMIT 64 -#define NFS4_READ_DELAY (2 * HZ) -#define NFS4_WRITEBACK_DELAY (5 * HZ) -#define NFS4_WRITEBACK_LOCKDELAY (60 * HZ) -#define NFS4_COMMIT_DELAY (5 * HZ) -#define RPC_SLACK_SPACE 512 - - -struct nfs4_compound { - char *tag; - - int req_nops; - uint32_t *req_nopsp; - uint32_t *req_seqidp; - uint32_t *req_stateidp[NFS4_MAXIO]; - uint32_t req_nstateid; - - u_int seqidused; - - int rep_status; - int rep_nops; - - struct nfs4_fctx *fcp; - - struct vnode *curvp; - struct vnode *savevp; - - struct nfsmount *nmp; -}; - -struct nfs4_fdata { - struct nfsnode *fd_n; - pid_t fd_pid; -}; - -struct nfs4_oparg_putfh { - /* filled in by caller */ -/* struct dentry *dentry;*/ - - /* filled in by setup routine */ -/* nfs_opnum4 op;*/ - uint32_t fh_len; - nfsfh_t fh_val; - int nlookups; -}; - -struct nfs4_oparg_getattr { - struct vnode *vp; - nfsv4bitmap *bm; - struct nfsv4_fattr fa; -}; - -struct nfs4_oparg_getfh { - uint32_t fh_len; - nfsfh_t fh_val; - struct vnode *vp; -}; - -struct nfs4_oparg_lookup { - const char *name; - uint32_t namelen; - struct vnode *vp; -}; - -struct nfs4_oparg_setclientid { - struct nfsmount *np; - uint32_t namelen; - char *name; - char *cb_netid; - uint32_t cb_netidlen; - char *cb_univaddr; - uint32_t cb_univaddrlen; - uint32_t cb_prog; - - uint64_t clientid; - u_char verf[NFSX_V4VERF]; -}; - -struct nfs4_oparg_access { - uint32_t mode; - uint32_t rmode; - uint32_t supported; -}; - -struct nfs4_oparg_open { - uint32_t flags; - uint32_t rflags; - - nfsv4cltype ctype; - struct vattr *vap; - struct componentname *cnp; - - struct nfs4_fctx *fcp; - - char stateid[NFSX_V4STATEID]; -}; - -struct nfs4_oparg_read { - uint64_t off; - uint32_t maxcnt; - uint32_t eof; - uint32_t retlen; - struct uio *uiop; - struct nfs4_fctx *fcp; -}; - -struct nfs4_oparg_write { - uint64_t off; - uint32_t stable; - uint32_t cnt; - uint32_t retlen; - uint32_t committed; - struct uio *uiop; - u_char wverf[NFSX_V4VERF]; - struct nfs4_fctx *fcp; -}; - -struct nfs4_oparg_commit { - uint32_t len; - off_t start; - - u_char verf[NFSX_V4VERF]; -}; - -struct nfs4_oparg_readdir { - uint32_t cnt; - nfsv4bitmap *bm; - uint64_t cookie; - u_char verf[NFSX_V4VERF]; -}; - -struct nfs4_oparg_create { - nfstype type; - char *linktext; - char *name; - uint32_t namelen; - struct vattr *vap; -}; - -struct nfs4_oparg_rename { - const char *fname; - uint32_t fnamelen; - const char *tname; - uint32_t tnamelen; -}; - -struct nfs4_oparg_link { - const char *name; - uint32_t namelen; -}; - -/* - * Lockowner - */ -struct nfs4_lowner { - uint32_t lo_cnt; - uint32_t lo_seqid; - uint32_t lo_id; -}; - -#define NFS4_SEQIDMUTATINGERROR(err) \ -(((err) != NFSERR_STALE_CLIENTID) && \ - ((err) != NFSERR_BAD_SEQID) && \ - ((err) != NFSERR_STALE_STATEID) && \ - ((err) != NFSERR_BAD_STATEID)) - -/* Standard bitmasks */ -extern nfsv4bitmap nfsv4_fsinfobm; -extern nfsv4bitmap nfsv4_fsattrbm; -extern nfsv4bitmap nfsv4_getattrbm; -extern nfsv4bitmap nfsv4_readdirbm; - -vfs_init_t nfs4_init; -vfs_uninit_t nfs4_uninit; - -uint32_t nfs_v4fileid4_to_fileid(uint64_t); - -int nfs4_readrpc(struct vnode *, struct uio *, struct ucred *); -int nfs4_writerpc(struct vnode *, struct uio *, struct ucred *, int *, - int *); -int nfs4_commit(struct vnode *vp, u_quad_t offset, int cnt, - struct ucred *cred, struct thread *td); -int nfs4_readdirrpc(struct vnode *, struct uio *, struct ucred *); -int nfs4_readlinkrpc(struct vnode *, struct uio *, struct ucred *); -int nfs4_sigintr(struct nfsmount *, struct nfsreq *, struct thread *); -int nfs4_writebp(struct buf *, int, struct thread *); -int nfs4_request(struct vnode *, struct mbuf *, int, struct thread *, - struct ucred *, struct mbuf **, struct mbuf **, caddr_t *); -int nfs4_request_mnt(struct nfsmount *, struct mbuf *, int, struct thread *, - struct ucred *, struct mbuf **, struct mbuf **, caddr_t *); -int nfs4_connect(struct nfsmount *); -void nfs4_disconnect(struct nfsmount *); -void nfs4_safedisconnect(struct nfsmount *); -int nfs4_nmcancelreqs(struct nfsmount *); - -void nfs_v4initcompound(struct nfs4_compound *); -int nfs_v4postop(struct nfs4_compound *, int); -int nfs_v4handlestatus(int, struct nfs4_compound *); - -#endif /* _NFS4CLIENT_NFS4_H */ |