hlr: add TC_MSLookup_mDNS_service_GSUP_HLR_proxy

Ask proxy HLR about gsup.hlr service, and expect no answer.

Related: OS#4380
Change-Id: Ic42c909e6540b2294b1109dc19c1df348224457b
This commit is contained in:
Oliver Smith 2020-01-30 15:10:20 +01:00 committed by laforge
parent 18b48081fe
commit da83c8307c
1 changed files with 42 additions and 0 deletions

View File

@ -1758,6 +1758,47 @@ testcase TC_MSLookup_mDNS_service_GSUP_HLR_home() runs on test_CT {
vc_conn.done;
}
/* Ask proxy HLR about gsup.hlr service, and expect no answer. */
private function f_TC_MSLookup_mDNS_service_GSUP_HLR_proxy() runs on HLR_ConnHdlr {
timer T;
var integer id := f_rnd_int(65535); /* mDNS packet ID */
var charstring domain := "gsup.hlr." & hex2str(g_pars.sub.imsi) & ".imsi.mdns.osmocom.org";
f_perform_UL_proxy(g_pars.sub.imsi, g_pars.sub.msisdn, OSMO_GSUP_CN_DOMAIN_CS);
/* Send mDNS query, expect timeout */
mDNS.send(ts_MSLookup_mDNS_query(id, domain));
T.start(1.0);
alt {
[] mDNS.receive(tr_MSLookup_mDNS_result_IPv4(id, domain, f_enc_IPv4(mp_hlr_ip), mp_hlr_gsup_port)) {
setverdict(fail, "mslookup result received from proxy HLR for gsup.hlr service");
}
[] mDNS.receive(MSLookup_mDNS:?) {
repeat;
}
[] T.timeout {
setverdict(pass);
}
}
}
testcase TC_MSLookup_mDNS_service_GSUP_HLR_proxy() runs on test_CT {
var hexstring imsi := f_rnd_imsi('26242'H);
var hexstring msisdn := '49161'H & f_rnd_hexstring(7, 9);
var HLR_ConnHdlr vc_conn;
var HLR_ConnHdlrPars pars := valueof(t_Pars(imsi, msisdn));
f_init(false, true);
f_vty_config(VTY, "mslookup", "mdns bind");
vc_conn := f_start_handler(refers(f_TC_MSLookup_mDNS_service_GSUP_HLR_proxy), pars, true);
timer T := 3.0;
T.start;
alt {
[] vc_conn.done {}
[] T.timeout { setverdict(fail, "Timeout"); mtc.stop; };
}
}
/* TODO:
* UL with ISD error
* UL with ISD timeout
@ -1808,6 +1849,7 @@ control {
execute( TC_MSLookup_mDNS_service_other_home() );
execute( TC_MSLookup_GSUP_proxy() );
execute( TC_MSLookup_mDNS_service_GSUP_HLR_home() );
execute( TC_MSLookup_mDNS_service_GSUP_HLR_proxy() );
}
};