pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-sgsn/+/43322?usp=email )
Change subject: ranap: Fix msgb leak on decode error paths
......................................................................
ranap: Fix msgb leak on decode error paths
Change-Id: I4dcd7efc39c3cde052bbd258e4bdd3d13ccf7467
---
M src/sgsn/gprs_ranap.c
1 file changed, 5 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-sgsn refs/changes/22/43322/1
diff --git a/src/sgsn/gprs_ranap.c b/src/sgsn/gprs_ranap.c
index 4445235..70b1260 100644
--- a/src/sgsn/gprs_ranap.c
+++ b/src/sgsn/gprs_ranap.c
@@ -379,11 +379,13 @@
if (ranap_parse_lai(&ra_id, &ies->lai) != 0) {
LOGP(DRANAP, LOGL_ERROR, "Failed to parse RANAP LAI IE\n");
+ msgb_free(msg);
return -1;
}
if (!(ies->presenceMask & INITIALUE_MESSAGEIES_RANAP_RAC_PRESENT)) {
LOGP(DRANAP, LOGL_ERROR, "Rejecting InitialUE msg without RAC
IE\n");
+ msgb_free(msg);
return -1;
}
@@ -391,12 +393,14 @@
if (ra_id.rac == OSMO_RESERVED_RAC) {
LOGP(DRANAP, LOGL_ERROR,
"Rejecting RNC with invalid/internally used RAC 0x%02x\n",
ra_id.rac);
+ msgb_free(msg);
return -1;
}
if (iu_grnc_id_parse(&rnc_id, &ies->globalRNC_ID) != 0) {
LOGP(DRANAP, LOGL_ERROR,
"Failed to parse RANAP Global-RNC-ID IE\n");
+ msgb_free(msg);
return -1;
}
@@ -493,6 +497,7 @@
if (ies->presenceMask & DIRECTTRANSFERIES_RANAP_LAI_PRESENT) {
if (ranap_parse_lai(&_ra_id, &ies->lai) != 0) {
LOGP(DRANAP, LOGL_ERROR, "Failed to parse RANAP LAI
IE\n");
+ msgb_free(msg);
return -1;
}
ra_id = &_ra_id;
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43322?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: I4dcd7efc39c3cde052bbd258e4bdd3d13ccf7467
Gerrit-Change-Number: 43322
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <[email protected]>