which included commits to RCS files with non-trunk default branches. git-svn-id: svn://10.65.10.50/trunk@5403 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| /* nt.h:  central header for EF_NTSD "SD" extra field */
 | |
| 
 | |
| #ifndef _NT_H
 | |
| #define _NT_H
 | |
| 
 | |
| #define EB_NTSD_MAX_VER_SUPPORT (0) /* maximum ver# we know how to handle */
 | |
| 
 | |
| #define EB_NTSD_C_LEN     4    /* length of central EB data */
 | |
| #define EB_NTSD_L_LEN     5    /* length of minimal local EB data */
 | |
| #define EB_NTSD_LSIZE     0    /* offset of (ulg) uncompressed SD data size */
 | |
| #define EB_NTSD_VERSION   4    /* offset of NTSD version byte */
 | |
| /*  ...followed by... */
 | |
| /*  SHORT CType;  compression type */
 | |
| /*  ULONG EACRC;  CRC value for uncompressed security descriptor data */
 | |
| /*  <var.> Variable length data */
 | |
| 
 | |
| 
 | |
| #define NTSD_BUFFERSIZE (1024)  /* threshold to cause malloc() */
 | |
| #define OVERRIDE_BACKUP     1   /* we have SeBackupPrivilege on remote */
 | |
| #define OVERRIDE_RESTORE    2   /* we have SeRestorePrivilege on remote */
 | |
| #define OVERRIDE_SACL       4   /* we have SeSystemSecurityPrivilege on remote */
 | |
| 
 | |
| typedef struct {
 | |
|     BOOL bValid;                /* are our contents valid? */
 | |
|     BOOL bProcessDefer;         /* process deferred entry yet? */
 | |
|     BOOL bUsePrivileges;        /* use privilege overrides? */
 | |
|     DWORD dwFileSystemFlags;    /* describes target file system */
 | |
|     BOOL bRemote;               /* is volume remote? */
 | |
|     DWORD dwRemotePrivileges;   /* relevant only on remote volumes */
 | |
|     DWORD dwFileAttributes;
 | |
|     char RootPath[MAX_PATH+1];  /* path to network / filesystem */
 | |
| } VOLUMECAPS, *PVOLUMECAPS, *LPVOLUMECAPS;
 | |
| 
 | |
| BOOL SecuritySet(char *resource, PVOLUMECAPS VolumeCaps, uch *securitydata);
 | |
| BOOL GetVolumeCaps(char *rootpath, char *name, PVOLUMECAPS VolumeCaps);
 | |
| BOOL ValidateSecurity(uch *securitydata);
 | |
| BOOL ProcessDefer(PDWORD dwDirectoryCount, PDWORD dwBytesProcessed,
 | |
|                   PDWORD dwDirectoryFail, PDWORD dwBytesFail);
 | |
| 
 | |
| #endif /* _NT_H */
 |