clean up includes; nfs_netaddr_match goes to vfs_addr.c
[unix-history] / usr / src / sys / nfs / nfsmount.h
index 2d6a05c..d409116 100644 (file)
@@ -7,7 +7,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)nfsmount.h  7.6 (Berkeley) %G%
+ *     @(#)nfsmount.h  7.10 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
 struct nfsmount {
        int     nm_flag;                /* Flags for soft/hard... */
        struct  mount *nm_mountp;       /* Vfs structure for this filesystem */
 struct nfsmount {
        int     nm_flag;                /* Flags for soft/hard... */
        struct  mount *nm_mountp;       /* Vfs structure for this filesystem */
+       int     nm_numgrps;             /* Max. size of groupslist */
        nfsv2fh_t nm_fh;                /* File handle of root dir */
        struct  socket *nm_so;          /* Rpc socket */
        int     nm_sotype;              /* Type of socket */
        int     nm_soproto;             /* and protocol */
        int     nm_soflags;             /* pr_flags for socket protocol */
        struct  mbuf *nm_nam;           /* Addr of server */
        nfsv2fh_t nm_fh;                /* File handle of root dir */
        struct  socket *nm_so;          /* Rpc socket */
        int     nm_sotype;              /* Type of socket */
        int     nm_soproto;             /* and protocol */
        int     nm_soflags;             /* pr_flags for socket protocol */
        struct  mbuf *nm_nam;           /* Addr of server */
-       short   nm_retry;               /* Max retry count */
-       short   nm_rexmit;              /* Rexmit on previous request */
-       short   nm_rtt;                 /* Round trip timer ticks @ NFS_HZ */
-       short   nm_rto;                 /* Current timeout */
-       short   nm_srtt;                /* Smoothed round trip time */
-       short   nm_rttvar;              /* RTT variance */
-       short   nm_currto;              /* Current rto of any nfsmount */
-       short   nm_currexmit;           /* Max rexmit count of nfsmounts */
-       short   nm_sent;                /* Request send count */
-       short   nm_window;              /* Request send window (max) */
-       short   nm_winext;              /* Window incremental value */
-       short   nm_ssthresh;            /* Slowstart threshold */
-       short   nm_salen;               /* Actual length of nm_sockaddr */
+       int     nm_timeo;               /* Init timer for NFSMNT_DUMBTIMR */
+       int     nm_retry;               /* Max retries */
+       int     nm_srtt[4];             /* Timers for rpcs */
+       int     nm_sdrtt[4];
+       int     nm_sent;                /* Request send count */
+       int     nm_cwnd;                /* Request send window */
+       int     nm_timeouts;            /* Request timeouts */
+       int     nm_deadthresh;          /* Threshold of timeouts-->dead server*/
        int     nm_rsize;               /* Max size of read rpc */
        int     nm_wsize;               /* Max size of write rpc */
        int     nm_rsize;               /* Max size of read rpc */
        int     nm_wsize;               /* Max size of write rpc */
+       int     nm_readahead;           /* Num. of blocks to readahead */
+       int     nm_leaseterm;           /* Term (sec) for NQNFS lease */
+       struct nfsnode *nm_tnext;       /* Head of lease timer queue */
+       struct nfsnode *nm_tprev;
+       struct vnode *nm_inprog;        /* Vnode in prog by nqnfs_clientd() */
+       uid_t   nm_authuid;             /* Uid for authenticator */
+       int     nm_authtype;            /* Authenticator type */
+       int     nm_authlen;             /* and length */
+       char    *nm_authstr;            /* Authenticator string */
 };
 
 #ifdef KERNEL
 };
 
 #ifdef KERNEL
@@ -47,3 +52,47 @@ struct       nfsmount {
  */
 #define VFSTONFS(mp)   ((struct nfsmount *)((mp)->mnt_data))
 #endif /* KERNEL */
  */
 #define VFSTONFS(mp)   ((struct nfsmount *)((mp)->mnt_data))
 #endif /* KERNEL */
+
+/*
+ * Prototypes for NFS mount operations
+ */
+int    nfs_mount __P((
+               struct mount *mp,
+               char *path,
+               caddr_t data,
+               struct nameidata *ndp,
+               struct proc *p));
+int    nfs_start __P((
+               struct mount *mp,
+               int flags,
+               struct proc *p));
+int    nfs_unmount __P((
+               struct mount *mp,
+               int mntflags,
+               struct proc *p));
+int    nfs_root __P((
+               struct mount *mp,
+               struct vnode **vpp));
+int    nfs_quotactl __P((
+               struct mount *mp,
+               int cmds,
+               uid_t uid,
+               caddr_t arg,
+               struct proc *p));
+int    nfs_statfs __P((
+               struct mount *mp,
+               struct statfs *sbp,
+               struct proc *p));
+int    nfs_sync __P((
+               struct mount *mp,
+               int waitfor,
+               struct ucred *cred,
+               struct proc *p));
+int    nfs_fhtovp __P((
+               struct mount *mp,
+               struct fid *fhp,
+               struct vnode **vpp));
+int    nfs_vptofh __P((
+               struct vnode *vp,
+               struct fid *fhp));
+int    nfs_init __P(());