Review at  https://gerrit.osmocom.org/4157

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
---
M include/osmocom/crypt/auth.h
M src/gsm/auth_core.c
M src/gsm/libosmogsm.map
3 files changed, 15 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/57/4157/1

diff --git a/include/osmocom/crypt/auth.h b/include/osmocom/crypt/auth.h
index 2f2a8d3..7064c99 100644
--- a/include/osmocom/crypt/auth.h
+++ b/include/osmocom/crypt/auth.h
@@ -7,6 +7,7 @@
 #include <stdint.h>
 
 #include <osmocom/core/linuxlist.h>
+#include <osmocom/core/utils.h>
 
 #define OSMO_A5_MAX_KEY_LEN_BYTES (128/8)
 
@@ -17,7 +18,12 @@
        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 4156695..738e860 100644
--- a/src/gsm/auth_core.c
+++ b/src/gsm/auth_core.c
@@ -221,4 +221,11 @@
        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 95b2ca9..2bf1683 100644
--- a/src/gsm/libosmogsm.map
+++ b/src/gsm/libosmogsm.map
@@ -338,6 +338,7 @@
 osmo_auth_load;
 osmo_auth_register;
 osmo_auth_supported;
+osmo_sub_auth_type_names;
 
 osmo_rsl2sitype;
 osmo_sitype2rsl;

-- 
To view, visit https://gerrit.osmocom.org/4157
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I652a929bcd11c694d86812fb03d0a1cbd985efda
Gerrit-PatchSet: 1
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <[email protected]>

Reply via email to