diff options
author | Harald Welte <laforge@gnumonks.org> | 2018-02-17 09:25:00 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2018-02-18 10:25:36 +0100 |
commit | fe25388c396a962f5e1c7a14dffe4fc8a65eda92 (patch) | |
tree | 1b9de6cda94f6108ecd126c45e6067d2eb730ab4 /sgsn | |
parent | 04683d0fb8ac267cf49e83175d408106f6c6cc1e (diff) |
Implement TC_attach_auth_sai_reject
Change-Id: I8a27c26bb2b6372faccd34c48a597a57783a924f
Diffstat (limited to 'sgsn')
-rw-r--r-- | sgsn/SGSN_Tests.ttcn | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn index 7e1c48e..bb97c64 100644 --- a/sgsn/SGSN_Tests.ttcn +++ b/sgsn/SGSN_Tests.ttcn @@ -399,6 +399,34 @@ testcase TC_attach_auth_sai_timeout() runs on test_CT { vc_conn.done; } +/* HLR rejects SAI, expect ATTACH REJECT */ +private function f_TC_attach_auth_sai_reject(charstring id) runs on BSSGP_ConnHdlr { + var MobileIdentityLV mi; + var RoutingAreaIdentificationV old_ra := f_random_RAI(); + + if (ispresent(g_pars.p_tmsi)) { + mi := valueof(ts_MI_TMSI_LV(g_pars.p_tmsi)); + } else { + mi := valueof(ts_MI_IMSI_LV(g_pars.imsi)); + } + + BSSGP.send(ts_GMM_ATTACH_REQ(mi, old_ra, false, false, omit, omit)); + alt { + [] as_mm_identity(); + [] GSUP.receive(tr_GSUP_SAI_REQ(g_pars.imsi)); { + GSUP.send(ts_GSUP_SAI_ERR(g_pars.imsi, 23)); + } + } + BSSGP.receive(tr_BD_L3_MT(tr_GMM_ATTACH_REJECT(?))); + setverdict(pass); +} +testcase TC_attach_auth_sai_reject() runs on test_CT { + var BSSGP_ConnHdlr vc_conn; + f_init(); + vc_conn := f_start_handler(refers(f_TC_attach_auth_sai_reject), testcasename(), g_gb[0], 3); + vc_conn.done; +} + /* HLR never responds to UL REQ, expect ATTACH REJECT */ private function f_TC_attach_gsup_lu_timeout(charstring id) runs on BSSGP_ConnHdlr { var BssgpDecoded bd; @@ -574,6 +602,7 @@ control { execute( TC_attach() ); execute( TC_attach_auth_id_timeout() ); execute( TC_attach_auth_sai_timeout() ); + execute( TC_attach_auth_sai_reject() ); execute( TC_attach_gsup_lu_timeout() ); execute( TC_attach_combined() ); execute( TC_attach_accept_all() ); |