From 7814a832980caa1206a3f217ef79f1a19831305a Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Wed, 26 Dec 2018 00:40:18 +0100 Subject: use osmo_rat_type from libosmocore Replace locally defined enum ran_type with libosmocore's new enum osmo_rat_type, and value_string ran_type_names with osmo_rat_type_names. The string representations change, which has cosmetic effects on the test suite expectations. Depends: I659687aef7a4d67ca372a39fef31dee07aed7631 (libosmocore) Change-Id: I2c78c265dc99df581e1b00e563d6912c7ffdb36b --- src/libmsc/a_iface.c | 2 +- src/libmsc/a_iface_bssap.c | 4 ++-- src/libmsc/gsm_04_08.c | 18 +++++++++--------- src/libmsc/gsm_subscriber.c | 4 ++-- src/libmsc/iucs.c | 10 +++++----- src/libmsc/iucs_ranap.c | 2 +- src/libmsc/msc_ifaces.c | 15 ++++----------- src/libmsc/msc_mgcp.c | 8 ++++---- src/libmsc/msc_vty.c | 4 ++-- src/libmsc/ran_conn.c | 10 +++++----- 10 files changed, 35 insertions(+), 42 deletions(-) (limited to 'src') diff --git a/src/libmsc/a_iface.c b/src/libmsc/a_iface.c index a96f247d0..ee938aa9f 100644 --- a/src/libmsc/a_iface.c +++ b/src/libmsc/a_iface.c @@ -623,7 +623,7 @@ void a_clear_all(struct osmo_sccp_user *scu, const struct osmo_sccp_addr *bsc_ad llist_for_each_entry_safe(conn, conn_temp, &network->ran_conns, entry) { /* Clear only A connections and connections that actually * belong to the specified BSC */ - if (conn->via_ran == RAN_GERAN_A && memcmp(bsc_addr, &conn->a.bsc_addr, sizeof(conn->a.bsc_addr)) == 0) { + if (conn->via_ran == OSMO_RAT_GERAN_A && memcmp(bsc_addr, &conn->a.bsc_addr, sizeof(conn->a.bsc_addr)) == 0) { uint32_t conn_id = conn->a.conn_id; LOGPCONN(conn, LOGL_NOTICE, "Dropping orphaned RAN connection\n"); /* This call will/may talloc_free(conn), so we must save conn_id above */ diff --git a/src/libmsc/a_iface_bssap.c b/src/libmsc/a_iface_bssap.c index d84a2346b..491f8d07c 100644 --- a/src/libmsc/a_iface_bssap.c +++ b/src/libmsc/a_iface_bssap.c @@ -53,7 +53,7 @@ static struct ran_conn *ran_conn_allocate_a(const struct a_conn_info *a_conn_inf LOGP(DMSC, LOGL_DEBUG, "Allocating A-Interface RAN conn: lac %i, conn_id %i\n", lac, conn_id); - conn = ran_conn_alloc(network, RAN_GERAN_A, lac); + conn = ran_conn_alloc(network, OSMO_RAT_GERAN_A, lac); if (!conn) return NULL; @@ -83,7 +83,7 @@ static struct ran_conn *ran_conn_lookup_a(const struct gsm_network *network, int /* log_subscribers(network); */ llist_for_each_entry(conn, &network->ran_conns, entry) { - if (conn->via_ran == RAN_GERAN_A && conn->a.conn_id == conn_id) { + if (conn->via_ran == OSMO_RAT_GERAN_A && conn->a.conn_id == conn_id) { LOGPCONN(conn, LOGL_DEBUG, "Found A subscriber for conn_id %i\n", conn_id); return conn; } diff --git a/src/libmsc/gsm_04_08.c b/src/libmsc/gsm_04_08.c index 81bda76ea..7ff868140 100644 --- a/src/libmsc/gsm_04_08.c +++ b/src/libmsc/gsm_04_08.c @@ -403,7 +403,7 @@ int mm_rx_loc_upd_req(struct ran_conn *conn, struct msgb *msg) new_lai.lac = conn->lac; DEBUGP(DMM, "LU/new-LAC: %u/%u\n", old_lai.lac, new_lai.lac); - is_utran = (conn->via_ran == RAN_UTRAN_IU); + is_utran = (conn->via_ran == OSMO_RAT_UTRAN_IU); lu_fsm = vlr_loc_update(conn->fi, RAN_CONN_E_ACCEPTED, RAN_CONN_E_CN_CLOSE, NULL, net->vlr, conn, vlr_lu_type, tmsi, imsi, @@ -785,7 +785,7 @@ int gsm48_rx_mm_serv_req(struct ran_conn *conn, struct msgb *msg) osmo_signal_dispatch(SS_SUBSCR, S_SUBSCR_IDENTITY, mi_p); - is_utran = (conn->via_ran == RAN_UTRAN_IU); + is_utran = (conn->via_ran == OSMO_RAT_UTRAN_IU); vlr_proc_acc_req(conn->fi, RAN_CONN_E_ACCEPTED, RAN_CONN_E_CN_CLOSE, NULL, net->vlr, conn, @@ -1005,7 +1005,7 @@ static int gsm48_rx_mm_auth_resp(struct ran_conn *conn, struct msgb *msg) osmo_hexdump_nospc(res, res_len)); return vlr_subscr_rx_auth_resp(conn->vsub, classmark_is_r99(&conn->vsub->classmark), - conn->via_ran == RAN_UTRAN_IU, + conn->via_ran == OSMO_RAT_UTRAN_IU, res, res_len); } @@ -1185,7 +1185,7 @@ static int gsm48_rx_rr_pag_resp(struct ran_conn *conn, struct msgb *msg) ran_conn_update_id(conn, COMPLETE_LAYER3_PAGING_RESP, mi_string); - is_utran = (conn->via_ran == RAN_UTRAN_IU); + is_utran = (conn->via_ran == OSMO_RAT_UTRAN_IU); vlr_proc_acc_req(conn->fi, RAN_CONN_E_ACCEPTED, RAN_CONN_E_CN_CLOSE, NULL, net->vlr, conn, @@ -1465,8 +1465,8 @@ int gsm0408_dispatch(struct ran_conn *conn, struct msgb *msg) "%s: Illegal situation: RAN type mismatch:" " attached via %s, received message via %s\n", vlr_subscr_name(conn->vsub), - ran_type_name(conn->vsub->cs.attached_via_ran), - ran_type_name(conn->via_ran)); + osmo_rat_type_name(conn->vsub->cs.attached_via_ran), + osmo_rat_type_name(conn->via_ran)); return -EACCES; } @@ -1700,16 +1700,16 @@ int msc_vlr_set_ciph_mode(void *msc_conn_ref, } switch (conn->via_ran) { - case RAN_GERAN_A: + case OSMO_RAT_GERAN_A: return ran_conn_geran_set_cipher_mode(conn, umts_aka, retrieve_imeisv); - case RAN_UTRAN_IU: + case OSMO_RAT_UTRAN_IU: #ifdef BUILD_IU DEBUGP(DMM, "-> SECURITY MODE CONTROL %s\n", vlr_subscr_name(conn->vsub)); return ranap_iu_tx_sec_mode_cmd(conn->iu.ue_ctx, &tuple->vec, 0, 1); #else - LOGP(DMM, LOGL_ERROR, "Cannot send Security Mode Control over RAN_UTRAN_IU," + LOGP(DMM, LOGL_ERROR, "Cannot send Security Mode Control over OSMO_RAT_UTRAN_IU," " built without Iu support\n"); return -ENOTSUP; #endif diff --git a/src/libmsc/gsm_subscriber.c b/src/libmsc/gsm_subscriber.c index 0e76efc11..9ca5e2bef 100644 --- a/src/libmsc/gsm_subscriber.c +++ b/src/libmsc/gsm_subscriber.c @@ -115,9 +115,9 @@ static int msc_paging_request(struct vlr_subscr *vsub) * BSCs/RNCs are responsible and send them a paging request via open * SCCP connections (if any). */ switch (vsub->cs.attached_via_ran) { - case RAN_GERAN_A: + case OSMO_RAT_GERAN_A: return a_iface_tx_paging(vsub->imsi, vsub->tmsi, vsub->cgi.lai.lac); - case RAN_UTRAN_IU: + case OSMO_RAT_UTRAN_IU: return ranap_iu_page_cs(vsub->imsi, vsub->tmsi == GSM_RESERVED_TMSI? NULL : &vsub->tmsi, diff --git a/src/libmsc/iucs.c b/src/libmsc/iucs.c index a96b4c2fc..974ddb3f7 100644 --- a/src/libmsc/iucs.c +++ b/src/libmsc/iucs.c @@ -56,7 +56,7 @@ static struct ran_conn *ran_conn_allocate_iu(struct gsm_network *network, DEBUGP(DIUCS, "Allocating IuCS RAN conn: lac %d, conn_id %" PRIx32 "\n", lac, ue->conn_id); - conn = ran_conn_alloc(network, RAN_UTRAN_IU, lac); + conn = ran_conn_alloc(network, OSMO_RAT_UTRAN_IU, lac); if (!conn) return NULL; @@ -82,7 +82,7 @@ static inline void log_subscribers(struct gsm_network *network) llist_for_each_entry(conn, &network->ran_conns, entry) { DEBUGP(DIUCS, "%3d: %s", i, vlr_subscr_name(conn->vsub)); switch (conn->via_ran) { - case RAN_UTRAN_IU: + case OSMO_RAT_UTRAN_IU: DEBUGPC(DIUCS, " Iu"); if (conn->iu.ue_ctx) { DEBUGPC(DIUCS, " conn_id %d", @@ -90,11 +90,11 @@ static inline void log_subscribers(struct gsm_network *network) ); } break; - case RAN_GERAN_A: + case OSMO_RAT_GERAN_A: DEBUGPC(DIUCS, " A"); /* TODO log A-interface connection details */ break; - case RAN_UNKNOWN: + case OSMO_RAT_UNKNOWN: DEBUGPC(DIUCS, " ?"); break; default: @@ -120,7 +120,7 @@ struct ran_conn *ran_conn_lookup_iu( log_subscribers(network); llist_for_each_entry(conn, &network->ran_conns, entry) { - if (conn->via_ran != RAN_UTRAN_IU) + if (conn->via_ran != OSMO_RAT_UTRAN_IU) continue; if (!same_ue_conn(conn->iu.ue_ctx, ue)) continue; diff --git a/src/libmsc/iucs_ranap.c b/src/libmsc/iucs_ranap.c index f1221c0dd..1e4207aec 100644 --- a/src/libmsc/iucs_ranap.c +++ b/src/libmsc/iucs_ranap.c @@ -91,7 +91,7 @@ static int iucs_rx_rab_assign(struct ran_conn *conn, RANAP_RAB_SetupOrModifiedIt int iucs_rx_sec_mode_compl(struct ran_conn *conn, RANAP_SecurityModeCompleteIEs_t *ies) { - OSMO_ASSERT(conn->via_ran == RAN_UTRAN_IU); + OSMO_ASSERT(conn->via_ran == OSMO_RAT_UTRAN_IU); /* TODO evalute ies */ diff --git a/src/libmsc/msc_ifaces.c b/src/libmsc/msc_ifaces.c index 8ae34fcdd..3074d07a6 100644 --- a/src/libmsc/msc_ifaces.c +++ b/src/libmsc/msc_ifaces.c @@ -39,13 +39,6 @@ #include #endif /* BUILD_IU */ -const struct value_string ran_type_names[] = { - OSMO_VALUE_STRING(RAN_UNKNOWN), - OSMO_VALUE_STRING(RAN_GERAN_A), - OSMO_VALUE_STRING(RAN_UTRAN_IU), - { 0, NULL } -}; - static int msc_tx(struct ran_conn *conn, struct msgb *msg) { if (!msg) @@ -57,13 +50,13 @@ static int msc_tx(struct ran_conn *conn, struct msgb *msg) DEBUGP(DMSC, "msc_tx %u bytes to %s via %s\n", msg->len, vlr_subscr_name(conn->vsub), - ran_type_name(conn->via_ran)); + osmo_rat_type_name(conn->via_ran)); switch (conn->via_ran) { - case RAN_GERAN_A: + case OSMO_RAT_GERAN_A: msg->dst = conn; return a_iface_tx_dtap(msg); - case RAN_UTRAN_IU: + case OSMO_RAT_UTRAN_IU: msg->dst = conn->iu.ue_ctx; return ranap_iu_tx(msg, 0); @@ -131,7 +124,7 @@ int msc_tx_common_id(struct ran_conn *conn) return -EINVAL; /* Common ID is only sent over IuCS */ - if (conn->via_ran != RAN_UTRAN_IU) { + if (conn->via_ran != OSMO_RAT_UTRAN_IU) { LOGP(DMM, LOGL_INFO, "%s: Asked to transmit Common ID, but skipping" " because this is not on UTRAN\n", diff --git a/src/libmsc/msc_mgcp.c b/src/libmsc/msc_mgcp.c index 5b4ee26fe..703bb0b7d 100644 --- a/src/libmsc/msc_mgcp.c +++ b/src/libmsc/msc_mgcp.c @@ -316,7 +316,7 @@ static void fsm_crcx_ran_cb(struct osmo_fsm_inst *fi, uint32_t event, void *data * trick the hNodeB into doing the IuUP negotiation with itself. * This is a hack we need because osmo-mgw does not support IuUP yet, see OS#2459. */ #ifdef BUILD_IU - if (conn->via_ran == RAN_UTRAN_IU) + if (conn->via_ran == OSMO_RAT_UTRAN_IU) mgcp_msg.conn_mode = MGCP_CONN_LOOPBACK; #endif @@ -506,7 +506,7 @@ static void fsm_crcx_compl(struct osmo_fsm_inst *fi, uint32_t event, void *data) } /* Forward assignment request to A/RANAP */ - if (conn->via_ran == RAN_UTRAN_IU) { + if (conn->via_ran == OSMO_RAT_UTRAN_IU) { #ifdef BUILD_IU /* Assign a voice channel via RANAP on 3G */ if (iu_rab_act_cs(trans)) @@ -515,7 +515,7 @@ static void fsm_crcx_compl(struct osmo_fsm_inst *fi, uint32_t event, void *data) LOGPFSML(fi, LOGL_ERROR, "Cannot send Iu RAB Assignment: built without Iu support\n"); goto error; #endif - } else if (conn->via_ran == RAN_GERAN_A) { + } else if (conn->via_ran == OSMO_RAT_GERAN_A) { /* Assign a voice channel via A on 2G */ if (a_iface_tx_assignment(trans)) goto error; @@ -1005,7 +1005,7 @@ int msc_mgcp_call_assignment(struct gsm_trans *trans) #ifdef BUILD_IU /* FIXME: HACK. where to scope the RAB Id? At the conn / subscriber / ranap_ue_conn_ctx? */ static uint8_t next_iu_rab_id = 1; - if (conn->via_ran == RAN_UTRAN_IU) + if (conn->via_ran == OSMO_RAT_UTRAN_IU) conn->iu.rab_id = next_iu_rab_id++; #endif diff --git a/src/libmsc/msc_vty.c b/src/libmsc/msc_vty.c index 8c119001a..fbc2056c9 100644 --- a/src/libmsc/msc_vty.c +++ b/src/libmsc/msc_vty.c @@ -544,7 +544,7 @@ static void vty_dump_one_conn(struct vty *vty, const struct ran_conn *conn) vty_out(vty, "%08x %22s %3s %5u %3u %08x %c /%1u %27s %s", conn->a.conn_id, conn->vsub ? vlr_subscr_name(conn->vsub) : "-", - conn->via_ran == RAN_UTRAN_IU ? "Iu" : "A", + conn->via_ran == OSMO_RAT_UTRAN_IU ? "Iu" : "A", conn->lac, conn->use_count, conn->use_tokens, @@ -633,7 +633,7 @@ static void subscr_dump_full_vty(struct vty *vty, struct vlr_subscr *vsub) vty_out(vty, " LAC: %d/0x%x%s", vsub->cgi.lai.lac, vsub->cgi.lai.lac, VTY_NEWLINE); vty_out(vty, " RAN: %s%s", - ran_type_name(vsub->cs.attached_via_ran), VTY_NEWLINE); + osmo_rat_type_name(vsub->cs.attached_via_ran), VTY_NEWLINE); vty_out(vty, " IMSI: %s%s", vsub->imsi, VTY_NEWLINE); if (vsub->tmsi != GSM_RESERVED_TMSI) vty_out(vty, " TMSI: %08X%s", vsub->tmsi, diff --git a/src/libmsc/ran_conn.c b/src/libmsc/ran_conn.c index 9b63f16a0..d6349ebd5 100644 --- a/src/libmsc/ran_conn.c +++ b/src/libmsc/ran_conn.c @@ -363,7 +363,7 @@ static void ran_conn_fsm_releasing_onenter(struct osmo_fsm_inst *fi, uint32_t pr trans_conn_closed(conn); switch (conn->via_ran) { - case RAN_GERAN_A: + case OSMO_RAT_GERAN_A: a_iface_tx_clear_cmd(conn); if (conn->a.waiting_for_clear_complete) { LOGPFSML(fi, LOGL_ERROR, @@ -372,7 +372,7 @@ static void ran_conn_fsm_releasing_onenter(struct osmo_fsm_inst *fi, uint32_t pr } conn->a.waiting_for_clear_complete = true; break; - case RAN_UTRAN_IU: + case OSMO_RAT_UTRAN_IU: ranap_iu_tx_release(conn->iu.ue_ctx, NULL); if (conn->iu.waiting_for_release_complete) { LOGPFSML(fi, LOGL_ERROR, @@ -496,10 +496,10 @@ char *ran_conn_get_conn_id(struct ran_conn *conn) char *id; switch (conn->via_ran) { - case RAN_GERAN_A: + case OSMO_RAT_GERAN_A: id = talloc_asprintf(conn, "GERAN_A-%08x", conn->a.conn_id); break; - case RAN_UTRAN_IU: + case OSMO_RAT_UTRAN_IU: id = talloc_asprintf(conn, "UTRAN_IU-%08x", iu_get_conn_id(conn->iu.ue_ctx)); break; default: @@ -627,7 +627,7 @@ void ran_conn_init(void) * conn. As long as the FSM is waiting for responses from the subscriber, it will itself hold a use count * on the conn. */ struct ran_conn *ran_conn_alloc(struct gsm_network *network, - enum ran_type via_ran, uint16_t lac) + enum osmo_rat_type via_ran, uint16_t lac) { struct ran_conn *conn; struct osmo_fsm_inst *fi; -- cgit v1.2.3