Attention is currently required from: fixeria, pespin.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: IPAd_Tests: add testsuite for an IPAd
......................................................................
IPAd_Tests: add testsuite for an IPAd
With this patch we add a testsuite that can be used to test an IPAd
implementation.
The testsuite emulates the ESipa and the ES10x (pcsc cardreader)
interface and is capable of testing a direct profile download and other
ESipa features like the execution of an eIM package (eCO, PSMO).
Change-Id: Ic9ea8c69e56a2e8ddf0f506861ece6d40cbcb06d
Related: SYS#6564
---
M Makefile
A ipad/IPAd_Tests.cfg
A ipad/IPAd_Tests.default
A ipad/IPAd_Tests.ttcn
A ipad/example_ca/openssl-easyrsa.cnf
A ipad/example_ca/pki/.rnd
A ipad/example_ca/pki/ca.crt
A ipad/example_ca/pki/certs_by_serial/11192A13CF3A3BC43FE1594BA8567DF0.pem
A ipad/example_ca/pki/extensions.temp
A ipad/example_ca/pki/index.txt
A ipad/example_ca/pki/index.txt.attr
A ipad/example_ca/pki/index.txt.old
A ipad/example_ca/pki/issued/alttest.cabundle
A ipad/example_ca/pki/issued/alttest.crt
A ipad/example_ca/pki/issued/alttest.notes
A ipad/example_ca/pki/openssl-easyrsa.cnf
A ipad/example_ca/pki/openssl-easyrsa.temp
A ipad/example_ca/pki/private/alttest.key
A ipad/example_ca/pki/private/ca.key
A ipad/example_ca/pki/reqs/alttest.req
A ipad/example_ca/pki/safessl-easyrsa.cnf
A ipad/example_ca/pki/serial
A ipad/example_ca/pki/serial.old
A ipad/example_ca/vars
A ipad/gen_links.sh
A ipad/regen_makefile.sh
M regen-makefile.sh
27 files changed, 1,863 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/29/36229/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ic9ea8c69e56a2e8ddf0f506861ece6d40cbcb06d
Gerrit-Change-Number: 36229
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, pespin.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229?usp=email )
Change subject: IPAd_Tests: add testsuite for an IPAd
......................................................................
Patch Set 2:
(5 comments)
File ipad/IPAd_Tests.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229/comment/731959b6_c76e…
PS1, Line 51: function f_make_http_resp
> this looks more like a `template`?
Done
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229/comment/d776d58e_3279…
PS1, Line 104: modulepar
> not critical, but we usually have module params on top
Done
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229/comment/c9997b95_78a2…
PS1, Line 208: while(true)
> cosmetic: while is not a function (same below)
Done
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229/comment/0e601fe3_fb27…
PS1, Line 445: for (i := 0; i < sizeof(esipa_res.getBoundProfilePackageResponseEsipa.getBoundProfilePackageOkEsipa.boundProfilePackage.firstSequenceOf87); i := i + 1) {
> sounds like you want to put this in a variable ;) "esipa_res.getBoundProfilePackageResponseEsipa. […]
I do not know if this looks much nicer ;-/
var RSPDefinitions.BoundProfilePackage.firstSequenceOf87 firstSequenceOf87 := esipa_res.getBoundProfilePackageResponseEsipa.getBoundProfilePackageOkEsipa.boundProfilePackage.firstSequenceOf87;
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229/comment/dd96cb3e_15c1…
PS1, Line 652: // execute ( TC_add_init_eim() );
> why is this one commented out?
This test requires the IPAd to be called with different command line parameters and a file that contains the eIM configuration. I have used this testcase mainly as a vehicle to see what is spoken to the eUICC on the other end. The testcase does not add much value anyway, so I have removed it now.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36229?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ic9ea8c69e56a2e8ddf0f506861ece6d40cbcb06d
Gerrit-Change-Number: 36229
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 02 Apr 2024 15:06:18 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36502?usp=email )
Change subject: msc: fix race condition in TC_mm_id_resp_no_identity
......................................................................
msc: fix race condition in TC_mm_id_resp_no_identity
This testcase is failing sporadically ever since it was introduced
back in 2019, during 36C3. The problem is that osmo-msc does not
react to the malformed MM IDENTITY RESPONSE immediately, but only
after timeout of timer X1 (5 seconds, by default); while the
testsuite expects the LU REJECT to be received within 5 seconds.
We should ideally fix osmo-msc to react immediately, but for now
let's enlarge the LU REJECT waiting timeout in the testcase.
Change-Id: I5d2b5d49df8f7ae1eb12fc137f4256fe6fab9117
Related: OS#6426, OS#4340
---
M msc/BSC_ConnectionHandler.ttcn
M msc/MSC_Tests.ttcn
2 files changed, 28 insertions(+), 8 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/02/36502/1
diff --git a/msc/BSC_ConnectionHandler.ttcn b/msc/BSC_ConnectionHandler.ttcn
index be12fae..6f8078b 100644
--- a/msc/BSC_ConnectionHandler.ttcn
+++ b/msc/BSC_ConnectionHandler.ttcn
@@ -916,11 +916,11 @@
}
}
-function f_expect_lu_reject(template OCT1 cause := ?) runs on BSC_ConnHdlr {
+function f_expect_lu_reject(template OCT1 cause := ?, float Tval := 5.0) runs on BSC_ConnHdlr {
var PDU_DTAP_MT dtap_mt;
- timer T := 5.0;
+ timer T;
- T.start;
+ T.start(Tval);
alt {
[] BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_LU_Rej(cause))) {
setverdict(pass);
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index 52a5c2f..513e346 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -6616,15 +6616,13 @@
vc_conn.done;
}
+/* Test how the MSC handles a malformed MM IDENTITY RESPONSE with no identity. */
friend function f_tc_mm_id_resp_no_identity(charstring id, BSC_ConnHdlrPars pars)
runs on BSC_ConnHdlr {
- pars.tmsi := 'FFFFFFFF'O;
f_init_handler(pars);
- f_create_gsup_expect(hex2str(g_pars.imsi));
-
/* Initiate Location Updating using an unknown TMSI */
- f_bssap_compl_l3(f_build_lu_tmsi(pars.tmsi));
+ f_bssap_compl_l3(f_build_lu_tmsi('FFFFFFFF'O));
/* Expect an Identity Request, send response with no identity */
BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_MM_ID_Req(CM_ID_TYPE_IMSI)));
@@ -6641,7 +6639,10 @@
}
})));
- f_expect_lu_reject();
+ /* XXX: Current osmo-msc does not react on bad/malformed MM IDENTITY RESPONSE immediately.
+ * It instead relies on expiry of timer X1, which is set to 5.0 seconds by default. This
+ * is not good (DoS vector) and should ideally be fixed, but for now just work it around. */
+ f_expect_lu_reject(Tval := 5.0 + 1.0);
f_expect_clear();
}
testcase TC_mm_id_resp_no_identity() runs on MTC_CT {
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36502?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I5d2b5d49df8f7ae1eb12fc137f4256fe6fab9117
Gerrit-Change-Number: 36502
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange