diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2020-07-08 17:18:22 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2020-07-09 13:37:15 +0200 |
commit | bcb226d6070cc70c21f98c025ef776e2a9b00c28 (patch) | |
tree | 5a82304d2ad849b0a5d9b6b2bda5c759f8cc9c1d /src/pdch.cpp | |
parent | 85faa762c3fd8395ad20d27c3bcece042c0005b0 (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.cpp | 19 |
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) { |