pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/42505?usp=email )
Change subject: cosmetic: xua_snm: Add spec reference regarding no SSNM tx
......................................................................
cosmetic: xua_snm: Add spec reference regarding no SSNM tx
Change-Id: I69912d5b7032c12e06648e5f5a700384182bb1f9
---
M src/xua_snm.c
1 file changed, 4 insertions(+), 4 deletions(-)
Approvals:
Jenkins Builder: Verified
fixeria: Looks good to me, approved
diff --git a/src/xua_snm.c b/src/xua_snm.c
index 916f6c3..a2e4fde 100644
--- a/src/xua_snm.c
+++ b/src/xua_snm.c
@@ -236,7 +236,7 @@
/* inform remote ASPs via DUNA/DAVA */
llist_for_each_entry(asp, &s7i->asp_list, list) {
- /* SSNM is only permitted for ASPs in ACTIVE state */
+ /* SSNM is only permitted for ASPs in ACTIVE state (RFC4666 4.3.1) */
if (!osmo_ss7_asp_active(asp))
continue;
@@ -278,7 +278,7 @@
/* inform remote SUA ASPs via DUNA/DAVA */
llist_for_each_entry(asp, &s7i->asp_list, list) {
- /* SSNM is only permitted for ASPs in ACTIVE state */
+ /* SSNM is only permitted for ASPs in ACTIVE state (RFC4666 4.3.1) */
if (!osmo_ss7_asp_active(asp))
continue;
@@ -317,7 +317,7 @@
/* inform remote ASPs via DUPU */
llist_for_each_entry(asp, &s7i->asp_list, list) {
- /* SSNM is only permitted for ASPs in ACTIVE state */
+ /* SSNM is only permitted for ASPs in ACTIVE state (RFC4666 4.3.1) */
if (!osmo_ss7_asp_active(asp))
continue;
@@ -386,7 +386,7 @@
* procedures of the relevant MTP3 standard."
* ie. inform remote ASPs via SCON: */
llist_for_each_entry(asp, &s7i->asp_list, list) {
- /* SSNM is only permitted for ASPs in ACTIVE state */
+ /* SSNM is only permitted for ASPs in ACTIVE state (RFC4666 4.3.1) */
if (!osmo_ss7_asp_active(asp))
continue;
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/42505?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: libosmo-sigtran
Gerrit-Branch: master
Gerrit-Change-Id: I69912d5b7032c12e06648e5f5a700384182bb1f9
Gerrit-Change-Number: 42505
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42510?usp=email )
Change subject: tx_power: get_pa_drive_level_mdBm(): assert on out-of-range ARFCN
......................................................................
tx_power: get_pa_drive_level_mdBm(): assert on out-of-range ARFCN
The function previously returned `INT_MIN` as an error sentinel when
the ARFCN exceeded the calibration table size (1024 entries, covering
all valid GSM ARFCNs 0..1023). None of the callers checked for this
value, so it would silently propagate through power calculations and
eventually be passed to `bts_model_change_power()`.
An out-of-range ARFCN indicates a serious misconfiguration;
replace the range check and `return INT_MIN` with an `OSMO_ASSERT`.
Change-Id: I70c54652e0b07d399363276bc60946aa8b195725
---
M src/common/tx_power.c
1 file changed, 1 insertion(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/10/42510/1
diff --git a/src/common/tx_power.c b/src/common/tx_power.c
index 83cdb62..1e026dd 100644
--- a/src/common/tx_power.c
+++ b/src/common/tx_power.c
@@ -20,7 +20,6 @@
*/
#include <stdint.h>
-#include <limits.h>
#include <errno.h>
#include <osmocom/core/utils.h>
@@ -34,8 +33,7 @@
static int get_pa_drive_level_mdBm(const struct power_amp *pa,
int desired_p_out_mdBm, unsigned int arfcn)
{
- if (arfcn >= ARRAY_SIZE(pa->calib.delta_mdB))
- return INT_MIN;
+ OSMO_ASSERT(arfcn < ARRAY_SIZE(pa->calib.delta_mdB));
/* FIXME: temperature compensation */
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42510?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I70c54652e0b07d399363276bc60946aa8b195725
Gerrit-Change-Number: 42510
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42512?usp=email )
Change subject: osmo-bts-trx: clean up log messages in response handlers
......................................................................
osmo-bts-trx: clean up log messages in response handlers
Drop the redundant "transceiver" prefix from LOGPPHI() calls -
the macro already prepends the PHY instance name.
Change-Id: Iec722198f161621dd00ce3baabb732e1a1d91a37
---
M src/osmo-bts-trx/trx_if.c
1 file changed, 6 insertions(+), 7 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/12/42512/1
diff --git a/src/osmo-bts-trx/trx_if.c b/src/osmo-bts-trx/trx_if.c
index 56910fd..6445e9d 100644
--- a/src/osmo-bts-trx/trx_if.c
+++ b/src/osmo-bts-trx/trx_if.c
@@ -511,13 +511,13 @@
unsigned int tn, ts_type;
if (rsp->status)
- LOGPPHI(pinst, DTRX, LOGL_ERROR, "transceiver SETSLOT failed with status %d\n",
+ LOGPPHI(pinst, DTRX, LOGL_ERROR, "SETSLOT failed with status %d\n",
rsp->status);
/* Since message was already validated against CMD we sent, we know format
* of params is: "<TN> <TS_TYPE>" */
if (sscanf(rsp->params, "%u %u", &tn, &ts_type) < 2) {
- LOGPPHI(pinst, DTRX, LOGL_ERROR, "transceiver SETSLOT unable to parse params\n");
+ LOGPPHI(pinst, DTRX, LOGL_ERROR, "Failed to parse SETSLOT response\n");
return -EINVAL;
}
@@ -575,10 +575,9 @@
int nominal_power;
if (rsp->status)
- LOGPPHI(pinst, DTRX, LOGL_ERROR, "transceiver NOMTXPOWER failed "
- "with status %d. If your transceiver doesn't support this "
- "command, then please set the nominal transmit power manually "
- "through VTY cmd 'nominal-tx-power'.\n",
+ LOGPPHI(pinst, DTRX, LOGL_ERROR, "NOMTXPOWER failed with status %d. "
+ "If your transceiver doesn't support this command, then please "
+ "set the nominal transmit power manually through VTY cmd 'nominal-tx-power'.\n",
rsp->status);
if (cb) {
if (sscanf(rsp->params, "%d", &nominal_power) != 1) {
@@ -597,7 +596,7 @@
int power_att;
if (rsp->status)
- LOGPPHI(pinst, DTRX, LOGL_ERROR, "transceiver SETPOWER failed with status %d\n",
+ LOGPPHI(pinst, DTRX, LOGL_ERROR, "SETPOWER failed with status %d\n",
rsp->status);
if (cb) {
if (sscanf(rsp->params, "%d", &power_att) != 1) {
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42512?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Iec722198f161621dd00ce3baabb732e1a1d91a37
Gerrit-Change-Number: 42512
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42513?usp=email )
Change subject: l1sap: check_for_ciph_cmd(): add missing msgb length check
......................................................................
l1sap: check_for_ciph_cmd(): add missing msgb length check
The function accesses msg->data[0..4] without first verifying that the
message is at least 5 bytes long, which would cause a buffer over-read
on a malformed (too short) LAPDm frame.
Change-Id: I47690f1a6357e42913bfa8100e36c05cb4f0607a
---
M src/common/l1sap.c
1 file changed, 3 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/13/42513/1
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 3d0263f..e150398 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -215,6 +215,9 @@
return 0;
}
+ if (msgb_length(msg) < 5)
+ return 0;
+
/* First byte (Address Field) of LAPDm header) */
if (msg->data[0] != 0x03)
return 0;
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42513?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I47690f1a6357e42913bfa8100e36c05cb4f0607a
Gerrit-Change-Number: 42513
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42515?usp=email )
Change subject: measurement: is_meas_complete(): fix fn_mod variable type
......................................................................
measurement: is_meas_complete(): fix fn_mod variable type
`fn_mod` was declared as 'unsigned int' but initialized to -1, which
yields `UINT_MAX` via implicit conversion. Use 'int' instead to make
the sentinel value unambiguous and match the `%d` format used in
the debug log.
Change-Id: I6b0bce9bc9fca1d6effbb2da2319132cdff4e9c7
---
M src/common/measurement.c
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/15/42515/1
diff --git a/src/common/measurement.c b/src/common/measurement.c
index 19bff71..afbdc84 100644
--- a/src/common/measurement.c
+++ b/src/common/measurement.c
@@ -252,7 +252,7 @@
* unit-tests) */
int is_meas_complete(struct gsm_lchan *lchan, uint32_t fn)
{
- unsigned int fn_mod = -1;
+ int fn_mod = -1;
const uint8_t *tbl;
int rc = 0;
enum gsm_phys_chan_config pchan = ts_pchan(lchan->ts);
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42515?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I6b0bce9bc9fca1d6effbb2da2319132cdff4e9c7
Gerrit-Change-Number: 42515
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42509?usp=email )
Change subject: phy_link: phy_{link,instance}_name(): fix shared static buffer
......................................................................
phy_link: phy_{link,instance}_name(): fix shared static buffer
Both functions were writing into the same static buffer, so any caller
holding a pointer returned by one and then invoking the other would
silently end up with a stale/overwritten string. Move name_buf into
each function as a local static, so the two buffers are independent.
Change-Id: I79e9d7f5b1e5c275911cf88854211f1ce8a28669
---
M src/common/phy_link.c
1 file changed, 2 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/09/42509/1
diff --git a/src/common/phy_link.c b/src/common/phy_link.c
index ee5ef8a..8f1e389 100644
--- a/src/common/phy_link.c
+++ b/src/common/phy_link.c
@@ -149,9 +149,9 @@
talloc_free(plink);
}
-static char name_buf[32];
const char *phy_link_name(const struct phy_link *plink)
{
+ static char name_buf[32];
snprintf(name_buf, sizeof(name_buf), "phy%u", plink->num);
return name_buf;
}
@@ -182,6 +182,7 @@
const char *phy_instance_name(const struct phy_instance *pinst)
{
+ static char name_buf[32];
snprintf(name_buf, sizeof(name_buf), "phy%u.%u", pinst->phy_link->num,
pinst->num);
return name_buf;
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42509?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I79e9d7f5b1e5c275911cf88854211f1ce8a28669
Gerrit-Change-Number: 42509
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42508?usp=email )
Change subject: scheduler: trx_sched_is_sacch_fn(): fix returning non-bool
......................................................................
scheduler: trx_sched_is_sacch_fn(): fix returning non-bool
The function is declared `bool` but returns `-EINVAL` on an error path.
`-EINVAL` is `-22`, which in C implicitly converts to `bool true`.
Returning `false` makes more sense when we don't know the MF layout.
Change-Id: Ib2394687815aed4990c3880446176e4c97440667
---
M src/common/scheduler_mframe.c
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/08/42508/1
diff --git a/src/common/scheduler_mframe.c b/src/common/scheduler_mframe.c
index 60b6353..647ffc0 100644
--- a/src/common/scheduler_mframe.c
+++ b/src/common/scheduler_mframe.c
@@ -1009,7 +1009,7 @@
i = find_sched_mframe_idx(ts_pchan(ts), ts->nr);
if (i < 0)
- return -EINVAL;
+ return false;
sched = &trx_sched_multiframes[i];
frame = &sched->frames[fn % sched->period];
if (uplink)
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42508?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ib2394687815aed4990c3880446176e4c97440667
Gerrit-Change-Number: 42508
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>