2.2.9.3 MILMSG_VERSIONREPLY

The MILMSG_VERSIONREPLY packet sent in response to a MILCTRLCMD_VERSIONREQUEST control message. This is a variable-length notification. The header is immediately followed by an array of 32-bit unsigned integer values representing the IDs of the message protocols supported by the client. The supportedVersionsCount field indicates how many IDs are included after the header. The size of the encapsulating MILCTRLCMD_CONNECTION_NOTIFICATION message MUST be set to 0x0000004C plus the size in bytes of the array that follows the header of this message.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

controlCode

reserved0

SupportedVersionsCount

reserved1 (48 bytes)

...

...

supportedVersions (variable)

...

controlCode (4 bytes): A 32-bit unsigned integer containing the control code for this message. The value of this field MUST be equal to 0x00000003.

reserved0 (4 bytes): Reserved. MUST be set to zero when sent, and MUST be ignored when received.

SupportedVersionsCount (4 bytes): A 32-bit unsigned integer. The count of different protocol versions supported by the composition engine.

reserved1 (48 bytes): Reserved. MUST be set to zero when sent, and MUST be ignored when received.

supportedVersions (variable): A variable-length array of 32-bit unsigned integers. An array of IDs of the protocol versions supported by the composition engine. This field MUST be of size, in bytes, equal to the value of supportedVersionsCount field multiplied by four. For this version of the protocol, the value MIL_SDK_VERSION (0x1042EA27) MUST be included in this field.