aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <vyanitskiy@sysmocom.de>2021-03-28 04:22:16 +0200
committerVadim Yanitskiy <vyanitskiy@sysmocom.de>2021-03-28 04:22:16 +0200
commitf2d3cddef982c0c8592b9b4e5ef4089a1910ea3c (patch)
tree202a7d83d3d63082a1d9e2899bf7e3ba5de3cf78
parent764449ec2ea6d6b45239278eae90613df8c93f59 (diff)
rsl_rx_chan_rqd(): drop channel requests with Access Delay > 63fixeria/rach
-rw-r--r--src/osmo-bsc/abis_rsl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/osmo-bsc/abis_rsl.c b/src/osmo-bsc/abis_rsl.c
index 67e7d27bc..590dcf390 100644
--- a/src/osmo-bsc/abis_rsl.c
+++ b/src/osmo-bsc/abis_rsl.c
@@ -1526,6 +1526,10 @@ static int rsl_rx_chan_rqd(struct msgb *msg)
return -EINVAL;
}
rqd->ta = rqd_hdr->data[sizeof(struct gsm48_req_ref)+2];
+ if (rqd->ta > 63) { /* TODO: make it configurable */
+ talloc_free(rqd);
+ return -EINVAL;
+ }
/* Determine channel request cause code */
rqd->reason = get_reason_by_chreq(rqd->ref.ra, bts->network->neci);