aboutsummaryrefslogtreecommitdiffstats
path: root/src/pdch.cpp
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2020-07-08 17:18:22 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2020-07-09 13:37:15 +0200
commitbcb226d6070cc70c21f98c025ef776e2a9b00c28 (patch)
tree5a82304d2ad849b0a5d9b6b2bda5c759f8cc9c1d /src/pdch.cpp
parent85faa762c3fd8395ad20d27c3bcece042c0005b0 (diff)
pdch.cpp: Avoid resetting (egprs_)ms_class to unknown if not found in MS RadioAccCap
If the information is not found in the message, 0 (unknown MS class) will be returned. If the MS already had some previous information on the MS class, let's not lose it by setting it back to 0. Take the opportunity to drop related log lines which are no needed, since set_(egprs_)ms_class() functions already log the value changes. Change-Id: Icd52209fd4395d78dc770e7869d1b1fe45a18ca0
Diffstat (limited to 'src/pdch.cpp')
-rw-r--r--src/pdch.cpp19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/pdch.cpp b/src/pdch.cpp
index 98d7678c..3436e5ba 100644
--- a/src/pdch.cpp
+++ b/src/pdch.cpp
@@ -588,20 +588,13 @@ void gprs_rlcmac_pdch::rcv_resource_request(Packet_Resource_Request_t *request,
}
if (request->Exist_MS_Radio_Access_capability2) {
uint8_t ms_class, egprs_ms_class;
- ms_class = Decoding::get_ms_class_by_capability(
- &request->MS_Radio_Access_capability2);
- ms->set_ms_class(ms_class);
- egprs_ms_class =
- Decoding::get_egprs_ms_class_by_capability(
- &request->MS_Radio_Access_capability2);
- ms->set_egprs_ms_class(egprs_ms_class);
+ ms_class = Decoding::get_ms_class_by_capability(&request->MS_Radio_Access_capability2);
+ egprs_ms_class = Decoding::get_egprs_ms_class_by_capability(&request->MS_Radio_Access_capability2);
+ if (ms_class)
+ ms->set_ms_class(ms_class);
+ if (egprs_ms_class)
+ ms->set_egprs_ms_class(egprs_ms_class);
}
- if (!ms->ms_class())
- LOGP(DRLCMAC, LOGL_NOTICE, "MS does not give us a class.\n");
- if (ms->egprs_ms_class())
- LOGP(DRLCMAC, LOGL_INFO,
- "MS supports EGPRS multislot class %d.\n",
- ms->egprs_ms_class());
ul_tbf = tbf_alloc_ul(bts_data(), ms, trx_no(), tlli);
if (!ul_tbf) {