| /* @(#) $Header: /tcpdump/master/tcpdump/nfsfh.h,v 1.13 2002-04-24 06:27:05 guy Exp $ (LBL) */ |
| |
| /* |
| * Copyright (c) 1993, 1994 Jeffrey C. Mogul, Digital Equipment Corporation, |
| * Western Research Laboratory. All rights reserved. |
| * Copyright (c) 2001 Compaq Computer Corporation. All rights reserved. |
| * |
| * Permission to use, copy, and modify this software and its |
| * documentation is hereby granted only under the following terms and |
| * conditions. Both the above copyright notice and this permission |
| * notice must appear in all copies of the software, derivative works |
| * or modified versions, and any portions thereof, and both notices |
| * must appear in supporting documentation. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in |
| * the documentation and/or other materials provided with the |
| * distribution. |
| * |
| * THE SOFTWARE IS PROVIDED "AS IS" AND COMPAQ COMPUTER CORPORATION |
| * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING |
| * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO |
| * EVENT SHALL COMPAQ COMPUTER CORPORATION BE LIABLE FOR ANY |
| * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
| * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN |
| * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING |
| * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS |
| * SOFTWARE. |
| */ |
| |
| /* |
| * nfsfh.h - NFS file handle definitions (for portable use) |
| * |
| * Jeffrey C. Mogul |
| * Digital Equipment Corporation |
| * Western Research Laboratory |
| */ |
| |
| /* |
| * Internal representation of dev_t, because different NFS servers |
| * that we might be spying upon use different external representations. |
| */ |
| typedef struct { |
| u_int32_t Minor; /* upper case to avoid clashing with macro names */ |
| u_int32_t Major; |
| } my_devt; |
| |
| #define dev_eq(a,b) ((a.Minor == b.Minor) && (a.Major == b.Major)) |
| |
| /* |
| * Many file servers now use a large file system ID. This is |
| * our internal representation of that. |
| */ |
| typedef struct { |
| my_devt Fsid_dev; /* XXX avoid name conflict with AIX */ |
| char Opaque_Handle[2 * 32 + 1]; |
| u_int32_t fsid_code; |
| } my_fsid; |
| |
| #define fsid_eq(a,b) ((a.fsid_code == b.fsid_code) &&\ |
| dev_eq(a.Fsid_dev, b.Fsid_dev)) |
| |
| extern void Parse_fh(const unsigned char *, int, my_fsid *, ino_t *, const char **, const char **, int); |