source: rtems/cpukit/libnetworking/nfsclient/nfsargs.h @ fbfb60dc

4.104.114.84.9
Last change on this file since fbfb60dc was fbfb60dc, checked in by Ralf Corsepius <ralf.corsepius@…>, on Apr 17, 2005 at 7:29:45 AM

New.

  • Property mode set to 100644
File size: 4.7 KB
Line 
1/*-
2 * Copyright (c) 1989, 1993, 1995
3 *      The Regents of the University of California.  All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Rick Macklem at The University of Guelph.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 * 1. Redistributions of source code must retain the above copyright
12 *    notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright
14 *    notice, this list of conditions and the following disclaimer in the
15 *    documentation and/or other materials provided with the distribution.
16 * 4. Neither the name of the University nor the names of its contributors
17 *    may be used to endorse or promote products derived from this software
18 *    without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 *
32 *      @(#)nfs.h       8.4 (Berkeley) 5/1/95
33 * $FreeBSD: src/sys/nfsclient/nfsargs.h,v 1.67 2005/01/07 01:45:51 imp Exp $
34 */
35
36/*
37 * $Id$
38 */
39 
40#ifndef _NFSCLIENT_NFSARGS_H_
41#define _NFSCLIENT_NFSARGS_H_
42
43/*
44 * Arguments to mount NFS
45 */
46struct nfs_args {
47        struct sockaddr *addr;          /* file server address */
48        int             addrlen;        /* length of address */
49        int             sotype;         /* Socket type */
50        int             proto;          /* and Protocol */
51        u_char          *fh;            /* File handle to be mounted */
52        int             fhsize;         /* Size, in bytes, of fh */
53        int             flags;          /* flags */
54        int             wsize;          /* write size in bytes */
55        int             rsize;          /* read size in bytes */
56        int             readdirsize;    /* readdir size in bytes */
57        int             timeo;          /* initial timeout in .1 secs */
58        int             retrans;        /* times to retry send */
59        int             maxgrouplist;   /* Max. size of group list */
60        int             readahead;      /* # of blocks to readahead */
61        int             leaseterm;      /* Term (sec) of lease */
62        int             deadthresh;     /* Retrans threshold */
63        char            *hostname;      /* server's name */
64};
65
66/*
67 * NFS mount option flags
68 */
69#define NFSMNT_SOFT             0x00000001  /* soft mount (hard is default) */
70#define NFSMNT_WSIZE            0x00000002  /* set write size */
71#define NFSMNT_RSIZE            0x00000004  /* set read size */
72#define NFSMNT_TIMEO            0x00000008  /* set initial timeout */
73#define NFSMNT_RETRANS          0x00000010  /* set number of request retrys */
74#define NFSMNT_MAXGRPS          0x00000020  /* set maximum grouplist size */
75#define NFSMNT_INT              0x00000040  /* allow interrupts on hard mount */
76#define NFSMNT_NOCONN           0x00000080  /* Don't Connect the socket */
77#define NFSMNT_NQNFS            0x00000100  /* Use Nqnfs protocol */
78#define NFSMNT_NFSV3            0x00000200  /* Use NFS Version 3 protocol */
79#define NFSMNT_KERB             0x00000400  /* Use Kerberos authentication */
80#define NFSMNT_DUMBTIMR         0x00000800  /* Don't estimate rtt dynamically */
81#define NFSMNT_LEASETERM        0x00001000  /* set lease term (nqnfs) */
82#define NFSMNT_READAHEAD        0x00002000  /* set read ahead */
83#define NFSMNT_DEADTHRESH       0x00004000  /* set dead server retry thresh */
84#define NFSMNT_RESVPORT         0x00008000  /* Allocate a reserved port */
85#define NFSMNT_RDIRPLUS         0x00010000  /* Use Readdirplus for V3 */
86#define NFSMNT_READDIRSIZE      0x00020000  /* Set readdir size */
87#define NFSMNT_INTERNAL         0xfffc0000  /* Bits set internally */
88#define NFSMNT_HASWRITEVERF     0x00040000  /* Has write verifier for V3 */
89#define NFSMNT_GOTPATHCONF      0x00080000  /* Got the V3 pathconf info */
90#define NFSMNT_GOTFSINFO        0x00100000  /* Got the V3 fsinfo */
91#define NFSMNT_MNTD             0x00200000  /* Mnt server for mnt point */
92#define NFSMNT_DISMINPROG       0x00400000  /* Dismount in progress */
93#define NFSMNT_DISMNT           0x00800000  /* Dismounted */
94#define NFSMNT_SNDLOCK          0x01000000  /* Send socket lock */
95#define NFSMNT_WANTSND          0x02000000  /* Want above */
96#define NFSMNT_RCVLOCK          0x04000000  /* Rcv socket lock */
97#define NFSMNT_WANTRCV          0x08000000  /* Want above */
98#define NFSMNT_WAITAUTH         0x10000000  /* Wait for authentication */
99#define NFSMNT_HASAUTH          0x20000000  /* Has authenticator */
100#define NFSMNT_WANTAUTH         0x40000000  /* Wants an authenticator */
101#define NFSMNT_AUTHERR          0x80000000  /* Authentication error */
102
103#endif
Note: See TracBrowser for help on using the repository browser.