4.1.2.2 Replying with a List of Supported Protocol Versions
The following example is an annotated dump of the MILCTRLCMD_CONNECTIONNOTIFICATION message followed by a MILMSG_VERSIONREPLY connection notification, followed by a variable-length array of supported protocol version identifiers. This notification is sent by the client in response to the MILCTRLCMD_VERSIONREQUEST message sent by the server.
-
00000000 09 00 00 00 50 00 00 00-00 00 00 00 00 00 00 00 ....P........... 00000010 03 00 00 00 00 00 00 00-01 00 00 00 00 00 00 00 ................ 00000020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 00000030 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 00000040 00 00 00 00 00 00 00 00-00 00 00 00 8c 46 3d 61 .............F=a 09 00 00 00 MILCTRLCMD_CONNECTIONNOTIFICATION::controlCode = 0x00000009 50 00 00 00 MILCTRLCMD_CONNECTIONNOTIFICATION::messageSize = 0x50 = 80 bytes 00 00 00 00 00 00 00 00 MILCTRLCMD_CONNECTIONNOTIFICATION::unused (8 bytes) 03 00 00 00 MILMSG_VERSIONREPLY::controlCode = 0x00000003 00 00 00 00 MILMSG_VERSIONREPLY::unused (4 bytes) 01 00 00 00 MILMSG_VERSIONREPLY::SupportedVersionsCount = 0x00000001 00 00 00 00 (repeated 12 times) MILMSG_VERSIONREPLY::unused (48 bytes) 8c 46 3d 61 MILMSG_VERSIONREPLY::supportedVersions.
Because the SupportedVersionsCount field is set to 0x00000001, the supportedVersions array is exactly 4 bytes in size and contains the MIL_SDK_VERSION identifier supported by the client.