aboutsummaryrefslogtreecommitdiff
path: root/tests/libtest/lib571.c
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2010-02-01 22:14:22 +0000
committerYang Tse <yangsita@gmail.com>2010-02-01 22:14:22 +0000
commitea7219465094d72bb7211a5d71ecd0a201f9ca53 (patch)
treee09f92a4b47c8894302c86483de4caffd84833c2 /tests/libtest/lib571.c
parent35e220606d0f39c62f769c408799f5a61ba07599 (diff)
Conroy added a check to the coded message size since the docs stipulate
that each call will contain a full protocol packet.
Diffstat (limited to 'tests/libtest/lib571.c')
-rw-r--r--tests/libtest/lib571.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/tests/libtest/lib571.c b/tests/libtest/lib571.c
index 4e9f38708..7fa85b2ab 100644
--- a/tests/libtest/lib571.c
+++ b/tests/libtest/lib571.c
@@ -28,14 +28,19 @@ static int rtp_packet_count = 0;
static size_t rtp_write(void *ptr, size_t size, size_t nmemb, void *stream) {
char *data = (char *)ptr;
- int channel = (int)data[0];
- int message_size = (int)(size * nmemb - 3);
+ int channel = (int)data[1];
+ int message_size = (int)(size * nmemb - 4);
+ unsigned short coded_size = ntohs(*((unsigned short*)(&data[2])));
int i;
(void)stream;
printf("RTP: message size %d, channel %d\n", message_size, channel);
+ if((unsigned short) message_size != coded_size) {
+ printf("RTP embedded size (%hu) does not match the write size (%d).\n",
+ coded_size, message_size);
+ }
- data += 3;
+ data += 4;
for(i = 0; i < message_size; i+= RTP_DATA_SIZE) {
if(message_size - i > RTP_DATA_SIZE) {
if(memcmp(RTP_DATA, data + i, RTP_DATA_SIZE) != 0) {