osmith has submitted this change. ( 
https://gerrit.osmocom.org/c/osmo-bts/+/34682?usp=email )

Change subject: ASCI: Ignore LAPD frames from MS, while the uplink is not active
......................................................................

ASCI: Ignore LAPD frames from MS, while the uplink is not active

Do not forward any message that is received on the uplink to LAPD while
the uplink is not active. If the MS did not recognize (fast enough) that
the uplink is free, it may continue to transmit LAPD messages. A
response by LAPD to these messages is not desired and not required. If
LAPD would respond, it would cause stopping transmission of UPLINK FREE
messages. No MS could access the uplink anymore.

Note: UPLINK FREE messages are repeated automatically until a different
      message is transmitted.

Related: OS#5781
Change-Id: I5075115123055b2997481f56ddf473430a1dc9e3
(cherry picked from commit f5c1cd3889bb52b1166066885e2d65b87692a37e)
---
M src/common/l1sap.c
1 file changed, 35 insertions(+), 3 deletions(-)

Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, but someone else must approve
  laforge: Looks good to me, but someone else must approve
  osmith: Looks good to me, approved




diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 9814f86..844fdad 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1810,9 +1810,20 @@
        if (lchan->ho.active == HANDOVER_WAIT_FRAME)
                handover_frame(lchan);

-       /* report first valid received frame to VGCS talker process */
-       if (rsl_chan_rt_is_asci(lchan->rsl_chan_rt) && 
lchan->asci.talker_active == VGCS_TALKER_WAIT_FRAME)
-               vgcs_talker_frame(lchan);
+       if (rsl_chan_rt_is_asci(lchan->rsl_chan_rt)) {
+               /* report first valid received frame to VGCS talker process */
+               if (lchan->asci.talker_active == VGCS_TALKER_WAIT_FRAME)
+                       vgcs_talker_frame(lchan);
+               /* Do not forward any message that is received on the uplink to 
LAPD while
+                * the uplink is not active. If the MS did not recognize (fast 
enough) that
+                * the uplink is free, it may continue to transmit LAPD 
messages. A
+                * response by LAPD to these messages is not desired and not 
required. If
+                * LAPD would respond, it would cause stopping transmission of 
UPLINK FREE
+                * messages. No MS could access the uplink anymore.
+                */
+               if (lchan->asci.talker_active != VGCS_TALKER_ACTIVE)
+                       return 0;
+       }

        if (L1SAP_IS_LINK_SACCH(link_id))
                le = &lchan->lapdm_ch.lapdm_acch;

--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34682?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bts
Gerrit-Branch: osmith/1.7.1
Gerrit-Change-Id: I5075115123055b2997481f56ddf473430a1dc9e3
Gerrit-Change-Number: 34682
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <[email protected]>
Gerrit-Reviewer: osmith <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>
Gerrit-CC: jolly <[email protected]>
Gerrit-MessageType: merged

Reply via email to