Go to the documentation of this file.
12 #define OSMO_A5_MAX_KEY_LEN_BYTES (128/8)
13 #define OSMO_MILENAGE_IND_BITLEN_MAX 28
83 const uint8_t *_rand);
88 const uint8_t *auts,
const uint8_t *rand_auts,
89 const uint8_t *_rand);
97 const uint8_t *auts,
const uint8_t *rand_auts,
98 const uint8_t *_rand);
105 void osmo_c4(uint8_t *ck,
const uint8_t *kc);
109 void osmo_auth_c3(uint8_t kc[],
const uint8_t ck[],
const uint8_t ik[]);
struct osmo_sub_auth_data::@0::@1 umts
int osmo_auth_supported(enum osmo_auth_algo algo)
int osmo_auth_register(struct osmo_auth_impl *impl)
@ OSMO_AUTH_ALG_COMP128v1
Definition: auth.h:31
uint8_t kc[8]
Definition: auth.h:68
uint32_t auth_types
Definition: auth.h:70
uint8_t sres[4]
Definition: auth.h:69
osmo_auth_algo
Definition: auth.h:29
int osmo_auth_load(const char *path)
uint8_t k[16]
Definition: auth.h:46
int opc_is_op
Definition: auth.h:49
void osmo_c4(uint8_t *ck, const uint8_t *kc)
enum osmo_auth_algo algo
Definition: auth.h:76
int osmo_auth_gen_vec_auts(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *auts, const uint8_t *rand_auts, const uint8_t *_rand)
uint8_t res_len
Definition: auth.h:67
const char * name
Definition: auth.h:77
struct osmo_sub_auth_data::@0::@2 gsm
#define OSMO_A5_MAX_KEY_LEN_BYTES
Definition: auth.h:12
@ OSMO_AUTH_TYPE_GSM
Definition: auth.h:18
uint8_t ki[OSMO_A5_MAX_KEY_LEN_BYTES]
Definition: auth.h:55
@ OSMO_AUTH_ALG_XOR
Definition: auth.h:34
uint8_t autn[16]
Definition: auth.h:63
uint64_t sqn_ms
Definition: auth.h:52
uint8_t res[16]
Definition: auth.h:66
const struct value_string osmo_sub_auth_type_names[]
void osmo_auth_c3(uint8_t kc[], const uint8_t ck[], const uint8_t ik[])
uint8_t ik[16]
Definition: auth.h:65
@ OSMO_AUTH_ALG_COMP128v2
Definition: auth.h:32
uint8_t rand[16]
Definition: auth.h:62
int osmo_auth_gen_vec(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *_rand)
uint8_t opc[16]
Definition: auth.h:45
uint8_t amf[2]
Definition: auth.h:47
Definition: linuxlist.h:54
int(* gen_vec_auts)(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *auts, const uint8_t *rand_auts, const uint8_t *_rand)
Definition: auth.h:86
@ OSMO_AUTH_TYPE_NONE
Definition: auth.h:17
@ _OSMO_AUTH_ALG_NUM
Definition: auth.h:36
enum osmo_sub_auth_type type
Definition: auth.h:41
int(* gen_vec)(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, const uint8_t *_rand)
Definition: auth.h:81
unsigned int ind
Definition: auth.h:51
unsigned int ind_bitlen
Definition: auth.h:50
osmo_sub_auth_type
Definition: auth.h:16
@ OSMO_AUTH_ALG_MILENAGE
Definition: auth.h:35
@ OSMO_AUTH_ALG_NONE
Definition: auth.h:30
uint64_t sqn
Definition: auth.h:48
uint8_t ck[16]
Definition: auth.h:64
struct llist_head list
Definition: auth.h:75
unsigned int priority
Definition: auth.h:78
@ OSMO_AUTH_ALG_COMP128v3
Definition: auth.h:33
enum osmo_auth_algo algo
Definition: auth.h:42
@ OSMO_AUTH_TYPE_UMTS
Definition: auth.h:19
const char * osmo_auth_alg_name(enum osmo_auth_algo alg)
union osmo_sub_auth_data::@0 u