sgsn: Add initial XID handshake related tests
Change-Id: I5d4b3cba2fe05dffe10c843f16cfec343bc67b5f
This commit is contained in:
parent
d21f6a2005
commit
2aaac1b1d1
|
@ -1180,7 +1180,7 @@ private function f_gtpu_send(inout PdpActPars apars, octetstring payload) runs o
|
|||
}
|
||||
|
||||
private altstep as_xid(PdpActPars apars) runs on BSSGP_ConnHdlr {
|
||||
[] BSSGP[0].receive(tr_BD_LLC(tr_LLC_XID(?, apars.sapi))) {
|
||||
[] BSSGP[0].receive(tr_BD_LLC(tr_LLC_XID_MT_CMD(?, apars.sapi))) {
|
||||
repeat;
|
||||
}
|
||||
}
|
||||
|
@ -2206,6 +2206,63 @@ testcase TC_llc_sabm_dm_ll5() runs on test_CT {
|
|||
vc_conn.done;
|
||||
}
|
||||
|
||||
/* test XID handshake with empty L3 info: expect empty return (some phones require that, OS#3426 */
|
||||
private function f_TC_xid_empty_l3(charstring id) runs on BSSGP_ConnHdlr {
|
||||
var PdpActPars apars := valueof(t_PdpActPars(mp_ggsn_ip));
|
||||
var template (value) XID_Information xid;
|
||||
var template XID_Information xid_rx;
|
||||
|
||||
/* first perform regular attach */
|
||||
f_TC_attach(id);
|
||||
/* then activate PDP context */
|
||||
f_pdp_ctx_act(apars);
|
||||
|
||||
/* start MO XID */
|
||||
xid := { ts_XID_L3(''O) };
|
||||
xid_rx := { tr_XID_L3(''O) };
|
||||
f_send_llc(ts_LLC_XID_MO_CMD(xid, apars.sapi));
|
||||
alt {
|
||||
[] BSSGP[0].receive(tr_BD_LLC(tr_LLC_XID(xid_rx, apars.sapi)));
|
||||
[] as_xid(apars);
|
||||
}
|
||||
setverdict(pass);
|
||||
}
|
||||
testcase TC_xid_empty_l3() runs on test_CT {
|
||||
var BSSGP_ConnHdlr vc_conn;
|
||||
f_init();
|
||||
f_sleep(1.0);
|
||||
vc_conn := f_start_handler(refers(f_TC_xid_empty_l3), testcasename(), g_gb, 44);
|
||||
vc_conn.done;
|
||||
}
|
||||
|
||||
private function f_TC_xid_n201u(charstring id) runs on BSSGP_ConnHdlr {
|
||||
var PdpActPars apars := valueof(t_PdpActPars(mp_ggsn_ip));
|
||||
var template (value) XID_Information xid;
|
||||
var template XID_Information xid_rx;
|
||||
|
||||
/* first perform regular attach */
|
||||
f_TC_attach(id);
|
||||
/* then activate PDP context */
|
||||
f_pdp_ctx_act(apars);
|
||||
|
||||
/* start MO XID */
|
||||
xid := { ts_XID_N201U(1234) };
|
||||
xid_rx := { tr_XID_N201U(1234) };
|
||||
f_send_llc(ts_LLC_XID_MO_CMD(xid, apars.sapi));
|
||||
alt {
|
||||
[] BSSGP[0].receive(tr_BD_LLC(tr_LLC_XID_MT_RSP(xid_rx, apars.sapi)));
|
||||
[] as_xid(apars);
|
||||
}
|
||||
setverdict(pass);
|
||||
}
|
||||
testcase TC_xid_n201u() runs on test_CT {
|
||||
var BSSGP_ConnHdlr vc_conn;
|
||||
f_init();
|
||||
f_sleep(1.0);
|
||||
vc_conn := f_start_handler(refers(f_TC_xid_n201u), testcasename(), g_gb, 45);
|
||||
vc_conn.done;
|
||||
}
|
||||
|
||||
|
||||
|
||||
control {
|
||||
|
@ -2253,6 +2310,9 @@ control {
|
|||
execute( TC_attach_pdp_act_user_error_ind_ggsn() );
|
||||
execute( TC_attach_gmm_attach_req_while_gmm_attach() );
|
||||
|
||||
execute( TC_xid_empty_l3() );
|
||||
execute( TC_xid_n201u() );
|
||||
|
||||
execute( TC_llc_null() );
|
||||
execute( TC_llc_sabm_dm_llgmm() );
|
||||
execute( TC_llc_sabm_dm_ll5() );
|
||||
|
|
Loading…
Reference in New Issue