From 7ccbef14fc8d1c7f28a64d20de1c9daf7341f7ef Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Thu, 28 Aug 2014 19:50:01 +0200 Subject: [PATCH] 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. --- openbsc/src/libmgcp/mgcp_osmux.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/openbsc/src/libmgcp/mgcp_osmux.c b/openbsc/src/libmgcp/mgcp_osmux.c index c57df005..b554b35b 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);