diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2019-11-08 04:02:31 +0700 |
---|---|---|
committer | Vadim Yanitskiy <axilirator@gmail.com> | 2019-11-08 04:11:20 +0700 |
commit | ef444142c8e1f752a6c37a7a2d90b9196431cd0a (patch) | |
tree | 17136c76f10adee3224a347eee9ea7a03fee2fbf /src/gprs_bssgp_pcu.cpp | |
parent | 05bca3524a29de832f4ed455def37fa6c9fa015d (diff) |
BSSGP: do not reject SUSPEND ACK / NACK messages
Both BSSGP SUSPEND ACK and NACK messages use BVCI=0 (signaling),
which always exists. Claiming that BVCI=0 is unknown is wrong.
Instead of adding both BSSGP_PDUT_SUSPEND_{ACK,NACK} to the 'if'
statement, let's rather avoid rejection for all BVCI=0 messages,
as there may be other unlisted message types.
Change-Id: I780657c1e8f67e0bef0e92a31db7ba61b57d7ec4
Related: OS#4111
Diffstat (limited to 'src/gprs_bssgp_pcu.cpp')
-rw-r--r-- | src/gprs_bssgp_pcu.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/gprs_bssgp_pcu.cpp b/src/gprs_bssgp_pcu.cpp index abcb1069..f99058a5 100644 --- a/src/gprs_bssgp_pcu.cpp +++ b/src/gprs_bssgp_pcu.cpp @@ -407,10 +407,7 @@ static int gprs_bssgp_pcu_rcvmsg(struct msgb *msg) /* look-up or create the BTS context for this BVC */ bctx = btsctx_by_bvci_nsei(ns_bvci, msgb_nsei(msg)); - if (!bctx - && pdu_type != BSSGP_PDUT_BVC_RESET_ACK - && pdu_type != BSSGP_PDUT_BVC_UNBLOCK_ACK - && pdu_type != BSSGP_PDUT_PAGING_PS) + if (!bctx && ns_bvci != BVCI_SIGNALLING) { LOGP(DBSSGP, LOGL_NOTICE, "NSEI=%u/BVCI=%u Rejecting PDU type %s for unknown BVCI\n", nsei, ns_bvci, bssgp_pdu_str(pdu_type)); |