xref: /freebsd/contrib/tcpdump/nfsfh.h (revision 41466b50c1d5bfd1cf6adaae547a579a75d7c04e)
1 /*
2  * $Header: /tcpdump/master/tcpdump/nfsfh.h,v 1.9 2000/06/01 01:16:36 assar Exp $
3  *
4  * nfsfh.h - NFS file handle definitions (for portable use)
5  *
6  * Jeffrey C. Mogul
7  * Digital Equipment Corporation
8  * Western Research Laboratory
9  *	$FreeBSD$
10  *	$NetBSD: nfsfh.h,v 1.1.1.2 1997/10/03 17:25:13 christos Exp $	*/
11 
12 /*
13  * Internal representation of dev_t, because different NFS servers
14  * that we might be spying upon use different external representations.
15  */
16 typedef struct {
17 	u_int32_t Minor;	/* upper case to avoid clashing with macro names */
18 	u_int32_t Major;
19 } my_devt;
20 
21 #define	dev_eq(a,b)	((a.Minor == b.Minor) && (a.Major == b.Major))
22 
23 /*
24  * Many file servers now use a large file system ID.  This is
25  * our internal representation of that.
26  */
27 typedef	struct {
28 	my_devt	Fsid_dev;		/* XXX avoid name conflict with AIX */
29 	char Opaque_Handle[2 * 32 + 1];
30 	u_int32_t fsid_code;
31 } my_fsid;
32 
33 #define	fsid_eq(a,b)	((a.fsid_code == b.fsid_code) &&\
34 			 dev_eq(a.Fsid_dev, b.Fsid_dev))
35 
36 extern void Parse_fh(caddr_t *, int, my_fsid *, ino_t *, char **, char **, int);
37