diff options
author | Harald Welte <laforge@gnumonks.org> | 2016-04-20 13:13:19 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-04-29 13:10:37 +0200 |
commit | 121e9a4164e65dfb68b2bf09297a8537a2f659c5 (patch) | |
tree | 19d0f18c0f0a093c30d1ba01af8532657d510657 /openbsc/include | |
parent | 3ffce19cb4929c907460753d302e4720558cc6d2 (diff) |
Start to use struct osmo_auth_vector from gsm_auth_tuple
Rather than having a 'private' structure for kc, sres and rand, we
now finally (with 4 years delay) use osmo_auth_vector from libosmogsm,
which encapsulates authentication vectors that can be either GSM
triplets or UMTS quintuples or a combination of both.
gsm_auth_tuple becomes a wrapper around osmo_auth_vector, adding
use_count and key_seq to it.
key_seq is no longer initialized inside gprs_gsup_messages.c, as there
is no CKSN / key_seq inside the message anyway. If a usre of the code
needs key_seq, they need to manage it themselves.
Diffstat (limited to 'openbsc/include')
-rw-r--r-- | openbsc/include/openbsc/gprs_gsup_messages.h | 4 | ||||
-rw-r--r-- | openbsc/include/openbsc/gsm_data.h | 5 |
2 files changed, 4 insertions, 5 deletions
diff --git a/openbsc/include/openbsc/gprs_gsup_messages.h b/openbsc/include/openbsc/gprs_gsup_messages.h index 8cbc809f7..66a75a801 100644 --- a/openbsc/include/openbsc/gprs_gsup_messages.h +++ b/openbsc/include/openbsc/gprs_gsup_messages.h @@ -104,8 +104,8 @@ struct gprs_gsup_message { enum gprs_gsup_cancel_type cancel_type; int pdp_info_compl; int freeze_ptmsi; - struct gsm_auth_tuple auth_tuples[GPRS_GSUP_MAX_NUM_AUTH_INFO]; - size_t num_auth_tuples; + struct osmo_auth_vector auth_vectors[GPRS_GSUP_MAX_NUM_AUTH_INFO]; + size_t num_auth_vectors; struct gprs_gsup_pdp_info pdp_infos[GPRS_GSUP_MAX_NUM_PDP_INFO]; size_t num_pdp_infos; const uint8_t *msisdn_enc; diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index 6d7aba358..f229e7499 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -5,6 +5,7 @@ #include <osmocom/core/timer.h> #include <osmocom/core/select.h> +#include <osmocom/crypt/auth.h> #include <openbsc/rest_octets.h> @@ -47,9 +48,7 @@ struct gsm_auth_info { struct gsm_auth_tuple { int use_count; int key_seq; - uint8_t rand[16]; - uint8_t sres[4]; - uint8_t kc[8]; + struct osmo_auth_vector vec; }; #define GSM_KEY_SEQ_INVAL 7 /* GSM 04.08 - 10.5.1.2 */ |