[PATCH] openggsn[master]: Only send TRAP for defined PDP peer

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Max gerrit-no-reply at lists.osmocom.org
Fri Oct 14 11:40:24 UTC 2016


Review at  https://gerrit.osmocom.org/1065

Only send TRAP for defined PDP peer

Do not attempt to send TRAP message on PDP context deletion if peer is
unknown.

Change-Id: I5e02c1d42bb7aaf1ef81a9824aab7b12047cdd3e
Fixes: Coverity CID 150135
---
M ggsn/ggsn.c
1 file changed, 7 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/openggsn refs/changes/65/1065/1

diff --git a/ggsn/ggsn.c b/ggsn/ggsn.c
index 9609d52..be408b3 100644
--- a/ggsn/ggsn.c
+++ b/ggsn/ggsn.c
@@ -138,10 +138,14 @@
 	DEBUGP(DGGSN, "Deleting PDP context\n");
 	struct ippoolm_t *member = pdp->peer;
 	char v[NAMESIZE];
-	snprintf(v, sizeof(v), "%" PRIu64 ",%s", pdp->imsi, inet_ntoa(member->addr));
-	if (pdp->peer)
+
+	if (pdp->peer) {
+		snprintf(v, sizeof(v), "%" PRIu64 ",%s", pdp->imsi,
+			 inet_ntoa(member->addr));
+		if (ctrl_cmd_send_trap(gsn->ctrl, "imsi-rem-ip", v) < 0)
+			LOGP(DGGSN, LOGL_ERROR, "Trap creation failed.\n");
 		ippool_freeip(ippool, (struct ippoolm_t *)pdp->peer);
-	else
+	} else
 		SYS_ERR(DGGSN, LOGL_ERROR, 0, "Peer not defined!");
 
 	if (gtp_kernel_tunnel_del(pdp)) {
@@ -149,9 +153,6 @@
 			"Cannot delete tunnel from kernel: %s\n",
 			strerror(errno));
 	}
-/* FIXME: naming? */
-	if (ctrl_cmd_send_trap(gsn->ctrl, "imsi-rem-ip", v) < 0)
-		LOGP(DGGSN, LOGL_ERROR, "Trap creation failed.\n");
 
 	return 0;
 }

-- 
To view, visit https://gerrit.osmocom.org/1065
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5e02c1d42bb7aaf1ef81a9824aab7b12047cdd3e
Gerrit-PatchSet: 1
Gerrit-Project: openggsn
Gerrit-Branch: master
Gerrit-Owner: Max <msuraev at sysmocom.de>



More information about the gerrit-log mailing list