aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@soleta.eu>2014-08-28 19:50:01 +0200
committerPablo Neira Ayuso <pablo@soleta.eu>2014-08-28 19:50:41 +0200
commitcaa0aace218cdf6f324e3940c42dfb952cad12c5 (patch)
tree97144995ebff93cec7f0b5e8985f40c9965a5467
parent7a83f4d264e7b941b1e74bdca96bbcc715f0ca96 (diff)
osmux: fix access to uninitialized memory area in scheduled_tx_*_cb
mgcp_send() needs some initialized address when printing a log message. Nothing really serious but let's calm down valgrind.
-rw-r--r--openbsc/src/libmgcp/mgcp_osmux.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/openbsc/src/libmgcp/mgcp_osmux.c b/openbsc/src/libmgcp/mgcp_osmux.c
index c57df005b..b554b35b0 100644
--- a/openbsc/src/libmgcp/mgcp_osmux.c
+++ b/openbsc/src/libmgcp/mgcp_osmux.c
@@ -210,7 +210,10 @@ endpoint_lookup(struct mgcp_config *cfg, int cid,
static void scheduled_tx_net_cb(struct msgb *msg, void *data)
{
struct mgcp_endpoint *endp = data;
- struct sockaddr_in addr;
+ struct sockaddr_in addr = {
+ .sin_addr = endp->net_end.addr,
+ .sin_port = endp->net_end.rtp_port,
+ };
mgcp_send(endp, MGCP_DEST_NET, 1, &addr, (char *)msg->data, msg->len);
msgb_free(msg);
@@ -219,7 +222,10 @@ static void scheduled_tx_net_cb(struct msgb *msg, void *data)
static void scheduled_tx_bts_cb(struct msgb *msg, void *data)
{
struct mgcp_endpoint *endp = data;
- struct sockaddr_in addr;
+ struct sockaddr_in addr = {
+ .sin_addr = endp->bts_end.addr,
+ .sin_port = endp->bts_end.rtp_port,
+ };
mgcp_send(endp, MGCP_DEST_BTS, 1, &addr, (char *)msg->data, msg->len);
msgb_free(msg);