From 03ab9a650068c758c1102f074606a747827583a8 Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Fri, 3 Feb 2017 05:00:24 +0100 Subject: osmo_auth*: fix ordering of function args milenage_gen_vec() has parameter ordering of (..., auts, rand_auts, rand). osmo_auth_gen_vec_auts() has (..., rand_auts, auts, rand), but actually feeds args in the same order, so that its rand_auts becomes auts, and its auts becomes rand_auts. Interestingly enough, API user osmo-gen-vec.c also adheres to this misordering and in turn passes auts for osmo_auth_gen_vec_auts()'s rand_auts and vice versa, so that it matches milenage_gen_vec(). So both the implementation (milenage_*) and the API user use the same ordering, just osmo_auth_gen_vec_auts() and osmo_auth_impl{ .gen_vec_auts() } in-between have the argument names swapped. Any current user of this API would need to adhere to this swapping or will not get successful AUTS resolution to a SQN. So the least impact fix is to rename the args without any actual functional change. So swap the names rand_auts and auts for osmo_auth_gen_vec_auts() and osmo_auth_impl{ .gen_vec_auts() }. (Also adjust API doc ordering) Change-Id: I0dcbd49759fc32d3b8974102dbd1d6703364ebf4 --- include/osmocom/crypt/auth.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/osmocom/crypt/auth.h b/include/osmocom/crypt/auth.h index 37b8a8ad..7c6072b2 100644 --- a/include/osmocom/crypt/auth.h +++ b/include/osmocom/crypt/auth.h @@ -74,7 +74,7 @@ struct osmo_auth_impl { /* \brief callback for generationg auth vectors + re-sync */ int (*gen_vec_auts)(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, - const uint8_t *rand_auts, const uint8_t *auts, + const uint8_t *auts, const uint8_t *rand_auts, const uint8_t *_rand); }; @@ -83,7 +83,7 @@ int osmo_auth_gen_vec(struct osmo_auth_vector *vec, int osmo_auth_gen_vec_auts(struct osmo_auth_vector *vec, struct osmo_sub_auth_data *aud, - const uint8_t *rand_auts, const uint8_t *auts, + const uint8_t *auts, const uint8_t *rand_auts, const uint8_t *_rand); int osmo_auth_register(struct osmo_auth_impl *impl); -- cgit v1.2.3