From 122aab3e2bcc3a7c3ba24ba62f212fd97349c56b Mon Sep 17 00:00:00 2001 From: Andreas Eversberg Date: Thu, 13 Jun 2013 09:35:05 +0200 Subject: Reject BTS attributes, if T3105 is set to 0ms --- src/common/oml.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/common/oml.c b/src/common/oml.c index d7481d57..31d80e53 100644 --- a/src/common/oml.c +++ b/src/common/oml.c @@ -510,9 +510,15 @@ static int oml_rx_set_bts_attr(struct gsm_bts *bts, struct msgb *msg) } /* 9.4.10 BTS Air Timer */ - if (TLVP_PRESENT(&tp, NM_ATT_BTS_AIR_TIMER) - && *TLVP_VAL(&tp, NM_ATT_BTS_AIR_TIMER) > 0) - btsb->t3105_ms = *TLVP_VAL(&tp, NM_ATT_BTS_AIR_TIMER) * 10; + if (TLVP_PRESENT(&tp, NM_ATT_BTS_AIR_TIMER)) { + uint8_t t3105 = *TLVP_VAL(&tp, NM_ATT_BTS_AIR_TIMER); + if (t3105 == 0) { + LOGP(DOML, LOGL_NOTICE, + "T3105 must have a value != 0.\n"); + return oml_fom_ack_nack(msg, NM_NACK_PARAM_RANGE); + } + btsb->t3105_ms = t3105 * 10; + } /* 9.4.37 NY1 */ if (TLVP_PRESENT(&tp, NM_ATT_NY1)) -- cgit v1.2.3