Home | History | Annotate | Download | only in tcpdump
      1 /* @(#) $Header: /tcpdump/master/tcpdump/nfsfh.h,v 1.13 2002/04/24 06:27:05 guy Exp $ (LBL) */
      2 
      3 /*
      4  * Copyright (c) 1993, 1994 Jeffrey C. Mogul, Digital Equipment Corporation,
      5  * Western Research Laboratory. All rights reserved.
      6  * Copyright (c) 2001 Compaq Computer Corporation. All rights reserved.
      7  *
      8  *  Permission to use, copy, and modify this software and its
      9  *  documentation is hereby granted only under the following terms and
     10  *  conditions.  Both the above copyright notice and this permission
     11  *  notice must appear in all copies of the software, derivative works
     12  *  or modified versions, and any portions thereof, and both notices
     13  *  must appear in supporting documentation.
     14  *
     15  *  Redistribution and use in source and binary forms, with or without
     16  *  modification, are permitted provided that the following conditions
     17  *  are met:
     18  *    1. Redistributions of source code must retain the above copyright
     19  *    notice, this list of conditions and the following disclaimer.
     20  *    2. Redistributions in binary form must reproduce the above copyright
     21  *    notice, this list of conditions and the following disclaimer in
     22  *    the documentation and/or other materials provided with the
     23  *    distribution.
     24  *
     25  *  THE SOFTWARE IS PROVIDED "AS IS" AND COMPAQ COMPUTER CORPORATION
     26  *  DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
     27  *  ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.   IN NO
     28  *  EVENT SHALL COMPAQ COMPUTER CORPORATION BE LIABLE FOR ANY
     29  *  SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     30  *  WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
     31  *  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
     32  *  OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
     33  *  SOFTWARE.
     34  */
     35 
     36 /*
     37  * nfsfh.h - NFS file handle definitions (for portable use)
     38  *
     39  * Jeffrey C. Mogul
     40  * Digital Equipment Corporation
     41  * Western Research Laboratory
     42  */
     43 
     44 /*
     45  * Internal representation of dev_t, because different NFS servers
     46  * that we might be spying upon use different external representations.
     47  */
     48 typedef struct {
     49 	u_int32_t Minor;	/* upper case to avoid clashing with macro names */
     50 	u_int32_t Major;
     51 } my_devt;
     52 
     53 #define	dev_eq(a,b)	((a.Minor == b.Minor) && (a.Major == b.Major))
     54 
     55 /*
     56  * Many file servers now use a large file system ID.  This is
     57  * our internal representation of that.
     58  */
     59 typedef	struct {
     60 	my_devt	Fsid_dev;		/* XXX avoid name conflict with AIX */
     61 	char Opaque_Handle[2 * 32 + 1];
     62 	u_int32_t fsid_code;
     63 } my_fsid;
     64 
     65 #define	fsid_eq(a,b)	((a.fsid_code == b.fsid_code) &&\
     66 			 dev_eq(a.Fsid_dev, b.Fsid_dev))
     67 
     68 extern void Parse_fh(const unsigned char *, int, my_fsid *, ino_t *, const char **, const char **, int);
     69