sgsn: test umts aka with gsm sres response
Add ability to test UMTS AKA, by f_gmm_attach() with flags to select UMTS AKA
and to respond to it with GSM AKA SRES.
Add TC_attach_umts_aka_umts_res and TC_attach_umts_aka_gsm_sres.
Change existing TC_attach_* to also call f_gmm_attach(). (Actually,
f_gmm_attach() is almost exactly the previous TC_attach function body.)
osmo-sgsn change I36807bad3bc55c0030d4f09cb2c369714f24bec7 will implement
proper handling of GSM AKA response and make TC_attach_umts_aka_gsm_sres pass.
Related: OS#3193 OS#3224
Change-Id: I201ffeaee4439a413ab8289aceeccca9aba40a7a
diff --git a/library/L3_Common.ttcn b/library/L3_Common.ttcn
index 5b36056..2b39621 100644
--- a/library/L3_Common.ttcn
+++ b/library/L3_Common.ttcn
@@ -7,8 +7,11 @@
type record AuthVector {
OCT16 rand,
OCT4 sres,
- OCT8 kc
- /* FIXME: 3G elements */
+ OCT8 kc,
+ OCT16 ik,
+ OCT16 ck,
+ OCT16 autn,
+ OCT8 res
}
private function f_rnd_oct(integer len) return octetstring {
@@ -28,6 +31,15 @@
return vec;
}
+function f_gen_auth_vec_3g() return AuthVector {
+ var AuthVector vec := f_gen_auth_vec_2g();
+ vec.ik := f_rnd_oct(16);
+ vec.ck := f_rnd_oct(16);
+ vec.autn := f_rnd_oct(16);
+ vec.res := f_rnd_oct(8);
+ return vec;
+}
+
/* 3GPP TS 23.003 2.6 */
type enumerated TlliType {
TLLI_LOCAL,