aboutsummaryrefslogtreecommitdiffstats
path: root/sgsnemu/sgsnemu.c
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2019-05-13 11:35:03 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2019-05-31 16:44:01 +0200
commit1cde2c169162de3773ccc49b0408a330d61be3d7 (patch)
tree5e063a1c9e4648d1b0d44ec53ea1569eb5314c6e /sgsnemu/sgsnemu.c
parent93dd798a998824b50b5d65b822ac3db9ad7eafc2 (diff)
ggsn: Use gtp_delete_context_req2() everywhere
Replace calls to gtp_delete_context_req() with gtp_delete_context_req2(). Related: OS#2741 Change-Id: Iecc8c5ac45207e7e20129559c4ac7f3c67dfb36a
Diffstat (limited to 'sgsnemu/sgsnemu.c')
-rw-r--r--sgsnemu/sgsnemu.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sgsnemu/sgsnemu.c b/sgsnemu/sgsnemu.c
index a2220f0..225dc59 100644
--- a/sgsnemu/sgsnemu.c
+++ b/sgsnemu/sgsnemu.c
@@ -1474,6 +1474,8 @@ static int delete_pdp_conf(struct pdp_t *pdp, int cause)
{
printf("Received delete PDP context response. Cause value: %d\n",
cause);
+ if (pdp)
+ pdp_freepdp(pdp);
return 0;
}
@@ -1508,8 +1510,6 @@ static int conf(int type, int cause, struct pdp_t *pdp, void *cbp)
case GTP_CREATE_PDP_REQ:
return create_pdp_conf(pdp, cbp, cause);
case GTP_DELETE_PDP_REQ:
- if (cause != 128)
- return 0; /* Request not accepted. We don't care */
return delete_pdp_conf(pdp, cause);
default:
return 0;
@@ -1756,8 +1756,7 @@ int main(int argc, char **argv)
for (n = 0; n < options.contexts; n++) {
/* Delete context */
printf("Disconnecting PDP context #%d\n", n);
- gtp_delete_context_req(gsn, iparr[n].pdp, NULL,
- 1);
+ gtp_delete_context_req2(gsn, iparr[n].pdp, NULL, 1);
if ((options.pinghost.s_addr != 0)
&& ntransmitted)
ping_finish();