diff options
-rw-r--r-- | include/osmocom/crypt/gprs_cipher.h | 3 | ||||
-rw-r--r-- | src/gsm/gprs_cipher_core.c | 9 | ||||
-rw-r--r-- | src/gsm/libosmogsm.map | 1 |
3 files changed, 13 insertions, 0 deletions
diff --git a/include/osmocom/crypt/gprs_cipher.h b/include/osmocom/crypt/gprs_cipher.h index d6edefaf..9d98f88a 100644 --- a/include/osmocom/crypt/gprs_cipher.h +++ b/include/osmocom/crypt/gprs_cipher.h @@ -1,6 +1,7 @@ #pragma once #include <osmocom/core/linuxlist.h> +#include <osmocom/core/utils.h> #define GSM0464_CIPH_MAX_BLOCK 1523 @@ -18,6 +19,8 @@ enum gprs_cipher_direction { GPRS_CIPH_SGSN2MS, }; +extern const struct value_string gprs_cipher_names[]; + /* An implementation of a GPRS cipher */ struct gprs_cipher_impl { struct llist_head list; diff --git a/src/gsm/gprs_cipher_core.c b/src/gsm/gprs_cipher_core.c index e4fac04b..8f020b38 100644 --- a/src/gsm/gprs_cipher_core.c +++ b/src/gsm/gprs_cipher_core.c @@ -33,6 +33,15 @@ static LLIST_HEAD(gprs_ciphers); static struct gprs_cipher_impl *selected_ciphers[_GPRS_ALGO_NUM]; +const struct value_string gprs_cipher_names[] = { + { GPRS_ALGO_GEA0, "GEA0" }, + { GPRS_ALGO_GEA1, "GEA1" }, + { GPRS_ALGO_GEA2, "GEA2" }, + { GPRS_ALGO_GEA3, "GEA3" }, + { GPRS_ALGO_GEA4, "GEA4" }, + { 0, NULL }, +}; + /* register a cipher with the core */ int gprs_cipher_register(struct gprs_cipher_impl *ciph) { diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map index ea2101c9..ebeabcdc 100644 --- a/src/gsm/libosmogsm.map +++ b/src/gsm/libosmogsm.map @@ -39,6 +39,7 @@ gprs_cipher_gen_input_ui; gprs_cipher_load; gprs_cipher_register; gprs_cipher_run; +gprs_cipher_names; gprs_cipher_supported; gprs_cipher_key_length; gprs_tlli_type; |