diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2017-03-15 00:07:43 +0100 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2017-03-16 05:51:11 +0100 |
commit | cab2fcd5b5a7276fc9a89e449e9d3ede11790711 (patch) | |
tree | 3ac8a5510a7db3bfcc13501ac2ad9d44b467fd1f /src/gsup_server.h | |
parent | ee392bb3b1fdfd45e8b4401622e0ee6cc66f9695 (diff) |
UMTS AKA: implement SQN increment according to SEQ and IND
Add ind_bitlen column to auc_3g to record each USIM's IND size according to
3GPP TS 33.102 -- default is 5 bits, as suggested by the spec.
Introduce auc_3g_ind to each connecting GSUP client to use as IND index for
generating auth tuples sent to this client.
With osmo_gsup_server_add_conn(), implement a scheme where clients receive
fixed auc_3g_ind indexes based on the order in which they connect; each new
connection takes the lowest unused auc_3g_ind, so in case one of the clients
restarts, it will most likely receive the same auc_3g_ind, and if one client
disconnects, no other clients' auc_3g_ind are affected.
Add gsup_server_test.c to test the auc_3g_ind index distribution scheme.
Depends: libosmocore I4eac5be0c0b2cede04464c4c3a0873102d952453 for llist_first
Related: OS#1969
Change-Id: If4501ed4ff8e923fa6fe8b80c44c5ad647a8ed60
Diffstat (limited to 'src/gsup_server.h')
-rw-r--r-- | src/gsup_server.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gsup_server.h b/src/gsup_server.h index 885fe52..74062d4 100644 --- a/src/gsup_server.h +++ b/src/gsup_server.h @@ -31,6 +31,8 @@ struct osmo_gsup_conn { struct ipa_server_conn *conn; //struct oap_state oap_state; struct tlv_parsed ccm; + + unsigned int auc_3g_ind; /*!< IND index used for UMTS AKA SQN */ }; |