summaryrefslogtreecommitdiff
path: root/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp
diff options
context:
space:
mode:
authorHenri Herscher <henri@oreka.org>2006-08-01 14:50:46 +0000
committerHenri Herscher <henri@oreka.org>2006-08-01 14:50:46 +0000
commit7eb2bf35a3e972fa4cfdad4560945296b86f2550 (patch)
tree42414e69183527ab5b2ec7d98c617a4f425a3f21 /orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp
parent39167cd30dfe4e787fb22a5d54c4db40f239cd77 (diff)
Applying changeset 304 from 0.5 to trunk:
Added support for Cisco CallManager 5. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@323 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp')
-rw-r--r--orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp b/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp
index d0fa8a4..123282e 100644
--- a/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp
+++ b/orkaudio/audiocaptureplugins/voip/PacketHeaderDefs.cpp
@@ -27,6 +27,10 @@ int SkinnyMessageToEnum(CStdString& msg)
{
msgEnum = SkLineStatMessage;
}
+ else if (msg.CompareNoCase(SKINNY_MSG_CCM5_CALL_INFO_MESSAGE) == 0)
+ {
+ msgEnum = SkCcm5CallInfoMessage;
+ }
return msgEnum;
}
@@ -53,6 +57,9 @@ CStdString SkinnyMessageToString(int msgEnum)
case SkLineStatMessage:
msgString = SKINNY_MSG_LINE_STAT_MESSAGE;
break;
+ case SkCcm5CallInfoMessage:
+ msgString = SKINNY_MSG_CCM5_CALL_INFO_MESSAGE;
+ break;
default:
msgString = SKINNY_MSG_UNKN;
}
@@ -119,6 +126,32 @@ bool SkinnyValidateCallInfo(SkCallInfoStruct* sci)
return valid;
}
+
+bool SkinnyValidateCcm5CallInfo(SkCcm5CallInfoStruct *sci)
+{
+ bool valid = true;
+ if (sci->callType > SKINNY_CALL_TYPE_FORWARD)
+ {
+ valid = false;
+ }
+ if(valid)
+ {
+ valid = checkPartyString(sci->parties, SKINNY_CCM5_PARTIES_BLOCK_SIZE);
+ }
+ if(valid)
+ {
+ // Find the first null char separating the calling and called parties (at this point, we know there's one)
+ char* nullChar = (char*)&sci->parties;
+ while(*nullChar != '\0')
+ {
+ nullChar++;
+ }
+ valid = checkPartyString(nullChar+1, SKINNY_CCM5_PARTIES_BLOCK_SIZE);
+ }
+ return valid;
+}
+
+
bool SkinnyValidateOpenReceiveChannelAck(SkOpenReceiveChannelAckStruct* orca)
{
bool valid = true;