diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2018-12-26 18:13:38 +0100 |
---|---|---|
committer | Neels Hofmeyr <neels@hofmeyr.de> | 2019-08-21 17:48:55 +0200 |
commit | fb4e75de4121939e502efc3190eb02652e8e99c2 (patch) | |
tree | 84307a9256d3bea6c87cb7539cd0485375ab6407 /include/osmocom/gsm/gsup.h | |
parent | 0e48cd67e1cdc543f9d6c56142dbb720f901d5eb (diff) |
gsup: add OSMO_GSUP_RAT_TYPES_IEcccamp2019
Corresponds to the Supported RAT Types Indicator from 3GPP TS 29.002. See 8.1.2
MAP_UPDATE_LOCATION service.
This is useful to communicate the RAN / RAT type of the current subscriber
during Location Updating Request.
The use case we have in mind for VLR <-> HLR would require only a single RAT
type, but 29.002 specifies a list of supported RAT types. Hence implement this
as a list.
So far, have room for eight RAT types in the gsup_msg. That is an arbitrary
random choice without any rationale.
Change-Id: I93850710ab55a605bf61b95063a69682a2899bb1
Diffstat (limited to 'include/osmocom/gsm/gsup.h')
-rw-r--r-- | include/osmocom/gsm/gsup.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/osmocom/gsm/gsup.h b/include/osmocom/gsm/gsup.h index be856620..fded89bc 100644 --- a/include/osmocom/gsm/gsup.h +++ b/include/osmocom/gsm/gsup.h @@ -45,6 +45,7 @@ #include <osmocom/gsm/protocol/gsm_03_40.h> #include <osmocom/gsm/protocol/gsm_04_08_gprs.h> #include <osmocom/gsm/protocol/gsm_08_08.h> +#include <osmocom/gsm/gsm_utils.h> #include <osmocom/crypt/auth.h> #define OSMO_GSUP_PORT 4222 @@ -86,6 +87,7 @@ enum osmo_gsup_iei { OSMO_GSUP_AUTS_IE = 0x26, OSMO_GSUP_RES_IE = 0x27, OSMO_GSUP_CN_DOMAIN_IE = 0x28, + OSMO_GSUP_RAT_TYPES_IE = 0x29, OSMO_GSUP_SESSION_ID_IE = 0x30, OSMO_GSUP_SESSION_STATE_IE = 0x31, @@ -373,6 +375,9 @@ struct osmo_gsup_message { /*! Session Management cause as of 3GPP TS 24.008 10.5.6.6 / Table 10.5.157. */ enum gsm48_gsm_cause cause_sm; + + enum osmo_rat_type rat_types[8]; + size_t rat_types_len; }; int osmo_gsup_decode(const uint8_t *data, size_t data_len, |