am_xdr_func.h revision 131702
1159097Smaxim/*
2159097Smaxim * Copyright (c) 1997-2004 Erez Zadok
3159097Smaxim * Copyright (c) 1990 Jan-Simon Pendry
4159097Smaxim * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
5159097Smaxim * Copyright (c) 1990 The Regents of the University of California.
6159097Smaxim * All rights reserved.
7159097Smaxim *
8159097Smaxim * This code is derived from software contributed to Berkeley by
9159097Smaxim * Jan-Simon Pendry at Imperial College, London.
10159097Smaxim *
11159097Smaxim * Redistribution and use in source and binary forms, with or without
12159097Smaxim * modification, are permitted provided that the following conditions
13159097Smaxim * are met:
14159097Smaxim * 1. Redistributions of source code must retain the above copyright
15159097Smaxim *    notice, this list of conditions and the following disclaimer.
16159097Smaxim * 2. Redistributions in binary form must reproduce the above copyright
17159097Smaxim *    notice, this list of conditions and the following disclaimer in the
18159097Smaxim *    documentation and/or other materials provided with the distribution.
19159097Smaxim * 3. All advertising materials mentioning features or use of this software
20159097Smaxim *    must display the following acknowledgment:
21159097Smaxim *      This product includes software developed by the University of
22159097Smaxim *      California, Berkeley and its contributors.
23159097Smaxim * 4. Neither the name of the University nor the names of its contributors
24159097Smaxim *    may be used to endorse or promote products derived from this software
25159097Smaxim *    without specific prior written permission.
26159097Smaxim *
27159097Smaxim * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
28159097Smaxim * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29159097Smaxim * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30159097Smaxim * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
31159097Smaxim * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32159097Smaxim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33159097Smaxim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34159097Smaxim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35159097Smaxim * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36159097Smaxim * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37159097Smaxim * SUCH DAMAGE.
38159097Smaxim *
39159097Smaxim *      %W% (Berkeley) %G%
40159097Smaxim *
41159097Smaxim * $Id: am_xdr_func.h,v 1.3.2.6 2004/01/06 03:15:24 ezk Exp $
42159097Smaxim *
43159097Smaxim */
44159097Smaxim
45159097Smaxim/*
46159097Smaxim * Definitions of all possible xdr functions that are otherwise
47159097Smaxim * not defined elsewhere.
48 */
49
50#ifndef _AM_XDR_FUNC_H
51#define _AM_XDR_FUNC_H
52
53#ifndef HAVE_XDR_ATTRSTAT
54bool_t xdr_attrstat(XDR *xdrs, nfsattrstat *objp);
55#endif /* not HAVE_XDR_ATTRSTAT */
56#ifndef HAVE_XDR_CREATEARGS
57bool_t xdr_createargs(XDR *xdrs, nfscreateargs *objp);
58#endif /* not HAVE_XDR_CREATEARGS */
59#ifndef HAVE_XDR_DIRLIST
60bool_t xdr_dirlist(XDR *xdrs, nfsdirlist *objp);
61#endif /* not HAVE_XDR_DIRLIST */
62#ifndef HAVE_XDR_DIROPARGS
63bool_t xdr_diropargs(XDR *xdrs, nfsdiropargs *objp);
64#endif /* not HAVE_XDR_DIROPARGS */
65#ifndef HAVE_XDR_DIROPOKRES
66bool_t xdr_diropokres(XDR *xdrs, nfsdiropokres *objp);
67#endif /* not HAVE_XDR_DIROPOKRES */
68#ifndef HAVE_XDR_DIROPRES
69bool_t xdr_diropres(XDR *xdrs, nfsdiropres *objp);
70#endif /* not HAVE_XDR_DIROPRES */
71#ifndef HAVE_XDR_DIRPATH
72bool_t xdr_dirpath(XDR *xdrs, dirpath *objp);
73#endif /* not HAVE_XDR_DIRPATH */
74#ifndef HAVE_XDR_ENTRY
75bool_t xdr_entry(XDR *xdrs, nfsentry *objp);
76#endif /* not HAVE_XDR_ENTRY */
77#ifndef HAVE_XDR_EXPORTNODE
78bool_t xdr_exportnode(XDR *xdrs, exportnode *objp);
79#endif /* not HAVE_XDR_EXPORTNODE */
80#ifndef HAVE_XDR_EXPORTS
81bool_t xdr_exports(XDR *xdrs, exports *objp);
82#endif /* not HAVE_XDR_EXPORTS */
83#ifndef HAVE_XDR_FATTR
84bool_t xdr_fattr(XDR *xdrs, nfsfattr *objp);
85#endif /* not HAVE_XDR_FATTR */
86#ifndef HAVE_XDR_FHANDLE
87bool_t xdr_fhandle(XDR *xdrs, fhandle objp);
88#endif /* not HAVE_XDR_FHANDLE */
89#ifndef HAVE_XDR_FHSTATUS
90bool_t xdr_fhstatus(XDR *xdrs, fhstatus *objp);
91#endif /* not HAVE_XDR_FHSTATUS */
92#ifndef HAVE_XDR_FILENAME
93bool_t xdr_filename(XDR *xdrs, filename *objp);
94#endif /* not HAVE_XDR_FILENAME */
95#ifndef HAVE_XDR_FTYPE
96bool_t xdr_ftype(XDR *xdrs, nfsftype *objp);
97#endif /* not HAVE_XDR_FTYPE */
98#ifndef HAVE_XDR_GROUPNODE
99bool_t xdr_groupnode(XDR *xdrs, groupnode *objp);
100#endif /* not HAVE_XDR_GROUPNODE */
101#ifndef HAVE_XDR_GROUPS
102bool_t xdr_groups(XDR *xdrs, groups *objp);
103#endif /* not HAVE_XDR_GROUPS */
104#ifndef HAVE_XDR_LINKARGS
105bool_t xdr_linkargs(XDR *xdrs, nfslinkargs *objp);
106#endif /* not HAVE_XDR_LINKARGS */
107#ifndef HAVE_XDR_MOUNTBODY
108bool_t xdr_mountbody(XDR *xdrs, mountbody *objp);
109#endif /* not HAVE_XDR_MOUNTBODY */
110#ifndef HAVE_XDR_MOUNTLIST
111bool_t xdr_mountlist(XDR *xdrs, mountlist *objp);
112#endif /* not HAVE_XDR_MOUNTLIST */
113
114/*
115 * NFS3 XDR FUNCTIONS:
116 */
117#if defined(HAVE_FS_NFS3) && !defined(HAVE_XDR_MOUNTRES3)
118bool_t xdr_fhandle3(XDR *xdrs, fhandle3 *objp);
119bool_t xdr_mountstat3(XDR *xdrs, mountstat3 *objp);
120bool_t xdr_mountres3_ok(XDR *xdrs, mountres3_ok *objp);
121bool_t xdr_mountres3(XDR *xdrs, mountres3 *objp);
122#endif /* defined(HAVE_FS_NFS3) && !defined(HAVE_XDR_MOUNTRES3) */
123
124#ifndef HAVE_XDR_NAME
125bool_t xdr_name(XDR *xdrs, name *objp);
126#endif /* not HAVE_XDR_NAME */
127#ifndef HAVE_XDR_NFS_FH
128bool_t xdr_nfs_fh(XDR *xdrs, am_nfs_fh *objp);
129#endif /* not HAVE_XDR_NFS_FH */
130#ifndef HAVE_XDR_NFSCOOKIE
131bool_t xdr_nfscookie(XDR *xdrs, nfscookie objp);
132#endif /* not HAVE_XDR_NFSCOOKIE */
133#ifndef HAVE_XDR_NFSPATH
134bool_t xdr_nfspath(XDR *xdrs, nfspath *objp);
135#endif /* not HAVE_XDR_NFSPATH */
136#ifndef HAVE_XDR_NFSSTAT
137bool_t xdr_nfsstat(XDR *xdrs, nfsstat *objp);
138#endif /* not HAVE_XDR_NFSSTAT */
139#ifndef HAVE_XDR_NFSTIME
140bool_t xdr_nfstime(XDR *xdrs, nfstime *objp);
141#endif /* not HAVE_XDR_NFSTIME */
142#ifndef HAVE_XDR_POINTER
143bool_t xdr_pointer(register XDR *xdrs, char **objpp, u_int obj_size, XDRPROC_T_TYPE xdr_obj);
144#endif /* not HAVE_XDR_POINTER */
145#ifndef HAVE_XDR_READARGS
146bool_t xdr_readargs(XDR *xdrs, nfsreadargs *objp);
147#endif /* not HAVE_XDR_READARGS */
148#ifndef HAVE_XDR_READDIRARGS
149bool_t xdr_readdirargs(XDR *xdrs, nfsreaddirargs *objp);
150#endif /* not HAVE_XDR_READDIRARGS */
151#ifndef HAVE_XDR_READDIRRES
152bool_t xdr_readdirres(XDR *xdrs, nfsreaddirres *objp);
153#endif /* not HAVE_XDR_READDIRRES */
154#ifndef HAVE_XDR_READLINKRES
155bool_t xdr_readlinkres(XDR *xdrs, nfsreadlinkres *objp);
156#endif /* not HAVE_XDR_READLINKRES */
157#ifndef HAVE_XDR_READOKRES
158bool_t xdr_readokres(XDR *xdrs, nfsreadokres *objp);
159#endif /* not HAVE_XDR_READOKRES */
160#ifndef HAVE_XDR_READRES
161bool_t xdr_readres(XDR *xdrs, nfsreadres *objp);
162#endif /* not HAVE_XDR_READRES */
163#ifndef HAVE_XDR_RENAMEARGS
164bool_t xdr_renameargs(XDR *xdrs, nfsrenameargs *objp);
165#endif /* not HAVE_XDR_RENAMEARGS */
166#ifndef HAVE_XDR_SATTR
167bool_t xdr_sattr(XDR *xdrs, nfssattr *objp);
168#endif /* not HAVE_XDR_SATTR */
169#ifndef HAVE_XDR_SATTRARGS
170bool_t xdr_sattrargs(XDR *xdrs, nfssattrargs *objp);
171#endif /* not HAVE_XDR_SATTRARGS */
172#ifndef HAVE_XDR_STATFSOKRES
173bool_t xdr_statfsokres(XDR *xdrs, nfsstatfsokres *objp);
174#endif /* not HAVE_XDR_STATFSOKRES */
175#ifndef HAVE_XDR_STATFSRES
176bool_t xdr_statfsres(XDR *xdrs, nfsstatfsres *objp);
177#endif /* not HAVE_XDR_STATFSRES */
178#ifndef HAVE_XDR_SYMLINKARGS
179bool_t xdr_symlinkargs(XDR *xdrs, nfssymlinkargs *objp);
180#endif /* not HAVE_XDR_SYMLINKARGS */
181#ifndef HAVE_XDR_WRITEARGS
182bool_t xdr_writeargs(XDR *xdrs, nfswriteargs *objp);
183#endif /* not HAVE_XDR_WRITEARGS */
184
185#endif /* not _AM_XDR_FUNC_H */
186