summaryrefslogtreecommitdiffstats
path: root/include/osmocom/gsm/gsm23003.h
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2019-02-10 22:28:27 +0100
committerNeels Hofmeyr <neels@hofmeyr.de>2019-03-08 05:25:07 +0100
commit3a5045302f51faf104e64783977f710d36e06e3f (patch)
tree70ec869e4843a8330df1133ee617b1a7d740bd21 /include/osmocom/gsm/gsm23003.h
parentd4b79c877291e58bf7fafcfd3c771c9e66fa3f5b (diff)
add gsm0808_cell_id_from_cgi(), gsm0808_cell_id_to_cgi()
CGI to Cell ID: for example, for Paging, osmo-msc has a CGI for a subscriber and needs to send out a Cell Identifier IE. Makes sense to add this conversion here. Cell ID to CGI: for a Layer 3 Complete, a subscriber sends the current cell in the form of a Cell Identifier, which we store as a CGI, if necessary enriched with the local PLMN. Add enum with bitmask values to identify parts of a CGI, for the return value of gsm0808_cell_id_to_cgi(). Can't use enum CELL_IDENT for that, because it doesn't have a value for just a PLMN (and is not a bitmask). Change-Id: Ib9af67b100c4583342a2103669732dab2e577b04
Diffstat (limited to 'include/osmocom/gsm/gsm23003.h')
-rw-r--r--include/osmocom/gsm/gsm23003.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/osmocom/gsm/gsm23003.h b/include/osmocom/gsm/gsm23003.h
index b34a677b..cf622ce0 100644
--- a/include/osmocom/gsm/gsm23003.h
+++ b/include/osmocom/gsm/gsm23003.h
@@ -30,6 +30,15 @@ struct osmo_cell_global_id {
uint16_t cell_identity;
};
+/*! Bitmask of items contained in a struct osmo_cell_global_id.
+ * See also gsm0808_cell_id_to_cgi().
+ */
+enum osmo_cgi_part {
+ OSMO_CGI_PART_PLMN = 1,
+ OSMO_CGI_PART_LAC = 2,
+ OSMO_CGI_PART_CI = 4,
+};
+
/* Actually defined in 3GPP TS 48.008 3.2.2.27 Cell Identifier List,
* but conceptually belongs with the above structures. */
struct osmo_lac_and_ci_id {