From: Eric Tamme <eric@uphreak.com>
Date: Wed, 18 Mar 2015 14:26:08 -0400
Subject: [PATCH] fix rtpstat for rtpengine - thanks to jarrod for tracking
down the fix
diff --git a/modules/rtpengine/rtpengine.c b/modules/rtpengine/rtpengine.c
index 794959b..16e2fdc 100644
--- a/modules/rtpengine/rtpengine.c
+++ b/modules/rtpengine/rtpengine.c
@@ -1891,7 +1891,7 @@ pv_get_rtpstat_f(struct sip_msg *msg, pv_param_t *param,
pv_value_t *res)
{
bencode_buffer_t bencbuf;
- bencode_item_t *dict, *tot, *in, *out;
+ bencode_item_t *dict, *tot, *rtp, *rtcp;
static char buf[256];
str ret;
@@ -1900,24 +1900,20 @@ pv_get_rtpstat_f(struct sip_msg *msg, pv_param_t *param,
return -1;
tot = bencode_dictionary_get_expect(dict, "totals", BENCODE_DICTIONARY);
- in = bencode_dictionary_get_expect(tot, "input", BENCODE_DICTIONARY);
- in = bencode_dictionary_get_expect(in, "rtp", BENCODE_DICTIONARY);
- out = bencode_dictionary_get_expect(tot, "output", BENCODE_DICTIONARY);
- out = bencode_dictionary_get_expect(out, "rtp", BENCODE_DICTIONARY);
-
- if (!in || !out)
+ rtp = bencode_dictionary_get_expect(tot, "RTP", BENCODE_DICTIONARY);
+ rtcp = bencode_dictionary_get_expect(tot, "RTCP", BENCODE_DICTIONARY);
+ if (!rtp || !rtcp)
goto error;
-
ret.s = buf;
ret.len = snprintf(buf, sizeof(buf),
- "Input: %lli bytes, %lli packets, %lli errors; "
- "Output: %lli bytes, %lli packets, %lli errors",
- bencode_dictionary_get_integer(in, "bytes", -1),
- bencode_dictionary_get_integer(in, "packets", -1),
- bencode_dictionary_get_integer(in, "errors", -1),
- bencode_dictionary_get_integer(out, "bytes", -1),
- bencode_dictionary_get_integer(out, "packets", -1),
- bencode_dictionary_get_integer(out, "errors", -1));
+ "RTP: %lli bytes, %lli packets, %lli errors; "
+ "RTCP: %lli bytes, %lli packets, %lli errors",
+ bencode_dictionary_get_integer(rtp, "bytes", -1),
+ bencode_dictionary_get_integer(rtp, "packets", -1),
+ bencode_dictionary_get_integer(rtp, "errors", -1),
+ bencode_dictionary_get_integer(rtcp, "bytes", -1),
+ bencode_dictionary_get_integer(rtcp, "packets", -1),
+ bencode_dictionary_get_integer(rtcp, "errors", -1));
bencode_buffer_free(&bencbuf);
return pv_get_strval(msg, param, res, &ret);