diff options
Diffstat (limited to 'openbsc/src/osmo-bsc/osmo_bsc_ctrl.c')
-rw-r--r-- | openbsc/src/osmo-bsc/osmo_bsc_ctrl.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c b/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c index 58a281818..1508aa941 100644 --- a/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c +++ b/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c @@ -53,6 +53,7 @@ static int get_bts_loc(struct ctrl_cmd *cmd, void *data); static void generate_location_state_trap(struct gsm_bts *bts, struct bsc_msc_connection *msc_con) { struct ctrl_cmd *cmd; + const char *oper, *admin, *policy; cmd = ctrl_cmd_create(msc_con, CTRL_TYPE_TRAP); @@ -63,6 +64,12 @@ static void generate_location_state_trap(struct gsm_bts *bts, struct bsc_msc_con cmd->node = bts; get_bts_loc(cmd, NULL); + oper = osmo_bsc_rf_get_opstate_name(osmo_bsc_rf_get_opstate_by_bts(bts)); + admin = osmo_bsc_rf_get_adminstate_name(osmo_bsc_rf_get_adminstate_by_bts(bts)); + policy = osmo_bsc_rf_get_policy_name(osmo_bsc_rf_get_policy_by_bts(bts)); + + cmd->reply = talloc_asprintf_append(cmd->reply, ",%s,%s,%s", oper, admin, policy); + osmo_bsc_send_trap(cmd, msc_con); } |