diff options
author | Harald Welte <laforge@gnumonks.org> | 2010-07-03 11:09:06 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2010-07-03 11:09:06 +0200 |
commit | 4b6ac1edb95f40022bb1cf918a61412a4358b648 (patch) | |
tree | 2985c659738fbc76b1ad67c9f0f08ebcfa28c251 /openbsc/include/openbsc/gsm_04_08_gprs.h | |
parent | 3e2e159707c48e8eb52549989eee849417264c97 (diff) |
[SGSN] Initial work on GMM authentication and ciphering
Diffstat (limited to 'openbsc/include/openbsc/gsm_04_08_gprs.h')
-rw-r--r-- | openbsc/include/openbsc/gsm_04_08_gprs.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/gsm_04_08_gprs.h b/openbsc/include/openbsc/gsm_04_08_gprs.h index baa513b2f..8de636293 100644 --- a/openbsc/include/openbsc/gsm_04_08_gprs.h +++ b/openbsc/include/openbsc/gsm_04_08_gprs.h @@ -63,6 +63,7 @@ #define GPRS_UPD_T_PERIODIC 3 enum gsm48_gprs_ie_mm { + GSM48_IE_GMM_CIPH_CKSN = 0x08, /* 10.5.1.2 */ GSM48_IE_GMM_TIMER_READY = 0x17, /* 10.5.7.3 */ GSM48_IE_GMM_ALLOC_PTMSI = 0x18, /* 10.5.1.4 */ GSM48_IE_GMM_PTMSI_SIG = 0x19, /* 10.5.5.8 */ @@ -120,6 +121,22 @@ struct gsm48_attach_ack { uint8_t data[0]; } __attribute__((packed)); +/* Chapter 9.4.9 / Table 9.4.9 */ +struct gsm48_auth_ciph_req { + uint8_t ciph_alg:4, /* 10.5.5.3 */ + imeisv_req:4; /* 10.5.5.10 */ + uint8_t force_stby:4, /* 10.5.5.7 */ + ac_ref_nr:4; /* 10.5.5.19 */ + uint8_t data[0]; +} __attribute__((packed)); +/* optional: TV RAND, TV CKSN */ + +struct gsm48_auth_ciph_resp { + uint8_t ac_ref_nr:4, + spare:4; + uint8_t data[0]; +} __attribute__((packed)); + /* Chapter 9.5.1 / Table 9.5.1 */ struct gsm48_act_pdp_ctx_req { uint8_t req_nsapi; |