blob: 1574430018c9c95905edbdfc20f1bcadb8dfcb8e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
//+-------------------------------------------------------------------
//
// Copyright (C) 1995, Microsoft Corporation.
//
// File: DUMPSEC.hxx
//
// Contents: class encapsulating file security.
//
// Classes: CDumpSecurity
//
// History: Nov-93 Created DaveMont
//
//--------------------------------------------------------------------
#ifndef __DUMPSEC__
#define __DUMPSEC__
#include <t2.hxx>
//+-------------------------------------------------------------------
//
// Class: CDumpSecurity
//
// Purpose: encapsulation of NT File security descriptor with functions
// to get SIDs and iterate through the ACES in the DACL.
//
//--------------------------------------------------------------------
class CDumpSecurity
{
public:
CDumpSecurity(WCHAR *filename);
~CDumpSecurity();
ULONG Init();
ULONG GetSDOwner(SID **psid);
ULONG GetSDGroup(SID **pgsid);
VOID ResetAce(SID *psid);
LONG GetNextAce(ACE_HEADER **paceh);
private:
BYTE * _psd ;
CHAR * _pfilename ;
WCHAR * _pwfilename ;
ACL * _pdacl ;
ACE_HEADER * _pah ;
SID * _psid ;
ULONG _cacethissid; // a dinosaur from the cretaceous
};
#endif // __DUMPSEC__
|