]>
Commit | Line | Data |
---|---|---|
1 | /* nt.h: central header for EF_NTSD "SD" extra field */ | |
2 | ||
3 | #ifndef _NT_H | |
4 | #define _NT_H | |
5 | ||
6 | #define NTSD_BUFFERSIZE (1024) /* threshold to cause malloc() */ | |
7 | #define OVERRIDE_BACKUP 1 /* we have SeBackupPrivilege on remote */ | |
8 | #define OVERRIDE_RESTORE 2 /* we have SeRestorePrivilege on remote */ | |
9 | #define OVERRIDE_SACL 4 /* we have SeSystemSecurityPrivilege on remote */ | |
10 | ||
11 | typedef struct { | |
12 | BOOL bValid; /* are our contents valid? */ | |
13 | BOOL bProcessDefer; /* process deferred entry yet? */ | |
14 | BOOL bUsePrivileges; /* use privilege overrides? */ | |
15 | DWORD dwFileSystemFlags; /* describes target file system */ | |
16 | BOOL bRemote; /* is volume remote? */ | |
17 | DWORD dwRemotePrivileges; /* relevant only on remote volumes */ | |
18 | DWORD dwFileAttributes; | |
19 | char RootPath[MAX_PATH+1]; /* path to network / filesystem */ | |
20 | } VOLUMECAPS, *PVOLUMECAPS, *LPVOLUMECAPS; | |
21 | ||
22 | BOOL SecuritySet(char *resource, PVOLUMECAPS VolumeCaps, uch *securitydata); | |
23 | BOOL GetVolumeCaps(char *rootpath, char *name, PVOLUMECAPS VolumeCaps); | |
24 | BOOL ValidateSecurity(uch *securitydata); | |
25 | BOOL ProcessDefer(PDWORD dwDirectoryCount, PDWORD dwBytesProcessed, | |
26 | PDWORD dwDirectoryFail, PDWORD dwBytesFail); | |
27 | ||
28 | #endif /* _NT_H */ |