aboutsummaryrefslogtreecommitdiffstats
path: root/sgsnemu
diff options
context:
space:
mode:
authorViktor Tsymbalyuk <viktor.tsymbalyuk@gmail.com>2018-01-26 12:47:55 +0200
committerHarald Welte <laforge@gnumonks.org>2018-01-26 13:30:51 +0000
commita2a08f7602d590848234fcdce688189afa887b3e (patch)
treeace2b6828d31df857ad39801238cde3cd1a68328 /sgsnemu
parent282d4e3dda5c3a1eabb76da601c5a680a1ccbd15 (diff)
sgsnemu: sgsnemu stopped after recieving "Request accepted" from ggsn
"sgsnemu" stopped with the message "Received create PDP context response. Cause value: 128", but normaly at that poit it should continue working and create "user plane". Reason: Funtion "create_pdp_conf" checking result of "in46a_from_eua" and mistakenly returned EOF when more than 1 IP address provided by GGSN. Now function "create_pdp_conf" stopped with error when 0 IP provided or error code comes from "in46a_from_eua". Fixes: 2d6a69e69a4b4cb2b8cc63c4810dae44e5a4d8f6 ("Add support for IPv4v6 End User Addresses") Change-Id: I7881b8e1f27c432007cb6e5ff665a2ce55f103b5
Diffstat (limited to 'sgsnemu')
-rw-r--r--sgsnemu/sgsnemu.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sgsnemu/sgsnemu.c b/sgsnemu/sgsnemu.c
index bb55b1c..630733b 100644
--- a/sgsnemu/sgsnemu.c
+++ b/sgsnemu/sgsnemu.c
@@ -1400,7 +1400,7 @@ static int create_pdp_conf(struct pdp_t *pdp, void *cbp, int cause)
return EOF; /* Not what we expected */
}
- if (in46a_from_eua(&pdp->eua, &addr)) {
+ if (in46a_from_eua(&pdp->eua, &addr) < 1) {
printf
("Received create PDP context response. Cause value: %d\n",
cause);