SepCompareClaimAttributes
UINT8 __stdcall SepCompareClaimAttributes(
_AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION *ClaimAttributesOne,
_AUTHZBASEP_CLAIM_ATTRIBUTES_COLLECTION *ClaimAttributesTwo,
UINT8 a3){
char v5;
char v6;
char v7;
char v8;
char v9;
char v10;
char v11;
char v12;
v5 = 0;
v6 = 0;
v7 = 0;
v8 = 0;
v9 = 0;
v10 = 0;
v11 = 0;
v12 = 0;
if( ClaimAttributesOne == ClaimAttributesTwo )
return 1;
if( ClaimAttributesOne )
{
v7 = 1;
v9 = ClaimAttributesOne->pUserSecurityAttributes != 0i64;
v10 = ClaimAttributesOne->pDeviceSecurityAttributes != 0i64;
if( ClaimAttributesOne->DeviceGroupsCount )
v11 = 1;
}
if( ClaimAttributesTwo )
{
v8 = 1;
v5 = ClaimAttributesTwo->pUserSecurityAttributes != 0i64;
v6 = ClaimAttributesTwo->pDeviceSecurityAttributes != 0i64;
if( ClaimAttributesTwo->DeviceGroupsCount )
v12 = 1;
}
return v7 == v8
&& v9 == v5
&& v10 == v6
&& v11 == v12
&& (!v7
|| (!v9
|| AuthzBasepCompareSecurityAttributesInformation(
ClaimAttributesOne->pUserSecurityAttributes,
ClaimAttributesTwo->pUserSecurityAttributes))
&& (!v10
|| AuthzBasepCompareSecurityAttributesInformation(
ClaimAttributesOne->pDeviceSecurityAttributes,
ClaimAttributesTwo->pDeviceSecurityAttributes))
&& (!v11
|| SepCompareSidAndAttributeArrays(
ClaimAttributesOne->pDeviceGroups,
ClaimAttributesOne->DeviceGroupsCount,
ClaimAttributesTwo->pDeviceGroups,
ClaimAttributesTwo->DeviceGroupsCount)));
}Referenced by:
NtCompareTokens
SepSetTokenClaims