aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2018-12-26 00:40:18 +0100
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2019-01-04 17:26:14 +0000
commit7814a832980caa1206a3f217ef79f1a19831305a (patch)
tree7e2e1f71e3ba6966822027df5064e125d28c5024 /src
parent3a3ed9b704bf01792628d116056b565a67a2eaa6 (diff)
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
Diffstat (limited to 'src')
-rw-r--r--src/libmsc/a_iface.c2
-rw-r--r--src/libmsc/a_iface_bssap.c4
-rw-r--r--src/libmsc/gsm_04_08.c18
-rw-r--r--src/libmsc/gsm_subscriber.c4
-rw-r--r--src/libmsc/iucs.c10
-rw-r--r--src/libmsc/iucs_ranap.c2
-rw-r--r--src/libmsc/msc_ifaces.c15
-rw-r--r--src/libmsc/msc_mgcp.c8
-rw-r--r--src/libmsc/msc_vty.c4
-rw-r--r--src/libmsc/ran_conn.c10
10 files changed, 35 insertions, 42 deletions
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 <osmocom/msc/iu_dummy.h>
#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;