windows-nt/Source/XPSP1/NT/sdktools/cacls/dumpsec.hxx
2020-09-26 16:20:57 +08:00

58 lines
1.3 KiB
C++

//+-------------------------------------------------------------------
//
// 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__