blob: 38c424f09ccac9c2dbe7c310439a39783f1f74af [file] [log] [blame]
Neels Hofmeyrc4628a32018-12-07 14:47:34 +01001#pragma once
2
3#include <osmocom/gsm/gsm_utils.h>
4#include <osmocom/gsm/gsup.h>
5#include <osmocom/msc/sccp_ran.h>
6#include <osmocom/msc/ran_msg.h>
7
8struct osmo_tdef;
9
10extern struct osmo_tdef msc_tdefs_geran[];
11extern struct osmo_tdef msc_tdefs_utran[];
12extern struct osmo_tdef msc_tdefs_sgs[];
13
14extern const struct value_string an_proto_names[];
15static inline const char *an_proto_name(enum osmo_gsup_access_network_protocol val)
16{ return get_value_string(an_proto_names, val); }
17
18struct ran_infra {
19 const enum osmo_rat_type type;
20 const enum osmo_gsup_access_network_protocol an_proto;
21 uint32_t ssn;
22 const int log_subsys;
23 struct osmo_tdef * const tdefs;
24 const struct sccp_ran_ops sccp_ran_ops;
25 const ran_dec_l2_t ran_dec_l2;
26 const ran_encode_t ran_encode;
27 struct sccp_ran_inst *sri;
28};
29
30extern struct ran_infra msc_ran_infra[];
31extern const int msc_ran_infra_len;