aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--openbsc/src/nat/bsc_nat.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/openbsc/src/nat/bsc_nat.c b/openbsc/src/nat/bsc_nat.c
index ea6c82f91..9a88744f7 100644
--- a/openbsc/src/nat/bsc_nat.c
+++ b/openbsc/src/nat/bsc_nat.c
@@ -670,6 +670,11 @@ exit:
goto exit2;
}
+exit2:
+ talloc_free(parsed);
+ msgb_free(msg);
+ return -1;
+
exit3:
/* send a SCCP Connection Refused */
refuse = sccp_create_refuse(parsed->src_local_ref, SCCP_REFUSAL_SCCP_FAILURE);
@@ -677,7 +682,7 @@ exit3:
bsc_send_data(bsc, refuse->l2h, msgb_l2len(refuse), IPAC_PROTO_SCCP);
msgb_free(refuse);
}
-exit2:
+
talloc_free(parsed);
msgb_free(msg);
return -1;