BOOL PLUGIN_WRITER_WRITEACE( _In_ PLUGIN_API_TABLE const * const api, _Inout_ PIMPORTED_ACE ace ) { DWORD i = 0; DWORD relCount = 0; LPTSTR resolvedTrustee = NULL; LPTSTR resolvedMail = NULL; resolvedTrustee = api->Resolver.ResolverGetAceTrusteeStr(ace); resolvedMail = api->Resolver.ResolverGetAceObjectMail(ace); if (!resolvedMail) { API_LOG(Dbg, _T("Object has mbx sd without mail address : <%s>"), ace->imported.objectDn); return TRUE; } for (i = 0; i < ACE_REL_COUNT; i++) { if (HAS_RELATION(ace, i)) { relCount++; if (IS_ALLOWED_ACE(ace->imported.raw)) WriteRelation(api, resolvedTrustee, resolvedMail, api->Ace.GetAceRelationStr(i), gs_hOutfile); else WriteRelation(api, resolvedTrustee, resolvedMail, api->Ace.GetAceRelationStr(i), gs_hOutDenyfile); } } return TRUE; }
BOOL PLUGIN_WRITER_WRITEACE( _In_ PLUGIN_API_TABLE const * const api, _Inout_ PIMPORTED_ACE ace ) { DWORD i = 0; DWORD relCount = 0; LPTSTR resolvedTrustee = NULL; resolvedTrustee = api->Resolver.ResolverGetAceTrusteeStr(ace); for (i = 0; i < ACE_REL_COUNT; i++) { if (HAS_RELATION(ace, i)) { relCount++; WriteRelation(api, resolvedTrustee, ace->imported.objectDn, api->Ace.GetAceRelationStr(i)); } } if (relCount == 0) { WriteRelation(api, resolvedTrustee, ace->imported.objectDn, DEFAULT_MSR_NO_RELATION_KEYWORD); } return TRUE; }