public static void RopQueryNamedPropertiesMethod(
QueryFlags queryFlags,
bool hasGuid,
out bool isKind0x01Return,
out bool isKind0x00Return,
out bool isNamedPropertyGuidReturn)
{
Condition.IsTrue(isInitialized);
Condition.IsTrue(
(globalObj == ServerObjectType.Logon && requirementContainer[12904]) ||
globalObj == ServerObjectType.Folder ||
globalObj == ServerObjectType.Message ||
globalObj == ServerObjectType.Attachment);
isKind0x01Return = false;
isKind0x00Return = false;
isNamedPropertyGuidReturn = false;
if (queryFlags == QueryFlags.NoIds)
{
if (hasGuid)
{
isKind0x01Return = true;
ModelHelper.CaptureRequirement(
877,
@"[In Processing RopQueryNamedProperties] Starting with the full list of all named properties:
If the NoIds bit is set in the QueryFlags field, named properties with the Kind field set to 0x0 MUST NOT be returned.");
isNamedPropertyGuidReturn = true;
ModelHelper.CaptureRequirement(
878,
@"[In Processing RopQueryNamedProperties] Starting with the full list of all named properties:
If the PropertyGuid field of the ROP request buffer is present, named properties with a GUID field ([MS-OXCDATA] section 2.6.1) value
that does not match the value of the PropertyGuid field MUST NOT be returned.");
}
}
else if (!hasGuid && queryFlags == QueryFlags.NoStrings)
{
isKind0x00Return = true;
ModelHelper.CaptureRequirement(
876,
@"[In Processing RopQueryNamedProperties] Starting with the full list of all named properties:
If the NoStrings bit is set in the QueryFlags field of the ROP request buffer, named properties with the Kind field ([MS-OXCDATA] section 2.6.1)
set to 0x1 MUST NOT be returned.");
}
}