aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2012-07-16 18:48:37 +0200
committerHarald Welte <laforge@gnumonks.org>2012-07-16 18:48:37 +0200
commit990d1da8a4df2c8a2ec119eb3a7079c8a706f6fe (patch)
tree9a782f86e14306d99c27506a55969a9c50e20d99
parent65d4d5108a05b39241d3375cb95ed21c431da6d7 (diff)
PCU interface: fix memory leaks in error paths
-rw-r--r--src/common/pcu_sock.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c
index 0679b8fb..c3f47da8 100644
--- a/src/common/pcu_sock.c
+++ b/src/common/pcu_sock.c
@@ -528,6 +528,7 @@ static int pcu_sock_send(struct gsm_network *net, struct msgb *msg)
if (pcu_prim->msg_type != PCU_IF_MSG_TIME_IND)
LOGP(DPCU, LOGL_INFO, "PCU socket not created, "
"dropping message\n");
+ msgb_free(msg);
return -EINVAL;
}
conn_bfd = &state->conn_bfd;
@@ -535,6 +536,7 @@ static int pcu_sock_send(struct gsm_network *net, struct msgb *msg)
if (pcu_prim->msg_type != PCU_IF_MSG_TIME_IND)
LOGP(DPCU, LOGL_NOTICE, "PCU socket not connected, "
"dropping message\n");
+ msgb_free(msg);
return -EIO;
}
msgb_enqueue(&state->upqueue, msg);