2016-06-16 22:06:42 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <osmocom/core/utils.h>
|
|
|
|
|
|
|
|
/* Parameters to VLR_AUTH_E_MS_AUTH_RESP */
|
|
|
|
struct vlr_auth_resp_par {
|
|
|
|
bool is_r99;
|
|
|
|
bool is_utran;
|
|
|
|
const uint8_t *res;
|
|
|
|
unsigned int res_len;
|
|
|
|
const uint8_t *auts;
|
|
|
|
};
|
|
|
|
|
|
|
|
enum vlr_fsm_auth_event {
|
|
|
|
VLR_AUTH_E_START,
|
|
|
|
/* TS 23.018 OAS_VLR1(2): SendAuthInfo ACK from HLR */
|
|
|
|
VLR_AUTH_E_HLR_SAI_ACK,
|
|
|
|
/* TS 23.018 OAS_VLR1(2): SendAuthInfo NACK from HLR */
|
|
|
|
VLR_AUTH_E_HLR_SAI_NACK,
|
|
|
|
/* FIXME: merge with NACK? */
|
|
|
|
VLR_AUTH_E_HLR_SAI_ABORT,
|
|
|
|
/* Authentication Response from MS */
|
|
|
|
VLR_AUTH_E_MS_AUTH_RESP,
|
|
|
|
/* Authentication Failure from MS */
|
|
|
|
VLR_AUTH_E_MS_AUTH_FAIL,
|
|
|
|
/* Identity Response (IMSI) from MS */
|
|
|
|
VLR_AUTH_E_MS_ID_IMSI,
|
|
|
|
};
|
|
|
|
|
2020-04-20 17:54:05 +00:00
|
|
|
extern struct osmo_fsm vlr_auth_fsm;
|
2016-06-16 22:06:42 +00:00
|
|
|
|
|
|
|
struct osmo_fsm_inst *auth_fsm_start(struct vlr_subscr *vsub,
|
|
|
|
struct osmo_fsm_inst *parent,
|
|
|
|
uint32_t parent_term_event,
|
|
|
|
bool is_r99,
|
|
|
|
bool is_utran);
|
2019-03-14 10:02:36 +00:00
|
|
|
|
|
|
|
bool auth_try_reuse_tuple(struct vlr_subscr *vsub, uint8_t key_seq);
|