aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2019-05-14 21:41:06 +0700
committerVadim Yanitskiy <axilirator@gmail.com>2019-05-14 21:41:06 +0700
commitede95d18b35cc89b36bebdcdf6b1222a0fa32c31 (patch)
treece993fcd2a082c043d65a773c6ede50a6dfd0ae8
parent762bb042ec4aeea41029208ef2d25e3919a23ae2 (diff)
libmsc/ran_peer.c: fix msgb memleaks in ran_peer_down_paging()
-rw-r--r--src/libmsc/ran_peer.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libmsc/ran_peer.c b/src/libmsc/ran_peer.c
index 40040a2e3..a77cb89a1 100644
--- a/src/libmsc/ran_peer.c
+++ b/src/libmsc/ran_peer.c
@@ -657,7 +657,13 @@ page_it:
LOG_RAN_PEER_CAT(rp, DPAG, LOGL_ERROR,
"Paging for %s matched this RAN peer, but emitting a Paging failed\n",
gsm0808_cell_id_name(page_id));
+ msgb_free(l2);
return 0;
}
+
+ /* The RAN_PEER_EV_MSG_DOWN_CL handler calls sccp_ran_down_l2_cl(),
+ * which doesn't free msgb. We have to do this ourselves. */
+ msgb_free(l2);
+
return 1;
}