diff options
Diffstat (limited to 'src/osmo-bts-sysmo/oml.c')
-rw-r--r-- | src/osmo-bts-sysmo/oml.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/osmo-bts-sysmo/oml.c b/src/osmo-bts-sysmo/oml.c index c87acb66..4c63fd5b 100644 --- a/src/osmo-bts-sysmo/oml.c +++ b/src/osmo-bts-sysmo/oml.c @@ -342,9 +342,15 @@ int oml_mo_rf_lock_chg(struct gsm_abis_mo *mo, uint8_t mute_state[8], int success) { if (success) { - /* assume mute_state[i] == mute_state[k] */ + int i; + int is_locked = 1; + + for (i = 0; i < ARRAY_SIZE(mute_state); ++i) + if (!mute_state[i]) + is_locked = 0; + mo->nm_state.administrative = - mute_state[0] ? NM_STATE_LOCKED : NM_STATE_UNLOCKED; + is_locked ? NM_STATE_LOCKED : NM_STATE_UNLOCKED; mo->procedure_pending = 0; return oml_mo_statechg_ack(mo); } else { |