2.2.30.7 SAFEARR_HAVEIID

The SAFEARR_HAVEIID structure defines an array of MInterfacePointers (see [MS-DCOM] section 2.2.14

 typedef struct _wireSAFEARR_HAVEIID {
   ULONG Size;
   [size_is(Size), ref] IUnknown** apUnknown;
   IID iid;
 } SAFEARR_HAVEIID;

Size: MUST be set to the total number of elements in the array. This MUST be nonzero.

apUnknown: MUST be an array of MInterfacePointer elements. The OBJREF iid field MUST be the same as the value of the iid.

iid: MUST specify the IID of each of the elements in the SAFEARRAY.

The Size and iid fields of this type MUST be marshaled as specified in [C706] section 14, with the exception that it MUST be marshaled by using a little-endian data representation, regardless of the data representation format label. For more information, see [C706] section 14.2.5.