The DRS_MSG_REPADD union defines request messages that are sent to the IDL_DRSReplicaAdd method.

 typedef 
 [switch_type(DWORD)] 
 union {
   [case(1)] 
     DRS_MSG_REPADD_V1 V1;
   [case(2)] 
     DRS_MSG_REPADD_V2 V2;
   [case(3)]
     DRS_MSG_REPADD_V3 V3;
 } DRS_MSG_REPADD;

V1: The version 1 request.

V2: The version 2 request (a superset of V1).

V3:  The version 3 request (a superset of V2).