SepFreeDefaultDacl
VOID __stdcall SepFreeDefaultDacl(_TOKEN *Token){
_ACL *DefaultDacl;
unsigned int *DynamicPart;
unsigned __int8 *PrimaryGroup;
DefaultDacl = Token->DefaultDacl;
if( DefaultDacl )
{
Token->DynamicAvailable += DefaultDacl->AclSize;
Token->DefaultDacl = 0i64;
}
DynamicPart = Token->DynamicPart;
PrimaryGroup = (unsigned __int8 *)Token->PrimaryGroup;
if( DynamicPart != (unsigned int *)PrimaryGroup )
{
memmove(DynamicPart, PrimaryGroup, 4 * PrimaryGroup[1] + 8);
Token->PrimaryGroup = Token->DynamicPart;
}
}Referenced by:
NtSetInformationToken
SepAppendAceToTokenDefaultDacl