aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlexander Couzens <lynxis@fe80.eu>2021-09-04 00:44:18 +0200
committerAlexander Couzens <lynxis@fe80.eu>2021-09-04 01:31:18 +0200
commit3178e30206934d78c1229a04814957837f1dde77 (patch)
tree34571b0acbcc1d66e066644ff098ac76649b1cbc /src
parent1adfd23290dc9d9f7a2d850034c7c80e2ae5e7bb (diff)
gprs_ns2: ensure the incoming NSVC is also the outgoing NSVC
Previous the SNS NSVC (the NSVC used for all SNS traffic) was never changed except when the choosen NSVC went dead or got freed. When receiving a SNS SIZE PDU over a different NSVC than the current SNS NSVC the answer would be transmitted to a different port. Change-Id: I36cd9488b8bca5cb99dae5cf50a55ee282e0557b
Diffstat (limited to 'src')
-rw-r--r--src/gb/gprs_ns2_sns.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gb/gprs_ns2_sns.c b/src/gb/gprs_ns2_sns.c
index c1be0ab8..7619b666 100644
--- a/src/gb/gprs_ns2_sns.c
+++ b/src/gb/gprs_ns2_sns.c
@@ -2326,8 +2326,7 @@ int ns2_sns_rx(struct gprs_ns2_vc *nsvc, struct msgb *msg, struct tlv_parsed *tp
/* FIXME: how to resolve SNS FSM Instance by NSEI (SGSN)? */
fi = nse->bss_sns_fi;
gss = (struct ns2_sns_state *) fi->priv;
- if (!gss->sns_nsvc)
- gss->sns_nsvc = nsvc;
+ gss->sns_nsvc = nsvc;
LOGPFSML(fi, LOGL_DEBUG, "NSEI=%u Rx SNS PDU type %s\n", nsei,
get_value_string(gprs_ns_pdu_strings, nsh->pdu_type));