From 26e30b1309517183db0ae56620195707f748ced4 Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Sat, 7 Oct 2017 04:41:22 +0200 Subject: [PATCH] auth: add value_strings for osmo_sub_auth_type, comment on osmo_auth_alg_name() Add osmo_sub_auth_type_names[] and osmo_sub_auth_type_name(). Also add a hint to enum osmo_auth_algo's API doc that osmo_auth_alg_name() already exists (it is defined further below). Change-Id: I652a929bcd11c694d86812fb03d0a1cbd985efda --- include/osmocom/crypt/auth.h | 8 +++++++- src/gsm/auth_core.c | 7 +++++++ src/gsm/libosmogsm.map | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/include/osmocom/crypt/auth.h b/include/osmocom/crypt/auth.h index 2f2a8d33e..7064c9991 100644 --- a/include/osmocom/crypt/auth.h +++ b/include/osmocom/crypt/auth.h @@ -7,6 +7,7 @@ #include #include +#include #define OSMO_A5_MAX_KEY_LEN_BYTES (128/8) @@ -17,7 +18,12 @@ enum osmo_sub_auth_type { OSMO_AUTH_TYPE_UMTS = 0x02, }; -/*! Authentication Algorithm */ +extern const struct value_string osmo_sub_auth_type_names[]; +static inline const char *osmo_sub_auth_type_name(enum osmo_sub_auth_type val) +{ return get_value_string(osmo_sub_auth_type_names, val); } + +/*! Authentication Algorithm. + * See also osmo_auth_alg_name() and osmo_auth_alg_parse(). */ enum osmo_auth_algo { OSMO_AUTH_ALG_NONE, OSMO_AUTH_ALG_COMP128v1, diff --git a/src/gsm/auth_core.c b/src/gsm/auth_core.c index 415669599..738e86090 100644 --- a/src/gsm/auth_core.c +++ b/src/gsm/auth_core.c @@ -221,4 +221,11 @@ enum osmo_auth_algo osmo_auth_alg_parse(const char *name) return get_string_value(auth_alg_vals, name); } +const struct value_string osmo_sub_auth_type_names[] = { + { OSMO_AUTH_TYPE_NONE, "None" }, + { OSMO_AUTH_TYPE_GSM, "GSM" }, + { OSMO_AUTH_TYPE_UMTS, "UMTS" }, + { 0, NULL } +}; + /*! @} */ diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map index 5598859a9..a72db524b 100644 --- a/src/gsm/libosmogsm.map +++ b/src/gsm/libosmogsm.map @@ -339,6 +339,7 @@ osmo_auth_3g_from_2g; osmo_auth_load; osmo_auth_register; osmo_auth_supported; +osmo_sub_auth_type_names; osmo_rsl2sitype; osmo_sitype2rsl;