]>
Commit | Line | Data |
---|---|---|
fe6934da CV |
1 | /* nfs.h |
2 | ||
1da77c26 | 3 | Copyright 2008, 2010 Red Hat, Inc. |
fe6934da CV |
4 | |
5 | This software is a copyrighted work licensed under the terms of the | |
6 | Cygwin license. Please consult the file "CYGWIN_LICENSE" for | |
7 | details. */ | |
8 | ||
9 | #define NFS_ACT_ON_LINK "NfsActOnLink" | |
10 | #define NFS_SYML_TARGET "NfsSymlinkTargetName" | |
11 | #define NFS_V3_ATTR "NfsV3Attributes" | |
12 | ||
13 | /* NFS datastructures per RFC 1813, as returned by SFU NFS. */ | |
14 | ||
15 | enum ftype3 { | |
16 | NF3REG = 1, | |
17 | NF3DIR = 2, | |
18 | NF3BLK = 3, | |
19 | NF3CHR = 4, | |
20 | NF3LNK = 5, | |
21 | NF3SOCK = 6, | |
22 | NF3FIFO = 7 | |
23 | }; | |
24 | ||
61522196 CV |
25 | #pragma pack (push, 4) |
26 | struct nfs_timestruc_t | |
27 | { | |
28 | int32_t tv_sec; | |
29 | uint32_t tv_nsec; | |
30 | }; | |
31 | ||
fe6934da CV |
32 | struct fattr3 { |
33 | uint32_t type; | |
34 | uint32_t mode; | |
35 | uint32_t nlink; | |
36 | uint32_t uid; | |
37 | uint32_t gid; | |
38 | uint32_t filler1; | |
39 | uint64_t size; | |
40 | uint64_t used; | |
41 | struct | |
42 | { | |
43 | uint32_t specdata1; | |
44 | uint32_t specdata2; | |
45 | } rdev; | |
46 | uint64_t fsid; | |
47 | uint64_t fileid; | |
61522196 CV |
48 | struct nfs_timestruc_t atime; |
49 | struct nfs_timestruc_t mtime; | |
50 | struct nfs_timestruc_t ctime; | |
fe6934da | 51 | }; |
61522196 | 52 | #pragma pack (pop) |
fe6934da CV |
53 | |
54 | struct nfs_aol_ffei_t { | |
55 | ULONG NextEntryOffset; | |
56 | UCHAR Flags; | |
57 | UCHAR EaNameLength; | |
58 | USHORT EaValueLength; | |
59 | CHAR EaName[sizeof (NFS_ACT_ON_LINK)]; | |
60 | }; | |
61 | extern struct nfs_aol_ffei_t nfs_aol_ffei; | |
62 | ||
63 | extern uint32_t nfs_type_mapping[]; | |
1da77c26 CV |
64 | |
65 | extern NTSTATUS nfs_fetch_fattr3 (HANDLE h, fattr3 *fattr_buf); |