aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auc/Makefile.am4
-rw-r--r--tests/auc/auc_test.c36
-rw-r--r--tests/auc/auc_test.err34
-rw-r--r--tests/auc/auc_ts_55_205_test_sets.err133
-rw-r--r--tests/auc/gen_ts_55_205_test_sets/func_template.c4
5 files changed, 118 insertions, 93 deletions
diff --git a/tests/auc/Makefile.am b/tests/auc/Makefile.am
index b3c20f2..88532bf 100644
--- a/tests/auc/Makefile.am
+++ b/tests/auc/Makefile.am
@@ -53,3 +53,7 @@ auc_ts_55_205_test_sets_LDADD = \
auc_ts_55_205_test_sets.c: $(top_srcdir)/tests/auc/gen_ts_55_205_test_sets/*
$(top_srcdir)/tests/auc/gen_ts_55_205_test_sets/pdftxt_2_c.py > $@
+.PHONY: update_exp
+update_exp:
+ $(builddir)/auc_test >"$(srcdir)/auc_test.ok" 2>"$(srcdir)/auc_test.err"
+ $(builddir)/auc_ts_55_205_test_sets >"$(srcdir)/auc_ts_55_205_test_sets.ok" 2>"$(srcdir)/auc_ts_55_205_test_sets.err"
diff --git a/tests/auc/auc_test.c b/tests/auc/auc_test.c
index 16c87f7..e507c29 100644
--- a/tests/auc/auc_test.c
+++ b/tests/auc/auc_test.c
@@ -194,6 +194,7 @@ static void test_gen_vectors_2g_plus_3g(void)
aud3g = (struct osmo_sub_auth_data){
.type = OSMO_AUTH_TYPE_UMTS,
.algo = OSMO_AUTH_ALG_MILENAGE,
+ .u.umts.sqn = 32,
};
osmo_hexparse("EB215756028D60E3275E613320AEC880",
@@ -203,13 +204,14 @@ static void test_gen_vectors_2g_plus_3g(void)
next_rand("39fa2f4e3d523d8619a73b4f65c3e14d", true);
vec = (struct osmo_auth_vector){ {0} };
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 0, "%"PRIu64);
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 32, "%"PRIu64);
rc = auc_compute_vectors(&vec, 1, &aud2g, &aud3g, NULL, NULL);
VERBOSE_ASSERT(rc, == 1, "%d");
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 33, "%"PRIu64);
VEC_IS(&vec,
" rand: 39fa2f4e3d523d8619a73b4f65c3e14d\n"
- " autn: 8704f5ba55f30000d2ee44b22c8ea919\n"
+ " autn: 8704f5ba55d30000541dde77ea5b1d8c\n"
" ck: f64735036e5871319c679f4742a75ea1\n"
" ik: 27497388b6cb044648f396aa155b95ef\n"
" res: e229c19e791f2e410000000000000000\n"
@@ -219,19 +221,17 @@ static void test_gen_vectors_2g_plus_3g(void)
" auth_types: 03000000\n"
);
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 1, "%"PRIu64);
-
/* even though vec is not zero-initialized, it should produce the same
* result with the same sequence nr */
- aud3g.u.umts.sqn = 0;
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 0, "%"PRIu64);
+ aud3g.u.umts.sqn = 32;
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 32, "%"PRIu64);
rc = auc_compute_vectors(&vec, 1, &aud2g, &aud3g, NULL, NULL);
VERBOSE_ASSERT(rc, == 1, "%d");
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 1, "%"PRIu64);
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 33, "%"PRIu64);
VEC_IS(&vec,
" rand: 39fa2f4e3d523d8619a73b4f65c3e14d\n"
- " autn: 8704f5ba55f30000d2ee44b22c8ea919\n"
+ " autn: 8704f5ba55d30000541dde77ea5b1d8c\n"
" ck: f64735036e5871319c679f4742a75ea1\n"
" ik: 27497388b6cb044648f396aa155b95ef\n"
" res: e229c19e791f2e410000000000000000\n"
@@ -301,6 +301,7 @@ static void test_gen_vectors_3g_only(void)
aud3g = (struct osmo_sub_auth_data){
.type = OSMO_AUTH_TYPE_UMTS,
.algo = OSMO_AUTH_ALG_MILENAGE,
+ .u.umts.sqn = 32,
};
osmo_hexparse("EB215756028D60E3275E613320AEC880",
@@ -310,13 +311,14 @@ static void test_gen_vectors_3g_only(void)
next_rand("39fa2f4e3d523d8619a73b4f65c3e14d", true);
vec = (struct osmo_auth_vector){ {0} };
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 0, "%"PRIu64);
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 32, "%"PRIu64);
rc = auc_compute_vectors(&vec, 1, &aud2g, &aud3g, NULL, NULL);
VERBOSE_ASSERT(rc, == 1, "%d");
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 33, "%"PRIu64);
VEC_IS(&vec,
" rand: 39fa2f4e3d523d8619a73b4f65c3e14d\n"
- " autn: 8704f5ba55f30000d2ee44b22c8ea919\n"
+ " autn: 8704f5ba55d30000541dde77ea5b1d8c\n"
" ck: f64735036e5871319c679f4742a75ea1\n"
" ik: 27497388b6cb044648f396aa155b95ef\n"
" res: e229c19e791f2e410000000000000000\n"
@@ -336,19 +338,17 @@ static void test_gen_vectors_3g_only(void)
* hence expecting kc: 059a4f668f6fbe39
*/
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 1, "%"PRIu64);
-
/* even though vec is not zero-initialized, it should produce the same
* result with the same sequence nr */
- aud3g.u.umts.sqn = 0;
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 0, "%"PRIu64);
+ aud3g.u.umts.sqn = 32;
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 32, "%"PRIu64);
rc = auc_compute_vectors(&vec, 1, &aud2g, &aud3g, NULL, NULL);
VERBOSE_ASSERT(rc, == 1, "%d");
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 1, "%"PRIu64);
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 33, "%"PRIu64);
VEC_IS(&vec,
" rand: 39fa2f4e3d523d8619a73b4f65c3e14d\n"
- " autn: 8704f5ba55f30000d2ee44b22c8ea919\n"
+ " autn: 8704f5ba55d30000541dde77ea5b1d8c\n"
" ck: f64735036e5871319c679f4742a75ea1\n"
" ik: 27497388b6cb044648f396aa155b95ef\n"
" res: e229c19e791f2e410000000000000000\n"
@@ -361,8 +361,8 @@ static void test_gen_vectors_3g_only(void)
fprintf(stderr, "- test AUTS resync\n");
vec = (struct osmo_auth_vector){};
- aud3g.u.umts.sqn = 0;
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 0, "%"PRIu64);
+ aud3g.u.umts.sqn = 32;
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 32, "%"PRIu64);
/* The AUTN sent was 8704f5ba55f30000d2ee44b22c8ea919
* with the first 6 bytes being SQN ^ AK.
diff --git a/tests/auc/auc_test.err b/tests/auc/auc_test.err
index aff96c9..51f176c 100644
--- a/tests/auc/auc_test.err
+++ b/tests/auc/auc_test.err
@@ -22,14 +22,14 @@ vector matches expectations
===== test_gen_vectors_2g_plus_3g
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G + separate 2G
DAUC 3G: k = eb215756028d60e3275e613320aec880
DAUC 3G: opc = fb2a3d1b360f599abab99db8669f8308
DAUC 2G: ki = eb215756028d60e3275e613320aec880
DAUC vector [0]: rand = 39fa2f4e3d523d8619a73b4f65c3e14d
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 8704f5ba55f30000d2ee44b22c8ea919
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 8704f5ba55d30000541dde77ea5b1d8c
DAUC vector [0]: ck = f64735036e5871319c679f4742a75ea1
DAUC vector [0]: ik = 27497388b6cb044648f396aa155b95ef
DAUC vector [0]: res = e229c19e791f2e410000000000000000
@@ -39,16 +39,16 @@ DAUC vector [0]: kc = 241a5b16aeb8e400
DAUC vector [0]: sres = 429d5b27
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
-aud3g.u.umts.sqn == 1
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G + separate 2G
DAUC 3G: k = eb215756028d60e3275e613320aec880
DAUC 3G: opc = fb2a3d1b360f599abab99db8669f8308
DAUC 2G: ki = eb215756028d60e3275e613320aec880
DAUC vector [0]: rand = 39fa2f4e3d523d8619a73b4f65c3e14d
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 8704f5ba55f30000d2ee44b22c8ea919
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 8704f5ba55d30000541dde77ea5b1d8c
DAUC vector [0]: ck = f64735036e5871319c679f4742a75ea1
DAUC vector [0]: ik = 27497388b6cb044648f396aa155b95ef
DAUC vector [0]: res = e229c19e791f2e410000000000000000
@@ -58,19 +58,19 @@ DAUC vector [0]: kc = 241a5b16aeb8e400
DAUC vector [0]: sres = 429d5b27
DAUC vector [0]: auth_types = 0x3
rc == 1
-aud3g.u.umts.sqn == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_gen_vectors_2g_plus_3g: SUCCESS
===== test_gen_vectors_3g_only
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = eb215756028d60e3275e613320aec880
DAUC 3G: opc = fb2a3d1b360f599abab99db8669f8308
DAUC vector [0]: rand = 39fa2f4e3d523d8619a73b4f65c3e14d
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 8704f5ba55f30000d2ee44b22c8ea919
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 8704f5ba55d30000541dde77ea5b1d8c
DAUC vector [0]: ck = f64735036e5871319c679f4742a75ea1
DAUC vector [0]: ik = 27497388b6cb044648f396aa155b95ef
DAUC vector [0]: res = e229c19e791f2e410000000000000000
@@ -79,15 +79,15 @@ DAUC vector [0]: kc = 059a4f668f6fbe39
DAUC vector [0]: sres = 9b36efdf
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
-aud3g.u.umts.sqn == 1
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = eb215756028d60e3275e613320aec880
DAUC 3G: opc = fb2a3d1b360f599abab99db8669f8308
DAUC vector [0]: rand = 39fa2f4e3d523d8619a73b4f65c3e14d
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 8704f5ba55f30000d2ee44b22c8ea919
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 8704f5ba55d30000541dde77ea5b1d8c
DAUC vector [0]: ck = f64735036e5871319c679f4742a75ea1
DAUC vector [0]: ik = 27497388b6cb044648f396aa155b95ef
DAUC vector [0]: res = e229c19e791f2e410000000000000000
@@ -96,10 +96,10 @@ DAUC vector [0]: kc = 059a4f668f6fbe39
DAUC vector [0]: sres = 9b36efdf
DAUC vector [0]: auth_types = 0x3
rc == 1
-aud3g.u.umts.sqn == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
- test AUTS resync
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys), with AUTS resync
DAUC 3G: k = eb215756028d60e3275e613320aec880
DAUC 3G: opc = fb2a3d1b360f599abab99db8669f8308
diff --git a/tests/auc/auc_ts_55_205_test_sets.err b/tests/auc/auc_ts_55_205_test_sets.err
index 8bedf46..9a9aaf5 100644
--- a/tests/auc/auc_ts_55_205_test_sets.err
+++ b/tests/auc/auc_ts_55_205_test_sets.err
@@ -1,12 +1,12 @@
===== test_set_1
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 465b5ce8b199b49faa5f0a2ee238a6bc
DAUC 3G: opc = cd63cb71954a9f4e48a5994e37a02baf
DAUC vector [0]: rand = 23553cbe9637a89d218ae64dae47bf35
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = aa689c64837000000eed35e2ae9e21c0
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = aa689c64835000002bb2bf2f1faba139
DAUC vector [0]: ck = b40ba9a3c58b2a05bbf0d987b21bf8cb
DAUC vector [0]: ik = f769bcd751044604127672711c6d3441
DAUC vector [0]: res = a54211d5e3ba50bf0000000000000000
@@ -15,18 +15,19 @@ DAUC vector [0]: kc = eae4be823af9a08b
DAUC vector [0]: sres = 46f8416a
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_1: SUCCESS
===== test_set_2
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = fec86ba6eb707ed08905757b1bb44b8f
DAUC 3G: opc = 1006020f0a478bf6b699f15c062e42b3
DAUC vector [0]: rand = 9f7c8d021accf4db213ccff0c7f71a6a
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 33484dc2136b00009abcd7740cfa799c
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 33484dc2134b000091ec125f4840ed64
DAUC vector [0]: ck = 5dbdbb2954e8f3cde665b046179a5098
DAUC vector [0]: ik = 59a92d3b476a0443487055cf88b2307b
DAUC vector [0]: res = 8011c48c0c214ed20000000000000000
@@ -35,18 +36,19 @@ DAUC vector [0]: kc = aa01739b8caa976d
DAUC vector [0]: sres = 8c308a5e
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_2: SUCCESS
===== test_set_3
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 9e5944aea94b81165c82fbf9f32db751
DAUC 3G: opc = a64a507ae1a2a98bb88eb4210135dc87
DAUC vector [0]: rand = ce83dbc54ac0274a157c17f80d017bd6
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = f0b9c08ad02e00001b5ca3e1240212be
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = f0b9c08ad00e00005da4ccbbdfa29310
DAUC vector [0]: ck = e203edb3971574f5a94b0d61b816345d
DAUC vector [0]: ik = 0c4524adeac041c4dd830d20854fc46b
DAUC vector [0]: res = f365cd683cd92e960000000000000000
@@ -55,18 +57,19 @@ DAUC vector [0]: kc = 9a8ec95f408cc507
DAUC vector [0]: sres = cfbce3fe
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_3: SUCCESS
===== test_set_4
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 4ab1deb05ca6ceb051fc98e77d026a84
DAUC 3G: opc = dcf07cbd51855290b92a07a9891e523e
DAUC vector [0]: rand = 74b0cd6031a1c8339b2b6ce2b8c4a186
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 31e11a6091180000f55f5c8adb793014
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 31e11a60913800006a7003718d5d82e5
DAUC vector [0]: ck = 7657766b373d1c2138f307e3de9242f9
DAUC vector [0]: ik = 1c42e960d89b8fa99f2744e0708ccb53
DAUC vector [0]: res = 5860fc1bce351e7e0000000000000000
@@ -75,18 +78,19 @@ DAUC vector [0]: kc = cdc1dc0841b81a22
DAUC vector [0]: sres = 9655e265
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_4: SUCCESS
===== test_set_5
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 6c38a116ac280c454f59332ee35c8c4f
DAUC 3G: opc = 3803ef5363b947c6aaa225e58fae3934
DAUC vector [0]: rand = ee6466bc96202c5a557abbeff8babf63
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 45b0f69ab06c0000a161b2de788f3b3f
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 45b0f69ab04c000053f2a822f2b3e824
DAUC vector [0]: ck = 3f8c7587fe8e4b233af676aede30ba3b
DAUC vector [0]: ik = a7466cc1e6b2a1337d49d3b66e95d7b4
DAUC vector [0]: res = 16c8233f05a0ac280000000000000000
@@ -95,18 +99,19 @@ DAUC vector [0]: kc = df75bc5ea899879f
DAUC vector [0]: sres = 13688f17
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_5: SUCCESS
===== test_set_6
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 2d609d4db0ac5bf0d2c0de267014de0d
DAUC 3G: opc = c35a0ab0bcbfc9252caff15f24efbde0
DAUC vector [0]: rand = 194aa756013896b74b4a2a3b0af4539e
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 7e6455f34cf3000040dc9568192ab1c0
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 7e6455f34cd300004a2a9f2f3a529b8c
DAUC vector [0]: ck = 4cd0846020f8fa0731dd47cbdc6be411
DAUC vector [0]: ik = 88ab80a415f15c73711254a1d388f696
DAUC vector [0]: res = 8c25a16cd918a1df0000000000000000
@@ -115,18 +120,19 @@ DAUC vector [0]: kc = 84b417ae3aeab4f3
DAUC vector [0]: sres = 553d00b3
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_6: SUCCESS
===== test_set_7
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = a530a7fe428fad1082c45eddfce13884
DAUC 3G: opc = 27953e49bc8af6dcc6e730eb80286be3
DAUC vector [0]: rand = 3a4c2b3245c50eb5c71d08639395764d
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 88196c47986f000075c2ba7455852c2a
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 88196c47984f00000a50c5f4056ccb68
DAUC vector [0]: ck = 10f05bab75a99a5fbb98a9c287679c3b
DAUC vector [0]: ik = f9ec0865eb32f22369cade40c59c3a44
DAUC vector [0]: res = a63241e1ffc3e5ab0000000000000000
@@ -135,18 +141,19 @@ DAUC vector [0]: kc = 3b4e244cdc60ce03
DAUC vector [0]: sres = 59f1a44a
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_7: SUCCESS
===== test_set_8
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = d9151cf04896e25830bf2e08267b8360
DAUC 3G: opc = c4c93effe8a08138c203d4c27ce4e3d9
DAUC vector [0]: rand = f761e5e93d603feb730e27556cb8a2ca
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 82a0f5287a71000023563512500d75d9
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 82a0f5287a5100006d6c0ff132426479
DAUC vector [0]: ck = 71236b7129f9b22ab77ea7a54c96da22
DAUC vector [0]: ik = 90527ebaa5588968db41727325a04d9e
DAUC vector [0]: res = 4a90b2171ac83a760000000000000000
@@ -155,18 +162,19 @@ DAUC vector [0]: kc = 8d4ec01de597acfe
DAUC vector [0]: sres = 50588861
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_8: SUCCESS
===== test_set_9
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = a0e2971b6822e8d354a18cc235624ecb
DAUC 3G: opc = 82a26f22bba9e9488f949a10d98e9cc4
DAUC vector [0]: rand = 08eff828b13fdb562722c65c7f30a9b2
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = a2f858aa9e5d0000bdd79d9f7c269d1c
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = a2f858aa9e7d00001c14f5fcd445bc46
DAUC vector [0]: ck = 08cef6d004ec61471a3c3cda048137fa
DAUC vector [0]: ik = ed0318ca5deb9206272f6e8fa64ba411
DAUC vector [0]: res = 4bc2212d8624910a0000000000000000
@@ -175,18 +183,19 @@ DAUC vector [0]: kc = d8debc4ffbcd60aa
DAUC vector [0]: sres = cde6b027
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_9: SUCCESS
===== test_set_10
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 0da6f7ba86d5eac8a19cf563ac58642d
DAUC 3G: opc = 0db1071f8767562ca43a0a64c41e8d08
DAUC vector [0]: rand = 679ac4dbacd7d233ff9d6806f4149ce3
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 4c539a26e1fa000059e7ec99b51f33f3
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 4c539a26e1da000071cc0b769fd1aa96
DAUC vector [0]: ck = 69b1cae7c7429d975e245cacb05a517c
DAUC vector [0]: ik = 74f24e8c26df58e1b38d7dcd4f1b7fbd
DAUC vector [0]: res = 6fc30fee6d1235230000000000000000
@@ -195,18 +204,19 @@ DAUC vector [0]: kc = f0eaa50a1edcebb7
DAUC vector [0]: sres = 02d13acd
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_10: SUCCESS
===== test_set_11
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 77b45843c88e58c10d202684515ed430
DAUC 3G: opc = d483afae562409a326b5bb0b20c4d762
DAUC vector [0]: rand = 4c47eb3076dc55fe5106cb2034b8cd78
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 30ff25cdadf600003991f8e7e72a5948
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 30ff25cdadd60000e08a00f7ed54d6fe
DAUC vector [0]: ck = 908c43f0569cb8f74bc971e706c36c5f
DAUC vector [0]: ik = c251df0d888dd9329bcf46655b226e40
DAUC vector [0]: res = aefa357beac2a87a0000000000000000
@@ -215,18 +225,19 @@ DAUC vector [0]: kc = 82dbab7f83f063da
DAUC vector [0]: sres = 44389d01
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_11: SUCCESS
===== test_set_12
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 729b17729270dd87ccdf1bfe29b4e9bb
DAUC 3G: opc = 228c2f2f06ac3268a9e616ee16db4ba1
DAUC vector [0]: rand = 311c4c929744d675b720f3b7e9b1cbd0
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 5380d158cfe30000fd10b1f261e825c3
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 5380d158cfc30000f4e1436e9f67e4b2
DAUC vector [0]: ck = 44c0f23c5493cfd241e48f197e1d1012
DAUC vector [0]: ik = 0c9fb81613884c2535dd0eabf3b440d8
DAUC vector [0]: res = 98dbbd099b3b408d0000000000000000
@@ -235,18 +246,19 @@ DAUC vector [0]: kc = 3c66cb98cab2d33d
DAUC vector [0]: sres = 03e0fd84
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_12: SUCCESS
===== test_set_13
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = d32dd23e89dc662354ca12eb79dd32fa
DAUC 3G: opc = d22a4b4180a5325708a5ff70d9f67ec7
DAUC vector [0]: rand = cf7d0ab1d94306950bf12018fbd46887
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 217af49272ad0000cc1d4642c4476641
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 217af492728d00003bd338249751de80
DAUC vector [0]: ck = 5af86b80edb70df5292cc1121cbad50c
DAUC vector [0]: ik = 7f4d6ae7440e18789a8b75ad3f42f03a
DAUC vector [0]: res = af4a411e1139f2c20000000000000000
@@ -255,18 +267,19 @@ DAUC vector [0]: kc = 9612b5d88a4130bb
DAUC vector [0]: sres = be73b3dc
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_13: SUCCESS
===== test_set_14
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = af7c65e1927221de591187a2c5987a53
DAUC 3G: opc = a4cf5c8155c08a7eff418e5443b98e55
DAUC vector [0]: rand = 1f0f8578464fd59b64bed2d09436b57a
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 837fd7b744190000e4ae3648e1c7770b
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 837fd7b744390000557a836fd534e542
DAUC vector [0]: ck = 3f8c3f3ccf7625bf77fc94bcfd22fd26
DAUC vector [0]: ik = abcbae8fd46115e9961a55d0da5f2078
DAUC vector [0]: res = 7bffa5c2f41fbc050000000000000000
@@ -275,18 +288,19 @@ DAUC vector [0]: kc = 75a150df3c6aed08
DAUC vector [0]: sres = 8fe019c7
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_14: SUCCESS
===== test_set_15
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 5bd7ecd3d3127a41d12539bed4e7cf71
DAUC 3G: opc = 76089d3c0ff3efdc6e36721d4fceb747
DAUC vector [0]: rand = 59b75f14251c75031d0bcbac1c2c04c7
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 5be11495525d00008538a96619c04b01
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 5be11495527d0000298064f82a439924
DAUC vector [0]: ck = d42b2d615e49a03ac275a5aef97af892
DAUC vector [0]: ik = 0b3f8d024fe6bfafaa982b8f82e319c2
DAUC vector [0]: res = 7e3f44c7591f6f450000000000000000
@@ -295,18 +309,19 @@ DAUC vector [0]: kc = b7f92e426a36fec5
DAUC vector [0]: sres = 27202b82
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_15: SUCCESS
===== test_set_16
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 6cd1c6ceb1e01e14f1b82316a90b7f3d
DAUC 3G: opc = a219dc37f1dc7d66738b5843c799f206
DAUC vector [0]: rand = f69b78f300a0568bce9f0cb93c4be4c9
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 1c408a858b3e0000956596c6cd632f0f
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 1c408a858b1e0000e6e96310f83b5689
DAUC vector [0]: ck = 6edaf99e5bd9f85d5f36d91c1272fb4b
DAUC vector [0]: ik = d61c853c280dd9c46f297baec386de17
DAUC vector [0]: res = 70f6bdb9ad21525f0000000000000000
@@ -315,18 +330,19 @@ DAUC vector [0]: kc = 88d9de10a22004c5
DAUC vector [0]: sres = ddd7efe6
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_16: SUCCESS
===== test_set_17
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = b73a90cbcf3afb622dba83c58a8415df
DAUC 3G: opc = df0c67868fa25f748b7044c6e7c245b8
DAUC vector [0]: rand = b120f1c1a0102a2f507dd543de68281f
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = aefdaa5ddd9900003bf0fbdbbc9d8ecc
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = aefdaa5dddb90000c4741d698b7a7ed3
DAUC vector [0]: ck = 66195dbed0313274c5ca7766615fa25e
DAUC vector [0]: ik = 66bec707eb2afc476d7408a8f2927b36
DAUC vector [0]: res = 479dd25c20792d630000000000000000
@@ -335,18 +351,19 @@ DAUC vector [0]: kc = a819e577a8d6175b
DAUC vector [0]: sres = 67e4ff3f
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_17: SUCCESS
===== test_set_18
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 5122250214c33e723a5dd523fc145fc0
DAUC 3G: opc = 981d464c7c52eb6e5036234984ad0bcf
DAUC vector [0]: rand = 81e92b6c0ee0e12ebceba8d92a99dfa5
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = ada15aeb7bb80000f141568691cccaec
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = ada15aeb7b980000a99729b59d5688b2
DAUC vector [0]: ck = 5349fbe098649f948f5d2e973a81c00f
DAUC vector [0]: ik = 9744871ad32bf9bbd1dd5ce54e3e2e5a
DAUC vector [0]: res = 28d7b0f2a2ec3de50000000000000000
@@ -355,18 +372,19 @@ DAUC vector [0]: kc = 9a8d0e883ff0887a
DAUC vector [0]: sres = 8a3b8d17
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_18: SUCCESS
===== test_set_19
-aud3g.u.umts.sqn == 0
+aud3g.u.umts.sqn == 32
DAUC Computing 1 auth vector: 3G only (2G derived from 3G keys)
DAUC 3G: k = 90dca4eda45b53cf0f12d7c9c3bc6a89
DAUC 3G: opc = cb9cccc4b9258e6dca4760379fb82581
DAUC vector [0]: rand = 9fddc72092c6ad036b6e464789315b78
-DAUC vector [0]: sqn = 0
-DAUC vector [0]: autn = 83cfd54db9130000eb5e0ab0a7c030e6
+DAUC vector [0]: sqn = 32
+DAUC vector [0]: autn = 83cfd54db9330000695685b2b9214472
DAUC vector [0]: ck = b5f2da03883b69f96bf52e029ed9ac45
DAUC vector [0]: ik = b4721368bc16ea67875c5598688bb0ef
DAUC vector [0]: res = a95100e2760952cd0000000000000000
@@ -375,6 +393,7 @@ DAUC vector [0]: kc = ed29b2f1c27f9f34
DAUC vector [0]: sres = df58522f
DAUC vector [0]: auth_types = 0x3
rc == 1
+aud3g.u.umts.sqn == 33
vector matches expectations
===== test_set_19: SUCCESS
diff --git a/tests/auc/gen_ts_55_205_test_sets/func_template.c b/tests/auc/gen_ts_55_205_test_sets/func_template.c
index 36926eb..83c5826 100644
--- a/tests/auc/gen_ts_55_205_test_sets/func_template.c
+++ b/tests/auc/gen_ts_55_205_test_sets/func_template.c
@@ -36,6 +36,7 @@ static void {func_name}(void)
aud3g = (struct osmo_sub_auth_data){{
.type = OSMO_AUTH_TYPE_UMTS,
.algo = OSMO_AUTH_ALG_MILENAGE,
+ .u.umts.sqn = 32,
}};
osmo_hexparse("{Ki}",
@@ -47,9 +48,10 @@ static void {func_name}(void)
fake_rand, sizeof(fake_rand));
vec = (struct osmo_auth_vector){{ {{0}} }};
- VERBOSE_ASSERT(aud3g.u.umts.sqn, == 0, "%"PRIu64);
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 32, "%"PRIu64);
rc = auc_compute_vectors(&vec, 1, &aud2g, &aud3g, NULL, NULL);
VERBOSE_ASSERT(rc, == 1, "%d");
+ VERBOSE_ASSERT(aud3g.u.umts.sqn, == 33, "%"PRIu64);
VEC_IS(&vec,
" rand: {RAND}\n"