diff options
Diffstat (limited to 'orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp')
-rw-r--r-- | orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp b/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp index cb9b53d..2d3cfe3 100644 --- a/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp +++ b/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp @@ -51,3 +51,73 @@ CStdString SkinnyMessageToString(int msgEnum) } return msgString; } + + +bool SkinnyValidateStartMediaTransmission(SkStartMediaTransmissionStruct* smt) +{ + bool valid = true; + if (smt->remoteTcpPort > 65535) + { + valid = false; + } + return valid; +} + +bool checkPartyString(char* string, int size) +{ + bool valid = false; + bool invalidCharFound = false; + bool endOfStringFound = false; + for(int i=0; i<size && invalidCharFound == false && endOfStringFound == false; i++) + { + if(string[i] == 0) + { + endOfStringFound = true; + } + else if(string[i] > 122 || string[i] < 32) + { + invalidCharFound = true; + } + } + if(invalidCharFound == false && endOfStringFound == true) + { + valid = true; + } + return valid; +} + +bool SkinnyValidateCallInfo(SkCallInfoStruct* sci) +{ + bool valid = true; + if (sci->callType > SKINNY_CALL_TYPE_FORWARD) + { + valid = false; + } + if(valid) + { + valid = checkPartyString(sci->calledParty, SKINNY_CALLED_PARTY_SIZE); + } + if(valid) + { + valid = checkPartyString(sci->callingParty, SKINNY_CALLING_PARTY_SIZE); + } + if(valid) + { + valid = checkPartyString(sci->calledPartyName, SKINNY_CALLED_PARTY_NAME_SIZE); + } + if(valid) + { + valid = checkPartyString(sci->callingPartyName, SKINNY_CALLING_PARTY_NAME_SIZE); + } + return valid; +} + +bool SkinnyValidateOpenReceiveChannelAck(SkOpenReceiveChannelAckStruct* orca) +{ + bool valid = true; + if (orca->endpointTcpPort > 65535) + { + valid = false; + } + return valid; +} |