fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-hlr/+/33567 )
Change subject: gsup_server: fix msgb memleak in osmo_gsup_server_read_cb() ......................................................................
gsup_server: fix msgb memleak in osmo_gsup_server_read_cb()
I noticed that inability to send IPA PONG in response to IPA PING from osmo-{msc,sgsn} results in an "IPA Multiplex" chunk being leaked.
No matter what's returned from ipa_server_conn_ccm(), we need to free the msgb containing the incoming IPA message.
Change-Id: I5c5acbffc2913f78db4894ae3633b5eca9c2e8d6 --- M src/gsup_server.c 1 file changed, 17 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hlr refs/changes/67/33567/1
diff --git a/src/gsup_server.c b/src/gsup_server.c index 097a854..91110eb 100644 --- a/src/gsup_server.c +++ b/src/gsup_server.c @@ -179,11 +179,9 @@
if (hh->proto == IPAC_PROTO_IPACCESS) { rc = ipa_server_conn_ccm(conn, msg); - if (rc < 0) { - /* conn is already invalid here! */ - return -1; - } msgb_free(msg); + if (rc < 0) /* conn is already invalid here! */ + return -1; return 0; }