3.2.6.3.6 ConnectedNetwork

 The MQDS client MUST perform the following actions:

  1. The arguments supplied to the Read Directory (section 3.2.6.3) event MUST meet the following conditions. If any of these conditions is violated, rStatus MUST be set to DirectoryOperationResult.GenericError, and processing of the event MUST end.

    • The iDirectoryObject.Identifier attribute MUST be populated.

  2. If iAttributeList was not provided as an argument, an iAttributeList MUST be constructed that MUST contain the names of all directory attributes in the ConnectedNetwork ([MS-MQDMPR] section 3.1.1.9) ADM element.

  3. The aProp parameter for the S_DSGetPropsGuid (section 3.1.4.8) method MUST be computed. For each ConnectedNetwork ADM element attribute listed in the following table that appears in iAttributeList, add the corresponding property identifier to aProp. ConnectedNetwork ADM element attributes that appear in iAttributeList but that are not listed in the following table MUST be ignored.

    ConnectedNetwork ADM element attribute

    Property identifier

    Attribute value computation

    Name

    PROPID_CN_NAME ([MS-MQMQ] section 2.3.4.2)

    Unicode string copied from property.

    Identifier

    PROPID_CN_GUID ([MS-MQMQ] section 2.3.4.3)

    GUID copied from property.

    Security

    PROPID_CN_SECURITY ([MS-MQMQ] section 2.3.4.6)

    Security descriptor copied from property.

  4. Other input parameters for the S_DSGetPropsGuid method MUST be computed:

    1. dwObjectType MUST be MQDS_CN.

    2. Other parameters MUST be set up as specified in section 3.1.4.8.

  5. The common steps for the Read Directory event ensure that these steps are performed only if theattribute-filter expression ([MS-MQDMPR] section 3.1.7.1.20) in iFilter is of the form "Identifier" EQUALS someGuid, and the S_DSGetPropsGuid method MUST be called with the pGuid parameter set to point to a buffer that contains someGuid and the other given arguments.

  6. If the return value is MQDS_OBJECT_NOT_FOUND, rStatus MUST be set to DirectoryOperationResult.ObjectNotFound, rDirectoryObject is undefined, and processing MUST end.

  7. If the return value is not MQ_OK, rStatus MUST be set to DirectoryOperationResult.GenericError, rDirectoryObject is undefined, and processing MUST end.

  8. A ConnectedNetwork ADM element instance MUST be created. rDirectoryObject MUST be set to this new ConnectedNetwork ADM element instance. The attributes listed in iAttributeList MUST be computed according to the preceding table and MUST be set on rDirectoryObject.

  9. rStatus MUST be set to DirectoryOperationResult.Success. Processing MUST end.