aboutsummaryrefslogtreecommitdiffstats
path: root/src/gsm
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2023-08-23 17:40:48 +0200
committerpespin <pespin@sysmocom.de>2023-08-23 17:13:34 +0000
commit06da40bdb33c59923fa3be4570c4e5d84932bba9 (patch)
tree7558ab943e74e8d4b6b61fdf0be5f9e1940136c9 /src/gsm
parentcd23806264dfd160f3b0a8452ab3b73594856b18 (diff)
Revert "lapdm: Append RSL_IE_OSMO_ABS_FRAME_NUMBER to RSLms msgs towards upper layers"
This reverts commit d981794113efef3cc1195cde82043c5c66937b11. osmo-bts is forwarding the msgbs as they come from lapdm to the RSL on the wire, which means we end up sending the osmocom-specific IEs on the wire, something which was not envisioned when adding this IE. Change-Id: I0ab0d5b545b4862e72eb1842edd07ca2e4955311 Related: OS#6142
Diffstat (limited to 'src/gsm')
-rw-r--r--src/gsm/lapdm.c15
-rw-r--r--src/gsm/rsl.c27
2 files changed, 1 insertions, 41 deletions
diff --git a/src/gsm/lapdm.c b/src/gsm/lapdm.c
index c2598249..e96e2182 100644
--- a/src/gsm/lapdm.c
+++ b/src/gsm/lapdm.c
@@ -503,7 +503,7 @@ static int send_rslms_rll_l3(uint8_t msg_type, struct lapdm_msg_ctx *mctx,
int transparent = rsl_is_transparent(msg_type);
/* Add the RSL + RLL header */
- rsl_rll_push_l3_with_fn(msg, msg_type, mctx->chan_nr, mctx->link_id, transparent, mctx->fn);
+ rsl_rll_push_l3(msg, msg_type, mctx->chan_nr, mctx->link_id, transparent);
/* send off the RSLms message to L3 */
return rslms_sendmsg(msg, mctx->dl->entity);
@@ -513,14 +513,10 @@ static int send_rslms_rll_l3(uint8_t msg_type, struct lapdm_msg_ctx *mctx,
static int send_rslms_rll_l3_ui(struct lapdm_msg_ctx *mctx, struct msgb *msg)
{
uint8_t l3_len = msg->tail - (uint8_t *)msgb_l3(msg);
- uint32_t fn_be;
/* Add the RSL + RLL header */
msgb_tv16_push(msg, RSL_IE_L3_INFO, l3_len);
- osmo_store32be(mctx->fn, &fn_be);
- msgb_tlv_push(msg, RSL_IE_OSMO_ABS_FRAME_NUMBER, 4, (uint8_t *)&fn_be);
-
/* Add two non-standard IEs carrying MS power and TA values for B4 (SACCH) */
if (mctx->lapdm_fmt == LAPDm_FMT_B4) {
msgb_tv_push(msg, RSL_IE_MS_POWER, mctx->tx_power_ind);
@@ -537,12 +533,8 @@ static int send_rll_simple(uint8_t msg_type, struct lapdm_msg_ctx *mctx)
{
struct msgb *msg;
int transparent = rsl_is_transparent(msg_type);
- uint32_t fn_be;
msg = rsl_rll_simple(msg_type, mctx->chan_nr, mctx->link_id, transparent);
- /* Add FN to the end to keep backward compat: */
- osmo_store32be(mctx->fn, &fn_be);
- msgb_tlv_put(msg, RSL_IE_OSMO_ABS_FRAME_NUMBER, 4, (uint8_t *)&fn_be);
/* send off the RSLms message to L3 */
return rslms_sendmsg(msg, mctx->dl->entity);
@@ -551,15 +543,10 @@ static int send_rll_simple(uint8_t msg_type, struct lapdm_msg_ctx *mctx)
static int rsl_rll_error(uint8_t cause, struct lapdm_msg_ctx *mctx)
{
struct msgb *msg;
- uint32_t fn_be;
LOGDL(&mctx->dl->dl, LOGL_NOTICE, "sending MDL-ERROR-IND %d\n", cause);
msg = rsl_rll_simple(RSL_MT_ERROR_IND, mctx->chan_nr, mctx->link_id, 0);
msgb_tlv_put(msg, RSL_IE_RLM_CAUSE, 1, &cause);
- /* Add FN to the end to keep backward compat: */
- osmo_store32be(mctx->fn, &fn_be);
- msgb_tlv_put(msg, RSL_IE_OSMO_ABS_FRAME_NUMBER, 4, (uint8_t *)&fn_be);
-
return rslms_sendmsg(msg, mctx->dl->entity);
}
diff --git a/src/gsm/rsl.c b/src/gsm/rsl.c
index e0708c13..53eb9834 100644
--- a/src/gsm/rsl.c
+++ b/src/gsm/rsl.c
@@ -561,33 +561,6 @@ void rsl_rll_push_l3(struct msgb *msg, uint8_t msg_type, uint8_t chan_nr,
rsl_rll_push_hdr(msg, msg_type, chan_nr, link_id, transparent);
}
-/*! Wrap msgb in L3 Info IE and push a RSL RLL header
- * \param[in] msg Message Buffer to which L3 Header shall be appended
- * \param[in] msg_type RSL Message Type
- * \param[in] chan_hr RSL Channel Number
- * \param[in] link_id Link Identififer
- * \param[in] transparent Transparent to BTS (1) or not (0)
- * \param[in] fn Frame Number
- */
-void rsl_rll_push_l3_with_fn(struct msgb *msg, uint8_t msg_type, uint8_t chan_nr,
- uint8_t link_id, int transparent, uint32_t fn)
-{
- uint8_t l3_len = msg->tail - (uint8_t *)msgb_l3(msg);
- uint32_t fn_be;
-
- /* construct a RSLms RLL message (DATA INDICATION, UNIT DATA
- * INDICATION) and send it off via RSLms */
-
- /* Push the L3 IE tag and length */
- msgb_tv16_push(msg, RSL_IE_L3_INFO, l3_len);
-
- osmo_store32be(fn, &fn_be);
- msgb_tlv_push(msg, RSL_IE_OSMO_ABS_FRAME_NUMBER, 4, (uint8_t *)&fn_be);
-
- /* Then push the RSL header */
- rsl_rll_push_hdr(msg, msg_type, chan_nr, link_id, transparent);
-}
-
/*! Create msgb with RSL RLL header
* \param[in] msg_type RSL Message Type
* \param[in] chan_nr RSL Channel Number