directly applicable to open-vm-tools.
*
* @param[in] packet
* @param[in] packetSize
+ * @param[in] allowed max packet Size
*
* @return DnDCPMsgPacketType
*/
DnDCPMsgPacketType DnDCPMsgV4_GetPacketType(const uint8 *packet,
- size_t packetSize)
+ size_t packetSize,
+ const uint32 maxPacketPayloadSize)
{
DnDCPMsgHdrV4 *msgHdr = NULL;
ASSERT(packet);
}
msgHdr = (DnDCPMsgHdrV4 *)packet;
- if (msgHdr->binarySize <= DND_CP_PACKET_MAX_PAYLOAD_SIZE_V4) {
+ if (msgHdr->binarySize <= maxPacketPayloadSize) {
return DND_CP_MSG_PACKET_TYPE_SINGLE;
}
void DnDCPMsgV4_Init(DnDCPMsgV4 *msg);
void DnDCPMsgV4_Destroy(DnDCPMsgV4 *msg);
DnDCPMsgPacketType DnDCPMsgV4_GetPacketType(const uint8 *packet,
- size_t packetSize);
+ size_t packetSize,
+ const uint32 maxPacketPayloadSize);
Bool DnDCPMsgV4_Serialize(DnDCPMsgV4 *msg,
uint8 **packet,
size_t *packetSize);
DnDCPMsgPacketType packetType = DND_CP_MSG_PACKET_TYPE_INVALID;
if (packetSize <= mMaxTransportPacketPayloadSize + DND_CP_MSG_HEADERSIZE_V4) {
- packetType = DnDCPMsgV4_GetPacketType(packet, packetSize);
+ packetType = DnDCPMsgV4_GetPacketType(packet, packetSize, mMaxTransportPacketPayloadSize);
}
switch (packetType) {