Skip to content
Success

Changes

Summary

  1. library/s1ap: add E-RAB RELEASE templates (details)
  2. s1gw: derive functions from f_TC_e_rab_setup() (details)
  3. s1gw: fix TC_e_rab_setup: handle PFCP Session related PDUs (details)
  4. s1gw: TC_e_rab_setup: also test E-RAB release (details)
  5. s1gw: add TC_e_rab_setup3 (3 E-RABs at a time) (details)
  6. deps/update.sh: split update cmds from Makefile (details)
  7. deps/update: don't fetch repos where COMMIT exists (details)
  8. deps: make output readable (details)
  9. deps/update: skip checkout if nothing to do (details)
  10. Makefile: avoid fetching deps if not needed (details)
  11. .gitignore: ignore '.make.*' files (like .make.deps) (details)
  12. .gitignore: ignore ctags (details)
  13. Remove dead links and generated code in bin/* (details)
  14. {bsc-nat,selftest,sysinfo}/gen_links.sh: use bash, not sh (details)
  15. gen_links.sh.inc: 'set -e' to abort on error (details)
  16. testenv: testsuite: use rsync with --archive (details)
  17. testenv/README: consistency fix (details)
  18. testenv: podman.exec_cmd: better error if stopped (details)
  19. testenv/README: deduplicate clean= description (details)
  20. testenv/README: document current working dir (details)
  21. testenv: clean_run_scripts: skip if podman stopped (details)
  22. testenv: copy=: support copying directories too (details)
  23. ggsn: sync GGSN_Tests.cfg with docker-playground (details)
  24. ggsn: add testenv.cfgs for osmo-ggsn (details)
  25. ggsn: add testenv.cfg for open5gs (details)
  26. pcap-client: initial testenv.cfg (details)
  27. ruff.toml: new file (details)
  28. Cosmetic: testenv: fix line length (details)
  29. testenv: improve --config argument parsing (details)
  30. ggsn: testenv: fix paths in copy= and clean= (details)
  31. ggsn: testenv: add libosmocore-utils to package= (details)
  32. library: add generic Mutex API for parallel components (details)
  33. library/PFCP_Emulation: a better PDU routing concept (details)
  34. library: as_pfcp_ignore(): log SeqNr of received PDUs (details)
  35. s1gw: f_init_pfcp(): use 'PFCPEM' as the prefix (details)
  36. s1gw: make number of eNBs configurable via module params (details)
  37. Revert "s1gw: cache PFCP Recovery Timestamp in ConnHdlr" (details)
  38. s1gw: move PFCP association handling into a dedicated ConnHdlr (details)
  39. s1gw: add multi-eNB variants of TC_e_rab_setup (details)
  40. s1gw: add f_ConnHdlrList_all_done() (details)
  41. s1gw: f_ConnHdlr_rx_erab_release_cmd(): fix wrong template (details)
  42. s1gw: add TC_e_rab_release_ind (details)
  43. s1gw: f_ConnHdlr_erab_release_cmd(): add missing logging (details)
  44. library/s1ap: fix wrong IE ID in E-RABReleaseListBearerRelComp (details)
  45. library/s1ap: fix wrong field in S1AP-RABReleaseInd (details)
  46. library/s1ap: add templates for INITIAL CONTEXT SETUP (details)
  47. library/s1ap: fix wrong IDs in {ts,tr}_S1AP_InitialCtxSetupResp (details)
  48. library/s1ap: comment out optional IE in tr_S1AP_InitialCtxSetupResp (details)
  49. library/pfcp: fix template restriction in PFCP_Session_Est_Resp (details)
  50. library/pfcp: make Cause IE configurable in all templates (details)
  51. s1gw: TC_e_rab_setup: complete E-RAB release (details)
  52. s1gw: separate f_ConnHdlr_session_{establish,modify}() (details)
  53. s1gw: add testcases for INITIAL CONTEXT SETUP (details)
  54. testenv: podman: disable send_redirects (details)
  55. s1gw: add TC_initial_ctx_setup_failure (details)
  56. s1gw: move MME_UE_S1AP_ID to ConnHdlrPars (details)
  57. testenv: requirements: find programs in /usr/sbin (details)
  58. testenv: podman: remove mongodb-org.list (details)
  59. testenv: podman: don't install GUI packages (details)
  60. ggsn: osmo-ggsn.src.cfg: tweak log output (details)
  61. ggsn: testenv: replace dummy netdev with bridge (details)
  62. testenv: osmo-dev: build with gtp_linux.opts (details)
  63. testenv: bridge: change default IPs 201 -> 1 (details)
  64. ggsn: testenv: run SUT on bridge instead of lo (details)
  65. ggsn: testenv: change VTY IP (details)
  66. testenv: support running SUT in QEMU (details)
  67. ggsn: testenv: support running osmo-ggsn in QEMU (details)
  68. Cosmetic: ggsn: fix copy paste error (details)
  69. L3_Templates: GMM: fix off-by-one error in ServiceType IE (details)
  70. update osmo-stp.cfg to make STP_Tests work at all again (details)
  71. Replace libosmo-sccp references with libosmo-sigtran (details)
  72. _testenv: Avoid running make check when building IUT (details)
  73. stp: Support running with testenv (details)
  74. library/GTPv1U_Templates: support sending ext hdrs (details)
  75. testenv: podman: restart_count in container_name (details)
  76. sgsn: Validate TLI received in RAB Ass Req (details)
  77. sgsn: Test tx Rab Ass Resp with ITU X.213 IPv4 address format (details)
  78. sgsn: Introduce test TC_attach_pdp_act_user_addr_itu_x213_ipv4toolarge (details)
  79. sgsn: Improve validation of TLA encoded in RAB Ass Req (details)
  80. cosmetic: sgsn: Fix indenation whitespace (details)
  81. ggsn: README: document how to run with testenv (details)
  82. library/GTPv1C_Templates: Lots of improvements in template declarations (details)
  83. cosmetic: library/GTPv1C_Templates: remove extra indentation level (details)
  84. library/GTPv1C_Templates: Clean up PCO templates (details)
  85. mgw: Remove unneeded dep IPCP_Types.ttcn (details)
  86. s1gw: Remove unneeded dep IPCP_Types.ttcn (details)
  87. library: Move IPCP templates GTPv1C_Templates.ttcn -> (details)
  88. library/PCO_Types: Drop unused nonsense enum (details)
  89. library/PCO_Types.ttcn: Drop unsued IPCP_OPT enum (details)
  90. ggsn: Introduce test TC_pdp4(6)_act_deact_mtu (details)
  91. ggsn: Validate MTU sent during ICMPv6 RA (details)
  92. ggsn: Request osmo-ggsn to apply the MTU on the tundev (details)
  93. ctrl: tweak errmsg for counter mismatch (details)
  94. testenv: qemu: get coredump and show backtrace (details)
  95. pcu: add testenv.cfg (details)
  96. bsc/osmo-bsc-sccplite.cfg: add trx1, trx2 (details)
  97. bsc/osmo-bsc{,-vamos}.cfg: add no missing-msc-text (details)
  98. bsc/osmo-stp.cfg: sync with docker-playground (details)
  99. bsc: add testenv.cfg (details)
  100. testenv: improve output for missing -c argument (details)
  101. testenv: osmo-dev: add hint for gen_makefile fail (details)
  102. hnbgw: Support testenv (details)
  103. testenv: remove dead code for [testsuite] prepare= (details)
  104. testenv: add proper [testsuite] prepare= support (details)
  105. hnbgw: Split ConnHdlr component code to its own file (details)
  106. RAN_Emulation: Introduce field ranap_connect_ind_auto_res (details)
  107. hnbgw: Allow modifying RanOps during test startup (details)
  108. Convert RAN_Conn_Prim from enum to union (details)
  109. RAN_Emulation: Allow setting reason in primitive MSC_CONN_PRIM_DISC_REQ (details)
  110. hnbgw: Fix TC_ranap_ps_mo_disconnect testing CS instead of PS (details)
  111. hnbgw: Drop unused template (details)
  112. hnbgw: Introduce test TC_ranap_{cs,ps}_creq_cref (details)
  113. hnbgw: Set sccp_addr parameters during init (details)
  114. hbngw: Store IuSigConid in ConnHdlr params (details)
  115. RANAP_Templates: Add templates for ResetResource(Ack) (details)
  116. RAN_Emulation: Support registering IuSigConId for connectionless RANAP (details)
  117. s1gw: use the new counter name (out_pkt.forward.unmodified) (details)
  118. RUA_Emulation: Support passing no RANAP PDU in RUA_Disc_Req (details)
  119. hnbgw: Add missing timer stop after use (details)
  120. hnbgw: Get rid of pars param in void_fn (details)
  121. testenv: run podman command with logfile (details)
  122. library/s1ap: fix wrong IE criticality in templates (details)
  123. library/s1ap: rework {ts,tr}_S1AP_RABSetupRsp templates (details)
  124. s1gw: add TC_e_rab_setup_failure (details)
  125. hnbgw: test for RUA Disconnect when there is no CN (details)
  126. hnbgw: Send meaningful RANAP messages in f_tc_ranap_mo_disconnect() (details)
  127. hnbgw: Introduce test TC_cs_iu_release_req_rua_disconnect (details)
  128. hnbgw: fixup for expect_compl_l3_success (details)
  129. hnbgw: Rename RAB helper functions to be CS specific (details)
  130. hnbgw: Use g_pars.mgcp_pars directly during RAB CS setup (details)
  131. hnbgw/expected-results: update (details)
  132. testenv: make podman stop more robust (details)
  133. hnbgw: Move gtp_pars to Connhdlr (details)
  134. hnbgw: Introduce PfcpParameters in TestHdlrParameters (details)
  135. bsc: testenv: set MTU=1500 for lo (details)
  136. hnbgw: Merge TC_ps_rab_assignment_* testcases (details)
  137. hnbgw: Move normal condition Iu Release procedure to helper function (details)
  138. hnbgw: Tear down SCCP conn from CN under normal conditions (details)
  139. testenv: fix 'container crashed' detection (details)
  140. testenv: podman-main: set watchdog timer to 60s (details)
  141. statsd: Support f_statsd_snapshot() API when using VTY-triggered stats (details)
  142. hnbgw: Introduce module parameter mp_statsd_prefix (details)
  143. hnbgw: Introduce module parameter mp_pfcp_upf_node_id (details)
  144. hnbgw: Handle PFCP Assoc Setup procedure in test_CT (details)
  145. hnbgw: Introduce test TC_ps_iu_release_req_rua_disconnect (details)
  146. testenv: show testsuite results at the end (details)
  147. testenv: more tweaks for container shutdown logic (details)
  148. hnbgw: Parametrize UPF F-SEID (details)
  149. hlr: use :memory: (volatile in-memory database) (details)
  150. hlr: refactor f_SS_expect() (details)
  151. library/gsup: improve formatting of SS templates (details)
  152. library/gsup: improve generic GSUP_PDU templates (details)
  153. hnbgw: with-pfcp: Support running ConnHdlr concurrently (details)
  154. RAN_Emulation: Increase ExpecTable size to 16 (details)
  155. hnbgw: Add test TC_ps_rab_assignment_concurrent (details)
  156. hnbgw: Parametrize MgcpParameters MGCP endpoint (details)
  157. hnbgw: mgcp: Support running CS RAB ConnHdlr concurrently (details)
  158. hnbgw: Introduce test TC_rab_assignment_concurrent (details)
  159. RUA_Emulation: Add missing msg component destination (details)
  160. hnbgw: Small fixes in f_tc_rab_assignment() (details)
  161. deps: Update titan.ProtocolEmulations.SCCP to upstream master (details)
  162. osmo-*.cfg: enable gsmtap log (details)
  163. library/gsup: improve GSUP_IE templates (details)
  164. library/gsup: rework f_gen_{tr,ts}_ss_ies() and SS templates (details)
  165. library/gsup: add src/dst name IEs to all SS templates (details)
  166. library/rsl: rename t_RSL_IE_ActType_* -> c_RSL_IE_ActType_* (details)
  167. msc: use :memory: for SMS (volatile in-memory database) (details)
  168. hlr: expected-results.xml: expect TC_MSLookup_* to pass (details)
  169. {epdg,msc,pgw}/expected-results.xml: sync with Jenkins (details)
  170. bts: use proper ActType in f_TC_data_rtp_loopback() (details)
  171. bts: TC_data_rtp_tchh*: fix timeslot number in comments (details)
  172. bts: add TC_data_facch_*: test FACCH/[FH] on data channels (details)
  173. bsc: Fix sporadic failure in .TC_ho_in_fail_ipa_crcx_timeout (details)
  174. epdg: fix a DTE in as_GSUP_rx_CL_REQ (details)
  175. testenv: add run --until-nok (details)
  176. mgw: fix RTP packets received while RX disabled (details)
  177. testenv: make it pass 'ruff check' linter (details)
  178. testenv: install dbg pkgs with --binary-repo too (details)
  179. testenv: pass env var for --binary-repo (details)
  180. bts/run_fake_trx.sh: tweak cd logic (details)
  181. testenv: respawn.sh: don't respawn on segfault (details)
  182. testenv: print backtrace on startup fail too (details)
  183. testenv: build virtphy from src with --binary-repo (details)
  184. bts: add initial testenv.cfg (details)
  185. L3_Templates: GMM: Attach Req/RAU Req: add TLVs required for 4G -> 2G (details)
  186. L3_Templates: RAU Request: add support for MS Network Capability (details)
  187. L3_Templates: set R99 indicator (details)
  188. L3_Templates: Add required TLVs for RA Request when moving from 4G to 2G (details)
  189. L3_Templates: correct set a5 bits to A1 + A5 (details)
  190. Osmocom_CTRL_Functions.ttcn: Use Misc_Helpers.f_shutdown() everywhere (details)
  191. deps/Makefile: update titan.ProtocolModules.RTP (details)
  192. hnbgw: TC_rab_release: Fix race condition stats checked too early (details)
  193. bsc: Fix missing teardown in TC_ho_in_fail_msc_clears_after_ho_detect (details)
  194. msc: fix a race condition in f_mt_call_establish() (details)
  195. bsc: osmo-bsc.cfg: Listen IPA Abis and CTRL interfaces on 127.0.0.1 (details)
  196. bsc: Add missing testcase in expected-results.xml (details)
  197. PCU_Tests_SNS: del/change weight: don't fail on NS (details)
  198. tr_GTPC_SGSNContextReq: use the same template as MsgType (details)
  199. SGSN: BSSGP_ConnHdlr: GMM Service Request: handle PMM IDLE UE correct (details)
  200. SGSN: BSSGP_ConnHdlr: GMM Service Request: add support to expect (details)
  201. SGSN: BSSGP_ConnHdlr: f_gmm_attach(): allow the SGSN to request the IMEI (details)
  202. SGSN: f_TC_attach_timeout_after_pdp_act: allow authentication (details)
  203. SGSN: f_TC_attach_rau: do a periodic RA update instead of RA change (details)
  204. SGSN: TC_attach_auth_id_timeout: set TMSI to provoke a ID Request (details)
  205. SGSN: f_TC_hlr_location_cancel_request_withdraw: drop incorrect Update (details)
  206. SGSN: f_TC_paging_ps: call f_gmm_attach() direct (details)
  207. SGSN: f_TC_cell_change_different_*: always expect the auth (details)
  208. SGSN: fix encoding of IMEISV in Auth and Ciphering Response (details)
  209. SGSN: TC_attach_pdp_act_pmm_idle: use correct Service Request type (details)
  210. SGSN: Context Req In: use correct TEID-C (details)
  211. SGSN: assign random TEID-C to Context Req/Resp/Ack messages (details)
  212. SGSN: Remove mm context triplets (details)
  213. testenv: use new osmocom-bb binary packages (details)
  214. SGSN_Tests: f_TC_attach_usim_resync: fix IMEISV value (details)
  215. PCU_Tests_SNS: SNS Add: handle NS_Alive while waiting for SNS_Ack (details)
  216. testenv: make copy= more intuitive (details)
  217. remsim: Add initial testenv (details)
  218. RAW_NS: SNS Add: handle IPv4/IPv6 element in SNS Ack (details)
  219. RAW_NS: SNS Changeweight: remove IPv4/IPv6 element in SNS Ack (details)
  220. PCUIF: fix usage of bts number in PCUIF_TXT_IND (details)
  221. RAN_Emulation: Allow client to trigger SCCP CC if automatic CC was (details)
  222. hnbgw: Introduce test TC_{cs,ps}_rua_disconnect_during_sccp_cr_cc (details)
  223. hnbgw: Fix template restriction in template param (details)
  224. testenv: Log return code of unexpected end of process (details)
  225. remsim: Enable debug output of bankd (details)
  226. remsim: bankd: Install vsmartcard-vpcd (details)
  227. sccp: Initial testenv (details)
  228. sccp: Let some time for SCCP RLC to reach IUT before finishing test (details)
  229. library/s1ap: f_tr_S1AP_RABSetupRsp(): use ispresent() (details)
  230. library/s1ap: add E-RAB MODIFY REQ/RSP templates (details)
  231. library/s1ap: add E-RAB MODIFY IND/CNF templates (details)
  232. s1gw: make f_ConnHdlr_rx_session_modify_req() more flexible (details)
  233. s1gw: add constants for PFCP FAR IDs (details)
  234. mgw: Improve log and teardown upon unexpected mgcp resp received (details)
  235. PCU_Tests_SNS: sns_del: check if removed NS-VC still transmits (details)
  236. GSUP_Templates: Purge MS Request: allow the Message class IE to be (details)
  237. SGSN: f_cellid_to_RAI: fix spaces vs tabs (details)
  238. msc: add testenv.cfg (details)
  239. stp: Improve failure teardown using Misc_Helpers.f_shutdown (details)
  240. stp: set up all M3UA ports in array in steps (details)
  241. gbproxy: Don't log the payload size for every DL/UL-UNITDATA (details)
  242. testenv: run: add --autoreconf-in-src-copy arg (details)
  243. library/s1ap: fix criticality in UE CONTEXT RELEASE PDUs (details)
  244. s1gw: add f_TC_exec() (details)
  245. s1gw: add TCs for UE CONTEXT RELEASE procedures (details)
  246. hnbgw: Use Misc_Helpers.f_shutdown upon rx of unexpected msg (details)
  247. MGCP_Emulation: Make sure peer is running before Tx (details)
  248. hnbgw: Submit proper L3 PDUs during CR (details)
  249. Mutex: Create component alive (details)
  250. RAN_Adapter: Create components alive (details)
  251. hnbgw: Create all components alive (details)
  252. pcu: Fix wrong BSN uint size (details)
  253. pcu: Fix TC_dl_cs1_to_cs4 sporadic fail (details)
  254. pcu: Fix dummy DL block received due to timer race conditions (details)
  255. s1gw: f_ConnHdlr_session_delete(): invalidate peer's SEID (details)
  256. s1gw: f_ConnHdlr_session_delete(): respect any order (details)
  257. s1gw: add TC_e_rab_modify_req_rsp[_multi] (details)
  258. s1gw: add TC_e_rab_modify_ind_cnf[_multi] (details)
  259. hnbgw: remove osmo-hnbgw <= 1.6.0 code path (details)
  260. sgsn: remove osmo-sgsn <= 1.12.0 code path (details)
  261. eim: move es9p_Types_JSON to library (details)
  262. mgw: osmo-mgw.cfg: remove deprecated no-op params (details)
  263. bts: expect TC_data_{rtp,facch}_tchf144 to pass (details)
  264. stp: Allow setting up different m3ua_config list by test (details)
  265. Use fork of titan.ProtocolModules.M3UA containing fix (details)
  266. stp: Pass M3UA conn idx to f_M3UA_rkm_register() (details)
  267. stp: NOTIFY expectancy fixes (details)
  268. stp: Introduce tests TC_dyn_(2)asp_as_rkm_permitted (details)
  269. stp: Fix expectancies of TC_clnt_quirk_snm_inactive (details)
  270. stp: Fix brokeness in STP_Tests_M3UA.TC_tmt_loadshare (details)
  271. stp: Fix brokeness in STP_Tests_IPA.TC_tmt_loadshare (details)
  272. stp: STP_Tests.ttcn: Use M3UA PC and RCTX from config (details)
  273. es9p_Types_JSON: split headers into separate module (details)
  274. RSPDefinitions_Templates: add missing default values (details)
  275. es9p_Types_JSON: add decoder/encoder functions for opposite direction (details)
  276. HTTP_Adapter/cosmetic: remove stray newline (details)
  277. testenv/README: fix markdown syntax (details)
  278. HTTP_Adapter: allow requests to different hosts (details)
  279. HTTP_Adapter: add missing omit qualifiers (details)
  280. testenv: use --autoreconf-in-src-copy by default (details)
  281. deps: Update titan.ProtocolModules.M3UA to upstream master (details)
  282. stp: STP_Tests_IPA.TC_tmt_loadshare_sls: Fix test expectancies (details)
  283. sccp: Improve logging receiving unexpected msg (details)
  284. sccp: Fix test rx SLS expectancies (details)
  285. SCCP_Templates: Expect either proto class0 or class1 upon rx SCCP (details)
  286. HTTP_Server_Emulation: allow multiple HTTP server ports (details)
  287. testenv: -h output: add more binary repo examples (details)
  288. bts: BTS_Tests.cfg: remove commented out params (details)
  289. bts: BTS_Tests.cfg: set BTS_Tests.mp_transceiver_num (details)
  290. bts: Run osmo-bts-trx with sched_rr priority (details)
  291. asterisk: Rework test TC_ims_call_mo_after_tcp_conn_closed with new (details)
  292. mme: Take into account KSI update by Network (details)
  293. mme: Replace TC_s1ap_setup_wrong_plmn with test with different (details)
  294. rmlinks.sh: use -delete instead of -exec rm (details)
  295. rmlinks.sh: remove non-existent path exclude (details)
  296. remove unused ROHC_CNL113426_LATEST dir (details)
  297. deps: fix overriding recipe for target 'titan.ProtocolEmulations.SCCP' (details)
  298. bts: simplify f_tc_rsl_ms_pwr_ctrl() (details)
  299. library: fix coding style near f_rnd_int() (details)
  300. library: add f_rnd_sleep() (details)
  301. library/s1ap: cosmetic: fix a typo (details)
  302. library/s1ap: split PDU specific API to S1AP_Functions.ttcn (details)
  303. s1gw: derive altsteps from f_ConnHdlr_rx_s1ap_from_{enb,mme}() (details)
  304. s1gw: add UE multiplex component (details)
  305. s1gw: add TC_uemux_uldl_nas_release (details)
  306. s1gw: disable Nagle for eNB and MME connections (details)
  307. msc: f_establish_fully(): merge EST_TYPE_MO_{CALL,CSD} (details)
  308. msc: use f_expect_paging() in SS/USSD TCs (details)
  309. msc: split up as_unexp_gsup_or_bssap_msg() (details)
  310. msc: add TC_gsup_mt_sms_{paging,conn}_timeout (details)
  311. s1gw: ConnHdlr: allow passing {MME,ENB}-UE-S1AP-ID (details)
  312. s1gw: add UEMux TCs for E-RAB SETUP and RELEASE (details)
  313. s1gw: add UEMux TCs for INITIAL CTX SETUP and UE CTX RELEASE (details)
  314. s1gw: fix passing swapped {MME,ENB}_UE_S1AP_ID (details)
  315. remsim: make client tests work in testenv (details)
  316. testenv: fix building osmo-remsim with osmo-dev (details)
  317. Cosmetic: testenv/testdir: fix formatting (details)
  318. stp: TC_tmt_loadshare*: Use new vty command 'binding-table reset' (details)
  319. testenv: fix OSMO_DEV_MAKE_DIR env var (details)
  320. sccp: testenv: fix hardcoded sccp_demo_user path (details)
  321. sccp: testenv: fix run with asan + latest binaries (details)
  322. testenv: remove TESTENV_GIT_DIR (details)
  323. msc: add/expect network-originated MT-Forward-SM.Err (details)
  324. msc: execute more SMS-over-GSUP tests via UTRAN (details)
  325. testenv: make clone project function generic (details)
  326. testenv: clone_project: fix getting latest version (details)
  327. ns: initial testenv config (details)
  328. hnbgw: Support configuring RAC on each hnb conn (details)
  329. hnbgw: Test paging with PAge Area ID IE (details)
  330. stp: Fix typo in comment (details)
  331. testenv: clean: fix cleaning git dir (details)
  332. Revert "hnbgw: Test paging with PAge Area ID IE" (details)
  333. Revert "hnbgw: Support configuring RAC on each hnb conn" (details)
  334. msc: add TC_mo_ussd_evil_ms for OS#6756 (details)
  335. buildsystem: move related scripts to subdir (details)
  336. buildsystem/regen_makefile: change to inc script (details)
  337. buildsystem: remove ttcn3_compiler workaround (details)
  338. buildsystem/regen_makefile: modernize (details)
  339. buildsystem/gen_links: move set -e to users (details)
  340. buildsystem/gen_links: rename ignore_pp_results (details)
  341. buildsystem: build out-of-tree (details)
  342. buildsystem: make output more readable (details)
  343. testenv: remove copy_ttcn3_hacks_dir (details)
  344. testenv: refactor run --until-nok code (details)
  345. testenv: run: add --bisect argument (details)
  346. start-testsuite: fix passing $TEST to ttcn3_start (details)
  347. README: use # and ## for headlines (details)
  348. start-testsuite: respect $TTCN3_DIR (if set) (details)
  349. Move f_{dec,enc}_mcc_mnc() API BSSMAP_Templates.ttcn -> GSM_Types.ttcn (details)
  350. Fix MNC decoding in f_dec_mcc_mnc() (details)
  351. hnbgw: Support configuring RAC and Cell ID on each hnb conn (details)
  352. hnbgw: Test paging with Page Area ID IE (details)
  353. README: explain how to run testsuites manually (details)
  354. start-testsuite: remove workaround for TITAN < 9.0.0 (details)
  355. testenv: support fetching coredumps in jenkins (details)
  356. bts: set osmo-bts sched priority to 30 (details)
  357. tcpdump/dumpcap: move kill_rm_pidfile to inc file (details)
Commit e59e681c26352fdf5054aedd76dd7b562897335b by laforge
library/s1ap: add E-RAB RELEASE templates

Change-Id: I2e9305da80934ea68e3eca8215a9c16de48b37fd
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 7dd49ba289b8423e51f6b71996aa5057ae6cada2 by laforge
s1gw: derive functions from f_TC_e_rab_setup()

... to avoid code duplication when adding more E-RAB related TCs.

While at it, allow establishing multiple E-RABs.

Change-Id: I1bff371da6337ecd7710219d1c86f0fff82ad17f
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
Commit c8d310d7a71739fdad9292ac6678352d2093b453 by laforge
s1gw: fix TC_e_rab_setup: handle PFCP Session related PDUs

S1GW_Tests.TC_e_rab_setup is failing since we introduced the PFCP
support to osmo-s1gw.  The IUT now requires co-located UPF, which
we need to emulate in the testsuite.

This patch patch adds the following API:

* S1GW_ConnHdlr.f_ConnHdlr_rx_session_establish_req(),
* S1GW_ConnHdlr.f_ConnHdlr_tx_session_establish_resp(),
* S1GW_ConnHdlr.f_ConnHdlr_rx_session_modify_req(),
* S1GW_ConnHdlr.f_ConnHdlr_tx_session_modify_resp(),

and makes use of it in S1GW_Tests.TC_e_rab_setup.

Change-Id: Ibbb326badaa1e3df968c137f3e4b576ca5c6f94d
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit a99224c9464bdb54760ed87f9b3b20268bffb25f by laforge
s1gw: TC_e_rab_setup: also test E-RAB release

* s1ap: add E-RAB RELEASE API
* pfcp: add PFCP Session Deletion API
* s1gw: make use of this API in TC_e_rab_setup

Change-Id: Id995c51d8ac76316f41ef49d35380a2521d5ae19
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
Commit c97bc1db966b2a2f102d3190f1d0c096e7c92933 by laforge
s1gw: add TC_e_rab_setup3 (3 E-RABs at a time)

The idea is to verify setup and release of 3 E-RABs at a time.

Change-Id: I6a0a10f826309d8a952c77c23170df3d201e7640
The file was modifieds1gw/expected-results.xml
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 5b3246910ea63dfc9abbafb2e1836484c3e9cd8a by Oliver Smith
deps/update.sh: split update cmds from Makefile

Move the inline shell commands from the Makefile to a separate script,
so they are easier to edit and maintain. Proper syntax highlighting, no
need for all the backslashes + &&, etc.

Change-Id: Ifab1158000ccb39f0b384bbd81841e417ed24f37
The file was modifieddeps/Makefile
The file was addeddeps/update.sh
Commit 68b83cd3f62619f764642f5aab491415d3065051 by Oliver Smith
deps/update: don't fetch repos where COMMIT exists

Instead of unconditionally fetching each git repository, check if the
commit we want to checkout already exists in the git repository. If that
is the case, then don't fetch it.

Related: OS#6572
Change-Id: I342957668892e7d29666fada82362cb4a6c7aac5
The file was modifieddeps/update.sh
Commit ebed76d72ac0e1467b1228146c44f0a1c8b34a29 by Oliver Smith
deps: make output readable

Instead of having a silent fetch and commits printed to stdout without
information about the repository they belong to, change the output to
have one line per git action and to include the repository name in each
of them.

Example output:

[titan.ProtocolEmulations.M3UA] Checking out b58f92046e48a7b1ed531e243a2319ebca53bf4c
[titan.ProtocolModules.IP] Checking out 1be86705f39ae38f3c04b2109806ee20d25e91d0
[titan.ProtocolModules.GTP_v13.5.0] Checking out 6b769f985eb91bf5a4332f29faa4a043b23ce62e
[titan.ProtocolModules.ICMP] Checking out e49d9fb9f7de637b4bf4803dc6b6e911a8661640
[osmo-uecups] Initial git clone
[titan.ProtocolModules.DIAMETER_ProtocolModule_Generator] Checking out ffd939595a08da1b8c8176aaa1f8578bfe02a912
[titan.ProtocolModules.L2TP] Checking out 17e76d3662bd0bb815158e8a9de1ec413f21b530
[titan.ProtocolModules.ICMPv6] Checking out 46f4d9b6e1e3c794294a92588401a81e4881dd27
[titan.ProtocolModules.LLC_v7.1.0] Checking out 09817f113255d7fb56f1d45d3dd629a093d9248d
[titan.ProtocolModules.M3UA] Checking out c496d298876fed55c2b730278b7ee77982555563
[titan.ProtocolModules.PFCP_v15.1.0] Checking out d550ad9ddb6f9c823c9a555254cd76cf0e738d18
[titan.ProtocolModules.MobileL3_v13.4.0] Checking out b6602eb357673f097ea1a1d22edd568ecd239da1
[titan.TestPorts.TELNETasp] Checking out 873fe539642542cd9a901c208f1ec11c6d2f5387
[titan.TestPorts.SIPmsg] Checking out 78bf0daf8c599d374089d97a054914d8439d133a
[titan.TestPorts.UDPasp] Checking out 54176e95850654e5e8b0ffa2f1b5f35c412b949c
[titan.ProtocolModules.BSSGP_v13.0.0] Checking out e97d92a8b66bec399babea52f593771b76cb175a
[titan.ProtocolModules.BSSMAP] Checking out 4acb6ab5f058477f0b90c2da182d52054e3614b0
[osmo-uecups] Updating URL to https://gerrit.osmocom.org/osmo-uecups
[osmo-uecups] Checking out 8362efef7c6fa341eb947a75786878e0685767b7

Change-Id: I0231488b02fdb5aa19b864e51864682ebbb3b0c6
The file was modifieddeps/update.sh
The file was modifieddeps/Makefile
Commit 3ebc0972e6a613dc78e72fdd95591d9b20cd8f6a by Oliver Smith
deps/update: skip checkout if nothing to do

Let the user see what changes when running "make deps" instead of
having unrelated lines for checking out the commits that are already
checked out.

Change-Id: I572ab11afd56e34d9d0d04cd1372af749caa7d48
The file was modifieddeps/update.sh
Commit c7e40d6a82ad2a004e5c82d46c5f82a9b7a99dc4 by Vadim Yanitskiy
Makefile: avoid fetching deps if not needed

Running `make deps` for the first time fetches all the dependencies.
Running `make deps` again currently results in unnecessary git-fetch
and get-checkout operations for each dependency.

This is not as bad as cloning dependencies from scratch every time,
but still takes time and triggers unnecessary requests to the servers.
It's also creating problems when building testsuites offline.

This patch makes the build system a bit smarter in a way that it would
only try to update dependencies if the 'deps/Makefile' was changed.

Change-Id: Iae98585f0a83b17596857eba8c2f51a785198580
Related: OS#6572
The file was modifiedMakefile
Commit a63b3331bf84b6031be3df528c81b063a4e24aa0 by Vadim Yanitskiy
.gitignore: ignore '.make.*' files (like .make.deps)

Change-Id: I79dfa38bc874a48cb09a6e6fb3f06405ba869491
Related: c7e40d6a "Makefile: avoid fetching deps if not needed"
The file was modified.gitignore
Commit eb1ea5b27fef626624bdae4fb062a506805f3cd6 by Vadim Yanitskiy
.gitignore: ignore ctags

Change-Id: I90f468049189d919aa0cbc3c1da1ac6f8422bc36
Related: 600ebb235 "Makefile: add target for generating tags"
The file was modified.gitignore
Commit 58a863c2895e5fff807c583b9026b8823cfb531e by Vadim Yanitskiy
Remove dead links and generated code in bin/*

Change-Id: I60929c5d4acba4d0d8df3696fade370d7e0100f8
The file was removedbin/SCTPasp_PT.hh
The file was removedbin/MTP3asp_Types.ttcn
The file was removedbin/SCTPasp_Types.ttcn
The file was removedbin/Makefile
The file was removedbin/SCCPasp_Types.ttcn
The file was removedbin/SCCP_Types.ttcn
The file was removedbin/M3UA_Emulation.ttcn
The file was removedbin/SCCP_Emulation.ttcn
The file was removedbin/SCCP_Mapping.ttcnpp
The file was removedbin/SCTPasp_PT.cc
The file was removedbin/SCTPasp_PortType.ttcn
The file was removedbin/SCCP_Testcases.ttcn
The file was removedbin/M3UA_Types.ttcn
The file was removedbin/MTP3asp_PortType.ttcn
The file was removedbin/SCCP_Mapping.ttcn
The file was removedbin/SCCP_Testcases.cfg
The file was removedbin/install.script
The file was removedbin/General_Types.ttcn
Commit 5344866f793fd6bfc8d0f3f7c18a823893c16d71 by Vadim Yanitskiy
{bsc-nat,selftest,sysinfo}/gen_links.sh: use bash, not sh

This fixes the following error:

  ./gen_links.sh: 40: shopt: not found

which is printed when compiling the above-mentioned testsuites.

Change-Id: I994e241efb73f6f8b78803cf4ecdfb057b210a3b
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedselftest/gen_links.sh
Commit a42c49f1c8110357cf643013ded2745f5d5ece6b by Vadim Yanitskiy
gen_links.sh.inc: 'set -e' to abort on error

We should not tolerate errors in '*/gen_links.sh' files.

Change-Id: Id9367e4c45c84dcbf1c308581360be73242c0d38
The file was modifiedgen_links.sh.inc
Commit 452a888e4d109dee6559f5130c8000aa09c0fd60 by Oliver Smith
testenv: testsuite: use rsync with --archive

When running in podman, the source files from the testsuite get copied
to a temporary directory to build the testsuites out-of-tree (avoiding
conflicts with possibly incompatible binary objects that may exist from
previously building the testsuites on the host).

This also copies additional scripts for preparation / clean up that may
be used in testenv.cfg. Use the --archive flag with rsync to ensure
that the executability is the same. I could have also used
--executability, but --archive contains two other existing flags and
more flags which may help us from running into unexpected situations
such as this one.

Without this patch, there was a bug when:
* first creating a shell script but not making it executable
* running testenv with podman (where rsync runs and creates the file
  initially without executable permissions)
* making the script executable
* running testenv with podman again, rsync will not adjust the
  permissions for the copy of the file
* user wonders why there is a "sh: 1: script.sh: Permission denied"
  error

Change-Id: Ia9737bd8ba22a555615862bf5e14dbdf0dea19b4
The file was modified_testenv/testenv/testsuite.py
Commit 8e244c004f76c7e5b371ad83c8666442e628741a by Oliver Smith
testenv/README: consistency fix

Add = after the vty_* keys too, like the others.

Change-Id: Ic9828b67f5a81498d0e951dd71b80b36cdd36173
The file was modified_testenv/README.md
Commit 50ae2377c5b423b0836a76791780b19495e69477 by Oliver Smith
testenv: podman.exec_cmd: better error if stopped

Testenv may try to run a comand in podman after the container was
stopped, if there is a bug in the shutdown logic. Give a meaningful
error in that case, instead of failing later on with a cryptic error in
subprocess.run() because None was passed inside cmd (for the container
name) instead of a string.

Change-Id: I29ebe200258a9a9ffb127ec8fa1260b7e2124c38
The file was modified_testenv/testenv/podman.py
Commit dc5b2865c0a0d984a5696d73e2dcda2fc762acd9 by Oliver Smith
testenv/README: deduplicate clean= description

Change-Id: I12dc9adb508a409a6156f9682c9db5684f551b06
The file was modified_testenv/README.md
Commit 426191061deae634f5218a3938e42ba239c63a92 by Oliver Smith
testenv/README: document current working dir

Change-Id: I218507bcbec94a36976fbf57d12ffd083fd2acfb
The file was modified_testenv/README.md
Commit 3d2968521c5125ee88fd39f7f3d44a888f39406c by Oliver Smith
testenv: clean_run_scripts: skip if podman stopped

Do not attempt to run the clean_run_scripts, if podman is being used and
the container has already been shutdown.

Change-Id: I3cc05aabd97b73b65c3089e8806f7a9b32e5975c
The file was modified_testenv/README.md
The file was modified_testenv/testenv/testdir.py
Commit a247aa34831cf0a5580a8e24a0702956392bf032 by Oliver Smith
testenv: copy=: support copying directories too

In preparation for adding the inital testenv.cfgs for ggsn, allow
copying full directories with copy= too. This will make the ggsn
testenv.cfg files easier to maintain.

Change-Id: I8e680fbd93516030614c015d7c3b5bdb153ec487
The file was modified_testenv/testenv/testdir.py
The file was modified_testenv/README.md
Commit ca44f4f3558f0cd7f904bedf8c80ae16cf4a2b9a by Oliver Smith
ggsn: sync GGSN_Tests.cfg with docker-playground

Add parameters that are missing from the config.

Change-Id: I16a8cbd77f52a1ca5c52c045b8d0932e681cc380
The file was modifiedggsn_tests/GGSN_Tests.cfg
Commit fcaa06144464e0ee7315aefa179b70bcfbef0260 by Oliver Smith
ggsn: add testenv.cfgs for osmo-ggsn

Change-Id: I941b859261c1fbf27360673f14f8a79f0cf6f509
The file was addedggsn_tests/testenv_osmo_ggsn_all.cfg
The file was removedggsn_tests/osmo-ggsn.cfg
The file was addedggsn_tests/osmo-ggsn/osmo-ggsn-all.confmerge
The file was addedggsn_tests/testenv_osmo_ggsn_v4v6_only.cfg
The file was addedggsn_tests/osmo-ggsn/testenv.sh
The file was addedggsn_tests/osmo-ggsn/osmo-ggsn-v4_only.confmerge
The file was addedggsn_tests/testenv_osmo_ggsn_v4_only.cfg
The file was addedggsn_tests/testenv_osmo_ggsn_v6_only.cfg
The file was addedggsn_tests/osmo-ggsn/osmo-ggsn-v6_only.confmerge
The file was addedggsn_tests/osmo-ggsn/osmo-ggsn.src.cfg
The file was addedggsn_tests/osmo-ggsn/osmo-ggsn-v4v6_only.confmerge
Commit 74fc0707498ac562c17aaa04ffa317ec4f4a58b6 by Oliver Smith
ggsn: add testenv.cfg for open5gs

Change-Id: If11c0fcba84122d2398cb50208f161b9a3961df6
The file was addedggsn_tests/open5gs/testenv.sh
The file was addedggsn_tests/open5gs/open5gs-smf.yaml
The file was addedggsn_tests/open5gs/freediameter.conf
The file was addedggsn_tests/testenv_open5gs.cfg
The file was modifiedggsn_tests/GGSN_Tests.cfg
The file was addedggsn_tests/open5gs/open5gs-upf.yaml
Commit 4cb3d71bf9ce7488ce4c39537e71febd02379e16 by Oliver Smith
pcap-client: initial testenv.cfg

Change-Id: I44479dfa19390e325e42fa3416cf93260f74aea6
The file was addedpcap-client/testenv.cfg
Commit 157897523e54762ec3739cd7842c7b5f5d724ac2 by Oliver Smith
ruff.toml: new file

Add a file in the root dir of the repository to allow running
"ruff format" in order to auto-format the code with expected max line
length, PEP-8, etc.

Replace _testenv/pyproject.toml with .ruff.toml in the root directory of
the repository, so we can exclude "compare-results.py" which doesn't
follow that code style. Otherwise it would get formatted too when
running "ruff format" in the root dir of the repository.

Change-Id: I97ed1ececba85008ca754cf91bf46522e168a894
The file was added.ruff.toml
The file was removed_testenv/pyproject.toml
Commit a2ea0ac52a14d315d9769e80e979f51c68122685 by Oliver Smith
Cosmetic: testenv: fix line length

Run "ruff format", so there isn't a diff anymore when running it on
future patches.

Change-Id: I766a07c6d54d0da11ad47acce1fc07b4b3a4801b
The file was modified_testenv/testenv/podman.py
Commit 6f020365e24375e3788a4d73622d72b67fc2d9ad by Oliver Smith
testenv: improve --config argument parsing

* Support using wildcards for the config names via fnmatch as that makes
  it much easier to run the ggsn tests against all osmo-ggsn config
  variations, and update the examples in "testenv.py -h" to illustrate
  this.
* Fix that it didn't complain about an invalid --config argument, as
  long as there was a valid --config argument before it.
* Let raise_error_config_arg only output the invalid --config argument
  instead of all of them.
* Complain if "--config all" is used in combination with another
  --config argument.
* Sort testenv*.cfg files found alphabetically, so they are always
  executed in the same order.

Change-Id: I66b976b0332be523c084a6b5d38d0f62134b495d
The file was modified_testenv/testenv/testenv_cfg.py
The file was modified_testenv/testenv/testdir.py
The file was modified_testenv/testenv/__init__.py
Commit 9cc15715929078970d773b5a419fbbe928a84620 by Oliver Smith
ggsn: testenv: fix paths in copy= and clean=

I had moved osmo-ggsn related files to the osmo-ggsn directory and
forgot to adjust testenv_osmo_ggsn_{v4,v6,v4v6}_only.cfg. Fix it by
changing it like it is in testenv_osmo_ggsn_all.cfg

Change-Id: Ibc8aeb43ff594a6b26699f81b29abc31b9b5b71f
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4v6_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v6_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4_only.cfg
Commit b8c0bc745c5d86fd9d5b292e77a54e28505525f7 by Oliver Smith
ggsn: testenv: add libosmocore-utils to package=

Add libosmocore-utils, so osmo-config-merge is installed when running
with --binary-repo too. The osmo-config-merge program is used in
osmo-ggsn/testenv.sh to merge the configs.

Change-Id: I7d97e0f923d928e9b51ff41d50b28706e0e6790b
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4v6_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_all.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v6_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4_only.cfg
Commit faa6fc2d3083e1d074a3a3e6ca8714c920a6d453 by laforge
library: add generic Mutex API for parallel components

In certain scenarios, it's required to ensure that only one of multiple
parallel components executes a specific code block at any given time.

This, for example, is the case for the S1GW testsuite, where we want to
simulate multiple eNBs establishing E-RABs.  Each new E-RAB triggers the
IUT (osmo-s1gw) to send a PFCP Session Establishment Request, and there
is no way for the PFCPEM to correlate which session belongs to which eNB.
This problem can be solved by ensuring that only one eNB is triggering
the PFCP Session Establishment Request(s) at a time.

This patch implements a generic Mutex API, which can also be used
by other testsuites that orchestrate multiple parallel components.

Change-Id: Id71f43bd5fc78d4bb4417d6c01fcff8112ea6032
The file was addedlibrary/Mutex.ttcn
Commit aaa88deeb3ef7f53f9867438ee7fcad9b7df8e11 by laforge
library/PFCP_Emulation: a better PDU routing concept

In recently merged 2962d170 I wrongly assumed, that SEID of outgoing
PFCP PDUs can be used to correlate and route the incoming PDUs.  In
fact, the PFCP peers use two different SEID values, negotiating them
using the F-SEID IE.

We could have implemented a logic to look for F-SEID in the outgoing
PDUs, store and then use it for routing.  However, a more flexible
approach is to allow the the PFCP_ConnHdlr components to subscribe
and unsubscribe to/from specific SEID values explicitly.

In this spirit, let's allow the PFCP_ConnHdlr components to subscribe
and unsubscribe to/from broadcast PDUs (i.e. those, for which the
PFCPEM component could not find a single recipient) explicitly.

Implicit routing using the SeqNr remains unchanged and will be
performed by the PFCPEM component automatically like before.

Change-Id: I25802471519fa297ad4cb2b056adaa6748b00af2
Related: 2962d170 "library/PFCP_Emulation: fix routing of incoming PDUs"
The file was modifiedlibrary/PFCP_Emulation.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 19ef9f42928774f09248f907795c6cbf8c31cf84 by laforge
library: as_pfcp_ignore(): log SeqNr of received PDUs

Printing the PFCP PDU template ('?' by default) is not very informative
when reading logs.  Printing the message type of the received PDU is
not informative either, because message types are defined as numbers
in PFCP_Types.ttcn.  Printing the whole PDU is way too verbose, and
would be redundant given that the PFCPEM component already does print
all received PDUs.  Let's print the sequence number.

Change-Id: I803ff46def4ae0182310bc01e753fe0c05112836
The file was modifiedlibrary/PFCP_Emulation.ttcn
Commit d6bfbe2de135f1ee38ec75859296b4eaad9f55ad by laforge
s1gw: f_init_pfcp(): use 'PFCPEM' as the prefix

Make it clear that it's the PFCP EMulation component.

Change-Id: Ia5413313cffb265f83ea0850e31dfb35274c28ba
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 69a58d44359e08e4c29d84b22c6a2b949a4a7178 by laforge
s1gw: make number of eNBs configurable via module params

... so that we can scale the number of eNBs simulated in the
*_multi TCs without having to touch and compile code.

Change-Id: Ia80b9118e66a5d6721b89d3ba068227d30dcc01f
The file was modifieds1gw/S1GW_Tests.ttcn
Commit ff60a63c2aa656978cfdaf5958e21fadf8462ef5 by laforge
Revert "s1gw: cache PFCP Recovery Timestamp in ConnHdlr"

This reverts commit 7ad95e1cfb00d269069bd052c44a9cae9027f763.

A follow-up commit will remove the need for each ConnHdlr to call
f_ConnHdlr_register_pfcp(), that among with handling the PFCP
association retrieves a PFCP Recovery Timestamp from the PFCPEM.

Caching the PFCP Recovery Timestamp value is not really worth it,
since it's rarely used and can always be retrieved on demand.

Change-Id: I3b1c488e3ec251c7659cd9bc3197cca2f9d03144
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 17f589464ba4063f12f3b03a9a958f492ad6d88f by laforge
s1gw: move PFCP association handling into a dedicated ConnHdlr

Previously, the PFCP association request from the IUT was handled by
the first ConnHdlr component (idx := 0).  While this approach has
worked, it fails when multiple ConnHdlr instances (idx > 0) are spawned.

The problem arises when other ConnHdlr (idx > 0) instances initiate
PFCP procedures before the first ConnHdlr (idx := 0) has established
the association, so we end up playing races.

This patch introduces a dedicated ConnHdlr component to handle the
PFCP association independently.  Once the association is established,
the actual test ConnHdlr instances are spawned, ensuring a more
reliable and orderly process.

Change-Id: I5e1a14105a35b785bf598dc2a8c436ea6fb6b0f1
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 2f6d76c9dd982fbf9c6660e875fb6d3aa3beced6 by laforge
s1gw: add multi-eNB variants of TC_e_rab_setup

The idea is to simulate multiple eNBs establishing one or more
E-RAB(s) simultaneously.  In order to achieve that, use the new
Mutex API to ensure that only one ConnHdlr component is triggering
PFCP session establishment at any given time.

The problem is that there is no way for the PFCPEM component to
correlate which PFCP session belongs to which eNB when multiple
ConnHdlr instances establish E-RAB(s) in parallel.  This can be
solved by making a part of the test scenario synchronous.

Change-Id: I9e2eb25a7ae78ff623b94802d881af4894d0cacd
The file was modifieds1gw/expected-results.xml
The file was modifieds1gw/gen_links.sh
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
Commit fb40c1f25de90fd95dc9553f5db3209967008c66 by laforge
s1gw: add f_ConnHdlrList_all_done()

Change-Id: I20c472dd8ce7f5a25c349cc079bd5bd873be2950
The file was modifieds1gw/S1GW_Tests.ttcn
Commit a2624ff32a4a342c51c62ca4e74ca8f7afa3a538 by laforge
s1gw: f_ConnHdlr_rx_erab_release_cmd(): fix wrong template

Change-Id: Ib6b9f346216aaa9587025e1c580876611e6fa7bc
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit bb187e8180d52b615ec84a407e9caad0207b49fa by laforge
s1gw: add TC_e_rab_release_ind

Change-Id: Icc28a596b7646441761cc3f56653c5f7b3ddaaca
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/expected-results.xml
Commit e87acf9c5fb7ec3dc79115ba3ec7ed1f735024ac by laforge
s1gw: f_ConnHdlr_erab_release_cmd(): add missing logging

Change-Id: I6e4574ebda2459f0a5f23ee51a21a883d079c54a
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 1fb6689026a791e745160f04ea7d03f39c777b27 by laforge
library/s1ap: fix wrong IE ID in E-RABReleaseListBearerRelComp

Change-Id: I22e80f418787c10ccd002e30a329c0271cdd1b8a
Fixes: e59e681c "library/s1ap: add E-RAB RELEASE templates"
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 1f8173137b53a0069fcdd3c9c012a7633875e0b4 by laforge
library/s1ap: fix wrong field in S1AP-RABReleaseInd

Change-Id: I7a24b6401a19a6e37392083b26657bcb45b35cbe
Fixes: e59e681c "library/s1ap: add E-RAB RELEASE templates"
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 15b2f739bcadfc52aee9b12ceed99e91da55dd57 by laforge
library/s1ap: add templates for INITIAL CONTEXT SETUP

Change-Id: I249e34ce91c874d4b6628d367672b58a77da041e
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit a9b2b0f4f977e669136a8e87ea7bbe501b07dc96 by laforge
library/s1ap: fix wrong IDs in {ts,tr}_S1AP_InitialCtxSetupResp

Change-Id: I752f202e891f7f6ff4f8f33b56de90c99c4ab456
Fixes: ce818da5b "library: Add S1AP Templates"
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 860e924b4188f70098eeeb617b78c2b1ad26ea24 by Vadim Yanitskiy
library/s1ap: comment out optional IE in tr_S1AP_InitialCtxSetupResp

Change-Id: I4765036be69ff10adb8c510d4092834c4e923229
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 889be0f14ffdb241f08a6e52576fd09cef802a10 by Vadim Yanitskiy
library/pfcp: fix template restriction in PFCP_Session_Est_Resp

Change-Id: Icf070443ffb7cfff84559db40459d0e9629ad024
The file was modifiedlibrary/PFCP_Templates.ttcn
Commit 8eab02345f91067909e5240f3e66192f0dd4917a by Vadim Yanitskiy
library/pfcp: make Cause IE configurable in all templates

Change-Id: I76e52d3450cca87f5fead0f834fa58ce4902ddd8
The file was modifiedlibrary/PFCP_Templates.ttcn
Commit 1fef9e09d547faa1be822e76358ca9f07ad7e381 by Vadim Yanitskiy
s1gw: TC_e_rab_setup: complete E-RAB release

The MME originated E-RAB RELEASE procedure includes both:

* [ENB <- MME] E-RAB RELEASE COMMAND, and
* [ENB -> MME] E-RAB RELEASE RESPONSE.

The later was overlooked in a99224c9, so add it.

Change-Id: I856248d825b6ecf0635590b7bf02593cfae893d3
Fixes: a99224c9 "s1gw: TC_e_rab_setup: also test E-RAB release"
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 4609bbbc67e2366807423281861a6d81cbd8c9d8 by Vadim Yanitskiy
s1gw: separate f_ConnHdlr_session_{establish,modify}()

Change-Id: I95dc3be975a8f51f7535b96d1580ef70b85fa2e0
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 89064cc591ba3bae7c3b6040f1b510b56acf42d8 by Vadim Yanitskiy
s1gw: add testcases for INITIAL CONTEXT SETUP

Change-Id: I72e3ab932fee1de0fce8ddf4041b8f2174416bc1
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/expected-results.xml
Commit 7108643171a3fc71a75e4ff7434b5252c7df5b2e by Oliver Smith
testenv: podman: disable send_redirects

When starting podman, set the following sysctls to avoid ICMP redirects.
ICMP redirects lead to test failures (TC_pdp4_clients_interact in the
GGSN testsuite), and should not be sent in the test environment in
general.

  net.ipv4.conf.all.send_redirects=0
  net.ipv4.conf.default.send_redirects=0

It is really needed to set both "all" and "default", or otherwise ICMP
redirects still show up. I've seen setting both in this patch:
https://patchwork.kernel.org/project/linux-kselftest/patch/1570719055-25110-4-git-send-email-yanhaishuang@cmss.chinamobile.com/

Fixes: OS#6575
Change-Id: Ie27668f38b80c52ffef4e17b3fe64f0c9109bdea
The file was modified_testenv/testenv/podman.py
Commit 26f4e4bd0286db4262a3dc8c8d378e1a7e850272 by Vadim Yanitskiy
s1gw: add TC_initial_ctx_setup_failure

Change-Id: I969ea6813c9b805d116a974c70ab5f6e6e721e48
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/expected-results.xml
Commit 78be044dadea4470caca6104fd8f53fc490efbf8 by Vadim Yanitskiy
s1gw: move MME_UE_S1AP_ID to ConnHdlrPars

Change-Id: Idac24c54529073855f75bef7bcec87fc68b66e1e
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 32662ad138fdd36fb9962e59711d1e9514417793 by Oliver Smith
testenv: requirements: find programs in /usr/sbin

Fix that testenv complains about a missing setcap program, if it is in
/usr/sbin/setcap and /usr/sbin is not in PATH as it is the case with
Debian. We actually run setcap with sudo when it is needed, and in that
case /usr/sbin gets added to PATH in Debian.

Fix for:
  [testenv] Missing program: setcap

Change-Id: Ibbccba013ac38415ef46467f97bef846b848cf39
The file was modified_testenv/testenv/requirements.py
Commit 23a36504bbed820c4025220577f8dee67b7196e3 by Oliver Smith
testenv: podman: remove mongodb-org.list

Remove mongodb-org.list at the end of building the podman image, as we
only need to install mongodb once in the container but won't use the
repository afterwards. This avoids checking the mongodb repository in
"apt update".

Change-Id: I5a0455a4dbf8a31366bff65fd011fd5494b64ea7
The file was modified_testenv/data/podman/Dockerfile
Commit d2a8a91a86bdc300252aef6f78d052c14e2a47d4 by Oliver Smith
testenv: podman: don't install GUI packages

Install erlang-nox and use the pre-built rebar3 as linked from
rebar3.org, instead of using the Debian package to avoid pulling in
~600 MB of GUI dependencies.

Related: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1083096
Change-Id: I27f58d1f102cf85ff7ff301c52696b65150e2898
The file was modified_testenv/data/podman/Dockerfile
Commit c84c196c6bcd3dc78c5f42fb9c3e3944a6fa88c7 by Oliver Smith
ggsn: osmo-ggsn.src.cfg: tweak log output

* Print log levels.
* Don't print categories as hex.
* Print the basename at the end of the line.
* Remove "logging level lgtp debug", there already is
  "logging level lgtp info" further above, and this is a more sensible
  setting. With "debug" there are way too many log messages in e.g.
  TC_lots_of_concurrent_pdp_ctx.

Change-Id: I771d07645ea6da91f2c93f0954d99a37c866629a
The file was modifiedggsn_tests/osmo-ggsn/osmo-ggsn.src.cfg
Commit 2d00ff393d38f569a817c50ea1d94f16a38c2e50 by Oliver Smith
ggsn: testenv: replace dummy netdev with bridge

Replace the dummy netdev that was used as network device reachable
through the GTP tunnel that can answer ICMP, with a bridge device. The
bridge device fulfils the same purpose, plus it can be used in a future
patch to connect osmo-ggsn when it is running in QEMU with the
testsuite.

Change-Id: I102d5b9ed0b3cafc263ad489ed4d4652f5e6dac8
The file was modified_testenv/data/podman/Dockerfile
The file was added_testenv/data/scripts/add_remove_testenv0_bridge.sh
The file was modified_testenv/testenv/requirements.py
The file was modifiedggsn_tests/open5gs/testenv.sh
The file was modifiedggsn_tests/osmo-ggsn/testenv.sh
Commit b05196bd87251d29d0369d30a3688a49309cbb43 by Oliver Smith
testenv: osmo-dev: build with gtp_linux.opts

Run the osmo-ggsn ./configure with --enable-gtp-linux, in preparation
for testing kernel gtp-u with testenv too.

Related: https://gitea.osmocom.org/osmocom/osmo-dev/src/branch/master/gtp_linux.opts
Change-Id: Ia8ea5494597e0fedae93f501c8bc7d6115543f36
The file was modified_testenv/testenv/osmo_dev.py
Commit 5ac9dc135751a053684a0d572a73879f4b41dd97 by Oliver Smith
testenv: bridge: change default IPs 201 -> 1

During code review it was decided that we want to keep the 127.0.0.1
(and other 127.0.0.x) IPs in the configs, so one can start the testsuite
with osmo-ggsn directly on the host without using testenv scripts too,
with the same config.

The testenv script for osmo-ggsn will replace 127.0.0.x with 172.18.3.x
on the fly before the testsuite starts, so we can run osmo-ggsn
optionally in QEMU on 172.18.3.2, which will be bridged to the host.

172.18.3.1 will be used by the GGSN testsuite now, instead of
172.18.3.201 as previously planned, so change the default IP of the
bridge. The bridge is not used for another testsuite yet.

Add the 201 IPs as EXTRA_IPS for the non-QEMU case, as they are
configured as DNS IPs and tests need to be able to reach them.

Change-Id: Ied055e6e4d6214fd5247694e697a35a1e8ff1966
The file was modified_testenv/data/scripts/add_remove_testenv0_bridge.sh
The file was modifiedggsn_tests/open5gs/testenv.sh
The file was modifiedggsn_tests/osmo-ggsn/testenv.sh
Commit d82c9efed9bc44302d0bf428a0234727c961037e by Oliver Smith
ggsn: testenv: run SUT on bridge instead of lo

Replace IPs in testenv.sh so the SUT runs on 172.18.3.2 (testenv0
bridge) instead of 127.0.0.2 (lo). Later on when we can optionally use
QEMU with osmo-ggsn to test kernel GTP-U. It will then run on this IP as
well. So with this change we can use the same IP for both the QEMU and
non-QEMU case.

Change-Id: Ib768603b0050fe62baff39cab982a850eb91f49a
The file was modifiedggsn_tests/osmo-ggsn/testenv.sh
Commit fffa8ec1f928afe200e94e5a5c4561c2251bf38f by Oliver Smith
ggsn: testenv: change VTY IP

Access the VTY of osmo-ggsn via 172.18.3.2 (127.0.0.2 if running without
testenv), so the testsuite can access the VTY when osmo-ggsn optionally
runs in QEMU too (through the bridge).

Change-Id: I054c19041b3027e7f66d925f031002fefe011c58
The file was modifiedggsn_tests/testenv_osmo_ggsn_all.cfg
The file was modifiedggsn_tests/osmo-ggsn/osmo-ggsn.src.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v6_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4v6_only.cfg
The file was modifiedggsn_tests/GGSN_Tests.cfg
Commit caaa0d631b8a8a4f8ed426455c36ca7e94c62ba0 by Oliver Smith
testenv: support running SUT in QEMU

Add two new arguments -C|--custom-kernel and -D|--debian-kernel. If any
of these is set, pass an environment variable TESTENV_QEMU_KERNEL with
the path to the kernel when running commands from testenv.cfg.

These commands can then source the new qemu_functions.sh and use it to
build an initramfs with the SUT and depending libraries on the fly, and
start up QEMU to boot right to starting the SUT. All of that takes about
~1s on my system with kvm. Without kvm ~5s.

A follow-up patch will adjust the ggsn testenv configs to optionally run
osmo-ggsn in QEMU for testing kernel GTP-U.

These scripts are based on scripts/kernel-tests from docker-playground.

Related: osmo-ci Id64a1a778fa38eec20498c36b390332f75d7d3f5
Change-Id: Ic9cb7092fd029b7ba530fc755b5d4d73a9d86350
The file was added_testenv/data/scripts/qemu/qemu_ifup.sh
The file was modified_testenv/testenv/__init__.py
The file was added_testenv/data/scripts/qemu/qemu_init.sh
The file was modified.gitignore
The file was modified_testenv/README.md
The file was modified_testenv/testenv/requirements.py
The file was modified_testenv/data/podman/Dockerfile
The file was added_testenv/data/scripts/qemu/qemu_wait.sh
The file was added_testenv/data/scripts/qemu/qemu_functions.sh
The file was modified_testenv/testenv/podman.py
The file was modified_testenv/testenv/cmd.py
The file was modified_testenv/testenv/testenv_cfg.py
Commit 69aa39abf63ffd19aecb3502dec7251c0e77350d by Oliver Smith
ggsn: testenv: support running osmo-ggsn in QEMU

Run osmo-ggsn optionally in QEMU, to test the kernel GTP-U feature
with different kernels.

Related: OS#3208
Change-Id: I3f9db4325d5928c809cc99bc82d9cb82bf9e71eb
The file was modifiedggsn_tests/testenv_osmo_ggsn_all.cfg
The file was addedggsn_tests/osmo-ggsn/run.sh
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4v6_only.cfg
The file was modifiedggsn_tests/osmo-ggsn/testenv.sh
The file was modifiedggsn_tests/testenv_osmo_ggsn_v6_only.cfg
The file was modifiedggsn_tests/testenv_osmo_ggsn_v4_only.cfg
Commit ed4ccbf3ee288c599a357a5d89ef39bae4256b0d by Oliver Smith
Cosmetic: ggsn: fix copy paste error

Change-Id: Iad2424036ff3dd45a9cd67f28249fbb06e657e62
The file was modifiedggsn_tests/GGSN_Tests.ttcn
Commit 793ee0df8149d257e4da80405290f53a008cacdf by lynxis
L3_Templates: GMM: fix off-by-one error in ServiceType IE

The ServiceType IE is used in the GMM Service Request.

Change-Id: I79337fa31ffa82f766c6a1f238739c5e10773823
The file was modifiedlibrary/L3_Templates.ttcn
Commit 28b47ddc24924508d554710e03eff05021408f0d by Pau Espin Pedrol
update osmo-stp.cfg to make STP_Tests work at all again

This syncs osmo-stp.cfg with changes introduced to docker-playground
in Change-Id I210b7d62845075dcfe147f2f77603625cc1e64f9 on March 4th.

I'm really getting tired at fixing up those kind of issues. It's
well-known that config changes must be made first here and then in
docker-playground.

Change-Id: I7f0cef55a9a54f1cc4b23df781dab2afd52aae78
The file was modifiedstp/osmo-stp.cfg
The file was removedstp/osmo-stp-tcp.confmerge
Commit 744d42f5745514ff56a7ff91d468e1e984041706 by Pau Espin Pedrol
Replace libosmo-sccp references with libosmo-sigtran

Change-Id: I8556a9eb4e111340e2415c5adf0ad91927ce53ec
The file was modifiedsgsn/testenv_sns.cfg
The file was modifiedsccp/SCCP_Tests_RAW.ttcn
The file was modifiedsmlc/testenv.cfg
The file was modifiedsgsn/testenv_generic.cfg
The file was modifiedsccp/SCCP_Tests.ttcn
The file was modified_testenv/testenv/podman_install.py
Commit 6f37f2f6a6c10b80f24b88ee631443b5ba3bd6ee by Pau Espin Pedrol
_testenv: Avoid running make check when building IUT

In here we want to build stuff to run ttcn3 tests, not unit tests.

Change-Id: I1b5dd0947a1bd937775a74bceb88dcf3bbcf914b
The file was modified_testenv/testenv/osmo_dev.py
Commit e85c0c3069f03068d7187bf971a3e4139f5c4bd0 by Pau Espin Pedrol
stp: Support running with testenv

The osmo-stp.cfg was not up to date with the one further updated in
docker-playground.git.

Change-Id: I43fefc206fbc7f3a4fba9e4d4ba4386e5ca748f7
The file was modifiedstp/osmo-stp.cfg
The file was addedstp/testenv.cfg
Commit e72c295fdd725246b50d8c90f9199483d68f349b by Oliver Smith
library/GTPv1U_Templates: support sending ext hdrs

Replace the seq (sequenceNumber) parameter in ts_GTP1U_PDU with
opt_part (GTPU_Header_optional_part). opt_part contains seq:

  type record GTPU_Header_optional_part {
    OCT2                       sequenceNumber,
    OCT1                       npduNumber,
    OCT1                       nextExtHeader,
    GTPU_ExtensionHeader_List  gTPU_extensionHeader_List optional
  }

With this change it is possible to set the extension headers too when
sending GTPU packets. This is in preparation for a GGSN test case with
extension headers.

Related: OS#6223
Change-Id: I5b1668d45f4454f92c234054678e17145bd4fe49
The file was modifiedepdg/EPDG_Tests.ttcn
The file was modifiedlibrary/GTPv1U_Templates.ttcn
The file was modifiedggsn_tests/GGSN_Tests.ttcn
The file was modifiedhnodeb/HNBGW_ConnectionHandler.ttcn
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit 6fe837de206c2c927ce44a8d53e1fb377b475937 by Oliver Smith
testenv: podman: restart_count in container_name

When running testsuites with multiple configurations in a row, as it is
the case with the ttcn3-ggsn jobs in jenkins, the podman container gets
restarted whenever switching to the next config.

Use a different name for each container by appending a restart count.
This should fix that podman sometimes didn't fully shutdown the
container yet and complains that the container name is already in use.
This happens even though we use "podman kill" and "podman wait" on the
previous container. When checking later, the container is really gone
and the same name can be used, it seems that it just needs some more
time to shutdown in some cases.

Fix for:
> Error: error creating container storage: the container name
> "testenv-ggsn_tests-osmo_ggsn_-osmocom-nightly-20241012-0752-2eb85125" is
> already in use by "8b7ea42371a922ffbf4e966b853124b98cd25c9905ae443fefb4115a103d7779".
> You have to remove that container to be able to reuse that name.: that name is already in use

Related: https://github.com/containers/podman/issues/2553
Related: https://jenkins.osmocom.org/jenkins/job/ttcn3-ggsn-test/2674/console
Change-Id: Ia791be2fee69765293ce7a7a058319c92bb92714
The file was modified_testenv/testenv/podman.py
Commit a9c2ec6965909b7c2f443c1ecd6a582c5cca8cf2 by Pau Espin Pedrol
sgsn: Validate TLI received in RAB Ass Req

Related: OS#6508
Change-Id: I3a3699cea981caa89b30742c031d5f232418b0ee
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
The file was modifiedsgsn/gen_links.sh
The file was addedlibrary/ITU_X213_Types.ttcn
Commit 1fb571d4fe7765d2e429a7125c9c2fa7990086d7 by Pau Espin Pedrol
sgsn: Test tx Rab Ass Resp with ITU X.213 IPv4 address format

Related: OS#6508
Related: SYS#7119
Change-Id: I38dd85f617600a974cbe8fd17597282eaf950a78
The file was modifiedsgsn/SGSN_Tests.ttcn
The file was modifiedsgsn/expected-results.xml
The file was modifiedsgsn/SGSN_Tests_Iu.ttcn
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit 7bdbd1d5264abf496795e0c2a74e96f07efd3e5f by Pau Espin Pedrol
sgsn: Introduce test TC_attach_pdp_act_user_addr_itu_x213_ipv4toolarge

Related: OS#6508
Related: SYS#7119
Change-Id: Id2501e38565db491a6248552e754f03f7b973997
The file was modifiedsgsn/expected-results.xml
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
The file was modifiedsgsn/SGSN_Tests_Iu.ttcn
Commit e62b03c45dfbb94b8ba8cccf775979e7ef1e00fe by Pau Espin Pedrol
sgsn: Improve validation of TLA encoded in RAB Ass Req

Validate received TLA in RAB Ass Req according to confguration and test
expectancies.

Related: OS#6508
Related: SYS#7119
Change-Id: I725bf39c5564fb320954fc9e387ac569fc1a0136
The file was modifiedsgsn/SGSN_Tests_Iu.ttcn
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit f7ad820eb83bd92df4fb831ce438fe7287f1555c by Pau Espin Pedrol
cosmetic: sgsn: Fix indenation whitespace

Use tabs as done in all the file.

Change-Id: I8cb9283fee9d5a4ff5c34b9cde4d8fcce400343a
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit 6734ee53b419cfe30e85bceb7e30cf8bb853de41 by Oliver Smith
ggsn: README: document how to run with testenv

It is possible to run the GGSN testsuite in a lot of ways (as it was
ported from docker-playground, which had the same variations but with a
less consistent way of running them).

Document how it is typically run for development / in jenkins. This
should make it easier for users, in addition to testenv already telling
which configs are available if trying to run the ggsn testsuite without
the -c argument, and to the general help output in "./testenv.py run -h".

$ ./testenv.py run ggsn
[testenv] Using testsuite ggsn_tests (via alias ggsn)
[testenv] Found multiple testenv.cfg files:
[testenv]  * testenv_open5gs.cfg
[testenv]  * testenv_osmo_ggsn_all.cfg
[testenv]  * testenv_osmo_ggsn_v4_only.cfg
[testenv]  * testenv_osmo_ggsn_v4v6_only.cfg
[testenv]  * testenv_osmo_ggsn_v6_only.cfg
[testenv] Select a specific config (e.g. '-c open5gs') or all ('-c all')

Change-Id: I49421151b199fa6536da784b6c412b03f3fdbd05
The file was modifiedggsn_tests/README.md
Commit 6bba94c76d17cf541f70ea5c975b6402b0820978 by Pau Espin Pedrol
library/GTPv1C_Templates: Lots of improvements in template declarations

Also most the compiler warnings are fixed, only some which require
special more complex attention are left as is.

Change-Id: I38a4b1c5874fda173a7b89122c84cb83ac71a036
The file was modifiedsgsn/SGSN_Tests.ttcn
The file was modifiedlibrary/GTPv1C_Templates.ttcn
The file was modifiedmme/MME_Tests.ttcn
Commit 2c10e94d32d53a476fe13a70c6e6ac10e80987c0 by Pau Espin Pedrol
cosmetic: library/GTPv1C_Templates: remove extra indentation level

The extra first indentation level around 99% of the file just loses
space which makes it difficult to keep templates at an acceptable width.
Do similarly to what we already do in lots of other template files which
were added later than this one.

Change-Id: I87755ec0a9023e79fb5f7a40c6c1734dca44696b
The file was modifiedlibrary/GTPv1C_Templates.ttcn
Commit 4d0d30a59b5d02995d4ac6be2dddf3d18e6422aa by Pau Espin Pedrol
library/GTPv1C_Templates: Clean up PCO templates

* Define a generic ProtoElem template and use it everywhere.
* User superset instead of "*, tr_..., *" construct.

Change-Id: I005a6dea0606bcb677260f85b24396b55a150153
The file was modifiedlibrary/GTPv1C_Templates.ttcn
Commit 2f102a80f19ca72cc42a7066d7e9bd0a1de597ac by Pau Espin Pedrol
mgw: Remove unneeded dep IPCP_Types.ttcn

Change-Id: I318f4ba78adf778820e8d65d5932e454bc5da670
The file was modifiedmgw/gen_links.sh
The file was modifiedmgw/MGCP_Test.ttcn
Commit 436fc24ff1c55b4cec4d5b001c5980e9b6d9bc32 by Pau Espin Pedrol
s1gw: Remove unneeded dep IPCP_Types.ttcn

Change-Id: Iad81c8d76efa2618ca7e354d2b73617a54a8d5ee
The file was modifieds1gw/gen_links.sh
Commit cca9a92cd01610a390a33fb97e1286193a9963b8 by Pau Espin Pedrol
library: Move IPCP templates GTPv1C_Templates.ttcn -> IPCP_Templates.ttcn

We already have an IPCP_Types.ttcn, and the GTPv1C_Types from
ProtocolModules dep we use doesn't actually specify any record for IPCP,
so those are totally protocol independent.

Change-Id: I233292ea886e1b69a2f9aa1a159c816791b47136
The file was modifiedggsn_tests/GGSN_Tests.ttcn
The file was modifiedpgw/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedlibrary/GTPv1C_Templates.ttcn
The file was modifiedgbproxy/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was addedlibrary/IPCP_Templates.ttcn
The file was modifiedggsn_tests/gen_links.sh
Commit 45c9f8f5c9285c275e882a143b11c022e0d948cf by Pau Espin Pedrol
library/PCO_Types: Drop unused nonsense enum

That enum is PAP related, plus it doesn't really match the section
describing, plus it's not used anywhere.
Looks like a development artifact which was not dropped during submit.

Change-Id: Ic791d20dd600b039daa2abef7fa25aaa6780a448
The file was modifiedlibrary/PCO_Types.ttcn
Commit 3f2ed83e7307746b881e3c0a7ac4e2cf727fe735 by Pau Espin Pedrol
library/PCO_Types.ttcn: Drop unsued IPCP_OPT enum

It is unused, plus IPCP_Types.ttcn already defines a more complete enum
in IpcpConfigOptCode.

Change-Id: I867ab36063db262b46fc4546c17a902699a6e37c
The file was modifiedlibrary/PCO_Types.ttcn
The file was modifiedlibrary/IPCP_Types.ttcn
Commit 54eb13f86a1db021eb018e6326766717f7142a48 by Pau Espin Pedrol
ggsn: Introduce test TC_pdp4(6)_act_deact_mtu

This tests so far only test retrieval of MTU over PCO, which is only
used for IPv4 APNs.
When IPv6 is in used, it is expected to be retrieved over IPv6 SLAAC RA.
Such tests will be done in a follow-up patch once the related procedure
is implemented in osmo-ggsn.

Related: OS#6298
Related: SYS#7122
Change-Id: I2ceb76a3a07b44f69937c9f5a040482320bca377
The file was modifiedlibrary/PCO_Types.ttcn
The file was modifiedggsn_tests/GGSN_Tests.ttcn
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedlibrary/GTPv1C_Templates.ttcn
The file was modifiedggsn_tests/expected-results.xml
Commit 4c0cd581453b17e7eb7e3267583194417efb1147 by Pau Espin Pedrol
ggsn: Validate MTU sent during ICMPv6 RA

Related: OS#6298
Related: SYS#7122
Change-Id: Ia5bbc5f9e42b02d1b9bd6c4190a2bd439663deeb
The file was modifiedggsn_tests/GGSN_Tests.ttcn
The file was modifiedggsn_tests/expected-results.xml
The file was modifiedlibrary/ICMPv6_Templates.ttcn
Commit 2329259de3634324cb108e447cc001a2f045611f by Pau Espin Pedrol
ggsn: Request osmo-ggsn to apply the MTU on the tundev

Depends: osmo-ggsn.git Change-Id Ifae556169d895860812c9ea5633292d7e3fab338
Related: OS#6298
Related: SYS#7122
Change-Id: Ie55c8b41f5a4a128f999474c3fad1926099b3624
The file was modifiedggsn_tests/GGSN_Tests.ttcn
Commit 2cafd10ade08b377dc939fff383b124794726a86 by Oliver Smith
ctrl: tweak errmsg for counter mismatch

- instead of "-1", print "not present", so humans know what is
  happening.
- the comma separated args in setverdict() create a lot of weird quotes.
  Use string concatenation to have only one set of quotes around the
  entire error message.

Related: OS#6545
Tweaked-by: Oliver Smith <osmith@sysmocom.de>
Change-Id: I672fcef819a6542a5b3bcfa0a6d9c84d34b468f3
The file was modifiedlibrary/Osmocom_CTRL_Functions.ttcn
Commit 5cf0b7fb0c141de9b7192777928593e2651984c4 by Oliver Smith
testenv: qemu: get coredump and show backtrace

If the SUT crashes inside QEMU, copy the coredump via 9p to the outer
system (either host or podman) where we have the same binaries and also
debug symbols, and run gdb there to show the backtrace.

Related: OS#6600
Change-Id: Ia08ac58c43388b5ea4d3712c5ef83f54b538b10a
The file was modified_testenv/data/scripts/qemu/qemu_init.sh
The file was modified_testenv/data/scripts/qemu/qemu_functions.sh
Commit 345509c592401b58fb8d1c1bac3fe7e55afe8a16 by Oliver Smith
pcu: add testenv.cfg

Change-Id: I57956a0bb5d5e164c3f840815573164e52300459
The file was addedpcu/testenv_sns.cfg
The file was addedpcu/testenv_generic.cfg
Commit a092e8488c81afc9d18028605c569c1d304e73f9 by Oliver Smith
bsc/osmo-bsc-sccplite.cfg: add trx1, trx2

Synchronize with the config in docker-playground.

Change-Id: Ia959c725b9efee5ccf6a67e22e740a60b4fd28b9
The file was modifiedbsc/osmo-bsc-sccplite.cfg
Commit 522aa727683dc6a748637ed29c27d25806a490db by Oliver Smith
bsc/osmo-bsc{,-vamos}.cfg: add no missing-msc-text

Copy this option from the config in docker-playground to have less
cluttered output.

Change-Id: I0735e5bce207961ab960294c9f39404ab64a3fb1
The file was modifiedbsc/osmo-bsc.cfg
The file was modifiedbsc/osmo-bsc-vamos.cfg
Commit 923e442a823fd85a1766d18ffac376cbf72d53f7 by Oliver Smith
bsc/osmo-stp.cfg: sync with docker-playground

Change-Id: I32fc1374d92405d642027e0c61fdd6a297cd7807
The file was modifiedbsc/osmo-stp.cfg
Commit e7a32d954e4002c85e0f9f87d106232dcfb9e115 by Oliver Smith
bsc: add testenv.cfg

Change-Id: Ib2e92a9ebd78f5553161bcca433f39c7c39f3adf
The file was addedbsc/testenv_sccplite.cfg
The file was addedbsc/testenv_generic.cfg
The file was addedbsc/osmo_bts_omldummy.sh
The file was addedbsc/testenv_vamos.cfg
Commit c9242ab93319ed1df95250d31328ee2635a72100 by Oliver Smith
testenv: improve output for missing -c argument

When a testsuite has multiple testenv.cfg files, the user needs to
explicitly choose a config, or "-c all" for all configs. Improve the
help output to directly print the arguments that need to be passed,
instead of printing the config file names. Mention that wildcards can be
used too.

Old:
  [testenv] Found multiple testenv.cfg files:
  [testenv]  * testenv_generic.cfg
  [testenv]  * testenv_sccplite.cfg
  [testenv]  * testenv_vamos.cfg
  [testenv] Select a specific config (e.g. '-c generic') or all ('-c all')

New:
  [testenv] Found multiple testenv.cfg files, use one of:
  [testenv]  -c generic
  [testenv]  -c sccplite
  [testenv]  -c vamos
  [testenv] You can also select all of them (-c all) or use the * character as wildcard.

Related: OS#6494
Change-Id: I3f273caff702b33d3d74a9e5c8d77b22f27d7cfc
The file was modified_testenv/testenv/testenv_cfg.py
Commit 14d4a2805d6790aa410f6c5c1d7328c71bdaef84 by Oliver Smith
testenv: osmo-dev: add hint for gen_makefile fail

When gen_makefile.py from osmo-dev fails, it is likely that the osmo-dev
git clone is outdated, for example if a new file with configure options
was added to osmo-dev.git and is now being used by testenv. Display a
hint for pulling this repository to the user.

Change-Id: Ia9ed23fa910876252093054f5f389865632c7593
The file was modified_testenv/testenv/podman.py
The file was modified_testenv/testenv/osmo_dev.py
Commit c1c05554fddeb3502492b49f361a2dd4a67f3e04 by Oliver Smith
hnbgw: Support testenv

Change-Id: Id2bcc4e13881db01b8e4d9f1738355b8d779fa63
The file was modified_testenv/testenv/osmo_dev.py
The file was modifiedhnbgw/osmo-hnbgw.cfg
The file was addedhnbgw/testenv_generic.cfg
The file was addedhnbgw/testenv_with-pfcp.cfg
The file was addedhnbgw/HNBGW_Tests-with-pfcp.cfg
The file was modifiedhnbgw/osmo-hnbgw-with-pfcp.cfg
Commit c009d49e97b9302ccb411567fb23a9f3e760e40c by Oliver Smith
testenv: remove dead code for [testsuite] prepare=

Remove some WIP code that I intended to use for enabling the mongodb
repository before installing binary packages, to be able to dynamically
install mongodb from there. I solved it differently by just always
having mongodb in the podman image.

This was a dead code path because configs with prepare= in [testsuite]
are currently not valid, and therefore testenv refuses to use these
configs (see keys_valid_testsuite in testenv_cfg.py's verify()).

I have a different use case for running prepare= before running the
testsuite, to replace a module parameter in the testsuite's config. This
will be done in the next patch.

Change-Id: I9bed48612fad690f86017c298372dc6cea22b94b
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv.py
Commit c568521460426c78a7cc7f68de38af6dfe2c4921 by Oliver Smith
testenv: add proper [testsuite] prepare= support

Support using prepare= in the [testsuite] section to e.g. change module
parameters:

  [testsuite]
  prepare=sed -i 's/mp_my_parameter := false/mp_my_parameter := true/' Testsuite.cfg

Move the execution time of prepare and clean scripts in
testdir.prepare() after the testsuite config has been copied to the
testdir, so it can be modified by the prepare script.

Change-Id: Ia78a4eba061e5e070f156f75eae1dfa4cede1ee3
The file was modified_testenv/README.md
The file was modified_testenv/testenv/testdir.py
The file was modified_testenv/testenv/testenv_cfg.py
Commit 4fe47f78a000f7b7048f0c5b7883db881015bdbf by Pau Espin Pedrol
hnbgw: Split ConnHdlr component code to its own file

Similar to what we do in most of the testsuites, split Component generic
code from test specific code.

Change-Id: I3a58c27a7472eea2421a45c31ac0145eb57a1f7e
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was addedhnbgw/ConnHdlr.ttcn
Commit 6ac0838dd48308f165343f32f3e9ae47848d121e by Pau Espin Pedrol
RAN_Emulation: Introduce field ranap_connect_ind_auto_res

This field allows skipping automatic response of the connect_ind, hence
allowing ConnHdlr to totally skip it, delay it, or generate a CREF by
means of sending RAN_Conn_Prim:MSC_CONN_PRIM_DISC_REQ to RAN_Emulation,
as per ITU Q.711 Figure 8.

Change-Id: I5a69990e3a0839dd3c25c7dc66e6bcf66123fbff
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedlibrary/RAN_Emulation.ttcnpp
The file was modifiedsgsn/SGSN_Tests.ttcn
The file was modifiedmsc/BSC_ConnectionHandler.ttcn
Commit a1b2a9922fd457d59706fbe3ea70d272c4d13958 by Pau Espin Pedrol
hnbgw: Allow modifying RanOps during test startup

This will be used by a test to skip response to CONNECT.ind, allowing
transmission of DISCONNECT.req and hence transmitting CREF over the
wire.

Change-Id: Ib9462ba41b16375348b086d7ffe9f5755ae26f84
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 6b21f7b3794e29b722ba62e8c1b69e065e9229cd by Pau Espin Pedrol
Convert RAN_Conn_Prim from enum to union

This will allow passing parameters in each primitive.
This is needed eg. to pass the reason in DISCONNECT.req.

Change-Id: I17994795b51efc7e6700238ddcf45594af653e42
The file was modifiedbsc/BSC_Tests_LCLS.ttcn
The file was modifiedlibrary/RAN_Emulation.ttcnpp
The file was modifiedmsc/MSC_Tests.ttcn
The file was modifiedmsc/BSC_ConnectionHandler.ttcn
The file was modifiedbsc/BSC_Tests_ASCI.ttcn
The file was modifiedbsc-nat/BSC_MS_ConnectionHandler.ttcn
The file was modifiedbsc/BSC_Tests.ttcn
The file was modifiedmsc/MSC_Tests_Iu.ttcn
The file was modifiedsgsn/SGSN_Tests_Iu.ttcn
The file was modifiedbsc-nat/MSC_ConnectionHandler.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit b9ded6e8ac7bbd34128e68c457cb986d8cc2d853 by Pau Espin Pedrol
RAN_Emulation: Allow setting reason in primitive MSC_CONN_PRIM_DISC_REQ

This allows setting a specific reason in the CREF transmitted on the
wire, other than "End user originted (0)".
A follow-up commit will add a test in HNBGW_Tests where an emulated MSC
answers with CREF reason "End user failure (0x02)".

Change-Id: I1fa1148135625d840426b52450bf52da10448471
The file was modifiedlibrary/RAN_Emulation.ttcnpp
Commit 4672af0114f0d611958a982ca277b8a52974ed73 by Pau Espin Pedrol
hnbgw: Fix TC_ranap_ps_mo_disconnect testing CS instead of PS

Change-Id: I16a446a9de0a40f37a4af0bf54bcf0bd49b2d47f
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit c416a68ec5188278371d0a8bd3490b6644c15132 by Pau Espin Pedrol
hnbgw: Drop unused template

Change-Id: I7dfce4485a6eaeabcdf1755619509b4b0f2bff65
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit c6707608b05e070ffdc58889a2aafa9e359e1a2d by Pau Espin Pedrol
hnbgw: Introduce test TC_ranap_{cs,ps}_creq_cref

Related: SYS#6602
Change-Id: I0313ea741feca90492e25f0adc1c04844a860e41
The file was modifiedlibrary/SCCP_Templates.ttcn
The file was modifiedhnbgw/expected-results.xml
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit a124a23b12aed7bba9b1888e934a7f31456888d6 by Pau Espin Pedrol
hnbgw: Set sccp_addr parameters during init

Those will be needed by other tests using UNITDATA primitives to send
RANAP ResetResourceAck.

Change-Id: I53f7e2e0a4622bb25667053b0b80e743e5f493bd
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 38a063aa8d955f5b729a3e2dcddb78ea43c50c30 by Pau Espin Pedrol
hbngw: Store IuSigConid in ConnHdlr params

A follow-up patch will want to use the value to register it in order to
get RANAP ResetResource messages.

Change-Id: I7eb5716debcad8427c15341612d37152ca894e5a
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 6e16d2d20e395e346f7b8131b0710af585ba57eb by Pau Espin Pedrol
RANAP_Templates: Add templates for ResetResource(Ack)

Change-Id: If6357c19b39ef63057a2d8d471975185f0161b22
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
Commit 86e5371c9e5d33bbae6bc4167fc135a8d6dc27ec by Pau Espin Pedrol
RAN_Emulation: Support registering IuSigConId for connectionless RANAP messages

This allows dispatching received RANAP connectionless (UNITDATA)
messages which target potentially existing connections identified by
IuSigConId, like RANAP Reset Resource (Ack) messages.
Dispatching it to relevant ConnHdlrs allows explicitly waiting to
receive the message and answer from there.

Change-Id: I6a00a425ce52cb0c71b03b545207f27befa11a71
The file was modifiedlibrary/RAN_Emulation.ttcnpp
Commit 869b697a399ea5e6560af784adc92efd0af11049 by Vadim Yanitskiy
s1gw: use the new counter name (out_pkt.forward.unmodified)

Change-Id: I037fea187bb78ba0d4b82d30915c5270d4cd28bb
Related: osmo-s1gw.git I952e198238384dca4be94f91a01d7cfff0a1471f
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 9c3d5b9beb5033c0491469093df1e865689e6e46 by Pau Espin Pedrol
RUA_Emulation: Support passing no RANAP PDU in RUA_Disc_Req

Change-Id: Id9c3d5a1e45aa6ca58a71b61e142dc041a335cc9
The file was modifiedlibrary/rua/RUA_Emulation.ttcn
The file was modifiedlibrary/rua/RUA_Templates.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 17329a909a62e3c055780b0ac6470bbf560a5b89 by Pau Espin Pedrol
hnbgw: Add missing timer stop after use

Change-Id: I2c722f524de603b75f2b7c6ba85d074518d1f51c
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 0135d187401d3a40dd81706b922de8823d9bab14 by Pau Espin Pedrol
hnbgw: Get rid of pars param in void_fn

Store pars into component field "g_pars" before caling void_fn.
This simplifies ConnHdlr test functions and also avoids potential
problems modifying pars vs g_pars.
This is the same as we do in lots of other testsuites.

Change-Id: I674b2a6a6a0e39f2904f9125783180da8ade5f44
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 00f332eca58e81ae366deaf21e6ce8d2cfc79d97 by Oliver Smith
testenv: run podman command with logfile

In very rare cases it seems podman is just crashing with no reason in
jenkins. Add logging to the main script we run inside podman, and run
podman with a logfile attached to figure out why.

Related: OS#6607
Change-Id: Ife3c0ae559c94f7df8b5912bb0e338ae6283cb7f
The file was modified_testenv/testenv/podman.py
The file was modified_testenv/data/scripts/testenv-podman-main.sh
Commit 2978fad2273fc8f0db4b2eba315f52bbba5db777 by Vadim Yanitskiy
library/s1ap: fix wrong IE criticality in templates

Related sections in 3GPP TS 36.413:

* 9.1.3.2 E-RAB SETUP RESPONSE
* 9.1.3.6 E-RAB RELEASE RESPONSE

Change-Id: I3fd9efc4c504037758b3d97e920776123f2141e9
Related: SYS#6772
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit ce2c44c1e2e941caa7a69ebbb660ef9e904fcf66 by Vadim Yanitskiy
library/s1ap: rework {ts,tr}_S1AP_RABSetupRsp templates

3GPP TS 36.413, section 9.1.3.2 "E-RAB SETUP RESPONSE" defines
the following two IEs as optional:

* E-RAB Setup List IE: 0..1 in the Range column means that
  it can either be omitted (0) or included only once (1);
* E-RAB Failed to Setup List: 'O' in the Presence column.

Our templates for this S1AP PDU require the former to be a value
(as if it was mandatory) and do not allow passing the later.

Change-Id: Ic369ae720179483a19383af2bddf56186965eae3
Related: SYS#6772
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 47544443bde2e01750bc03e9622ec8f61f91881e by Vadim Yanitskiy
s1gw: add TC_e_rab_setup_failure

Change-Id: I97102292678e732265dcae04d60f7a708a5246dc
Related: osmo-s1gw.git I242e84fb09b00f4794b6e1aa770f348a0e60aea4
Related: SYS#6772
The file was modifieds1gw/expected-results.xml
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 25fc127c9fd1dafea51db1f8d617ef6cf0db870d by Oliver Smith
hnbgw: test for RUA Disconnect when there is no CN

Related: OS#6283
Related: osmo-hnbgw Iafb30c31a4c5db53ecdda99a0e0b5937b71e362c
Tweaked-by: Oliver Smith <osmith@sysmocom.de>
Change-Id: I2b5c024a395e736538c0c37db40d34f3b8d99991
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit aeb0a0c236854129fe8b71f4d8e492251a36d234 by Pau Espin Pedrol
hnbgw: Send meaningful RANAP messages in f_tc_ranap_mo_disconnect()

Fix the code to send the messages that were fore sure intended, where an
MO disconnect is triggered.
This allows attaching more to reality, plus making it easier to follow
up the test in wireshark and in the code.

Change-Id: I9a2bb35d58c6cdda312638103ef5c3c2f5661e62
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit ffec46faf1559b498eb4fb2a27a520be276fd94d by Pau Espin Pedrol
hnbgw: Introduce test TC_cs_iu_release_req_rua_disconnect

Related: SYS#6602
Change-Id: I6782920c4a86d3311eb54239ab13a18e393c1ec0
The file was modifiedhnbgw/expected-results.xml
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit cd30b5380cfc6f0400989852fea35d74ce7c9ec6 by Oliver Smith
hnbgw: fixup for expect_compl_l3_success

During my rebase of Neels patch, I've missed setting
expect_compl_l3_success in t_pars(), leading to:

  HNBGW_Tests.ttcn:571 Dynamic test case error: Text encoder: Encoding an unbound boolean value.

For a lot of tests. Also add the parameter to f_TestHdlrParams() for
consistency.

Fixes: 25fc127c ("hnbgw: test for RUA Disconnect when there is no CN")
Change-Id: Idbfcb77a80d74f7715ef1f84ba4cbfdb08483a5c
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 2f6d1bb9be96a48414bf402201b949c75e0e13bb by Pau Espin Pedrol
hnbgw: Rename RAB helper functions to be CS specific

Change-Id: If8a97fe847083e95a480006d147ff59be695b713
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit ab24560830c80b1f676b33ba8c8beeec636ea394 by Pau Espin Pedrol
hnbgw: Use g_pars.mgcp_pars directly during RAB CS setup

Change-Id: I1f699e197e29f912ad06378f10563063aa291af3
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit a487d2b0e8c349d50f68e7f5c43c0ef939b07736 by Oliver Smith
hnbgw/expected-results: update

Add:
* TC_hnb_disconnected_timeout
* TC_mscpool_L3Compl_no_cn
* TC_sgsnpool_L3Compl_no_cn

Fixes: 25fc127c ("hnbgw: test for RUA Disconnect when there is no CN")
Change-Id: Ib126ff53aa9edfeb94f5e7e058145bd4fbe7b604
The file was modifiedhnbgw/expected-results.xml
Commit 9eb5e696a0997e0de8db0248ba8be31ebb2cdac9 by Oliver Smith
testenv: make podman stop more robust

Terminate the watchdog process before killing the podman container. This
avoids bogus errors from a race condition where the container gets
killed first, and then the watchdog process tries to feed the watchdog
and fails:

  [testenv] Stopping podman container
  [testenv] + ['podman', 'kill', 'testenv-hnbgw-all-osmocom-latest-20241031-1222-f34534a5-1']
  e41700779a8ca5daf18ac5daa27d59a84d8442196e352f2756a19baf0592cf89
  Error: no container with name or ID testenv-hnbgw-all-osmocom-latest-20241031-1222-f34534a5-1 found: no such container
  [testenv] podman container crashed!

While at it, use "check=False" with the "podman kill" command, so we
avoid additional error messages if the container was already killed at
that point (could happen through a bug). If we fail to kill it here, it
is not a problem because the watchdog will ensure it terminates shortly
after the watchdog process was stopped.

Related: OS#6607
Change-Id: I6c67273af5b6a80ae0c94e14cb92e3784807c21d
The file was modified_testenv/testenv/podman.py
Commit ec53670dee3ab32dc75b8c9196aa363ac7df3ac2 by Pau Espin Pedrol
hnbgw: Move gtp_pars to Connhdlr

Change-Id: I40f723256b592d0d9141dfd192a1623a4804b4ea
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit a75e766b02e7b74e6140806193ad507053363ed5 by Pau Espin Pedrol
hnbgw: Introduce PfcpParameters in TestHdlrParameters

This allows creating generic functions to establish PS RABs based on
test setup configuration.

Change-Id: I5de50bb7032891a073e4e4e25b2dc86bc84e3d60
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 6d675c717d9664baf683842234fcba3ca1e97fd6 by Oliver Smith
bsc: testenv: set MTU=1500 for lo

Two tests are failing if the MTU is 65536 instead of 1500. This is an
upstream bug in titan.TestPorts.SCTPasp:
https://gitlab.eclipse.org/eclipse/titan/titan.TestPorts.SCTPasp/-/issues/3

Add a workaround so the behavior of the test environment is the same as
with docker-playground and the tests can pass again.

Related: OS#6602
Change-Id: Ifeda66954263fe8d2637377d0701a2208a19c332
The file was added_testenv/data/scripts/podman_set_lo_mtu.sh
The file was modified_testenv/testenv/podman.py
The file was modifiedbsc/testenv_generic.cfg
Commit d991fde10de5760eef57a5bea3c1a5fe29428251 by Pau Espin Pedrol
hnbgw: Merge TC_ps_rab_assignment_* testcases

Change-Id: Ibfc3a7d74494bd78d8cfb4efa535ab4cd1b07cae
The file was modifiedhnbgw/expected-results.xml
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 808269ffed9881de31ad566eb0c7e3cfad44108a by Pau Espin Pedrol
hnbgw: Move normal condition Iu Release procedure to helper function

Change-Id: I5dc7923b78d1b98fea1f71aa6e39c41f70b1f3e6
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit ae63e3b80af1fb8153a0831555475b78a04d34e3 by Pau Espin Pedrol
hnbgw: Tear down SCCP conn from CN under normal conditions

Specs mention that under normal conditions the CN is the one expected to
tear down the SCCP underlaying connection upon recieving
Iu-ReleaseComplete.

Change-Id: I920cabcb63ca352db0ed06e4c35dade52bae5399
The file was modifiedlibrary/SCCP_Templates.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 106b6190e4dc976c366a3e7f96965107710230de by Oliver Smith
testenv: fix 'container crashed' detection

* When the testsuite stopped and using podman, check if it stopped
  because the container crashed and raise an exception.

* Even after 9eb5e696 ("testenv: make podman stop more robust") it
  happens sometimes in jenkins that the container gets stopped on
  purpose because the testsuite is done, but then the watchdog process
  prints an error saying it crashed (without actually stopping testenv
  at this point). Change the message to a debug message that just says
  it stopped, this should not be an error.

Related: OS#6607
Change-Id: I3c116719cdc00a99e27e5237ba3d57d5258b0919
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv/podman.py
Commit 2766aba0c4b02034e17c5b065585956d86d727f1 by Oliver Smith
testenv: podman-main: set watchdog timer to 60s

Increase the timer from 10s to 60s, as with 10s I see jobs failing with:

  ERROR: /tmp/watchdog was not created, exiting

In theory 10s should already be enough, my guess is that if a jenkins
node is currently under a lot of load then the feed command may take
several seconds and so we hit the previous timer. Even if this is not
the cause, I think it is good to rule it out.

Exiting after 60s if the jenkins job was (manually / with connection
loss) aborted is still relatively quick.

Related: OS#6607
Change-Id: Ide7a9d5bc395106cdaa47cec3aa746a978674c9e
The file was modified_testenv/data/scripts/testenv-podman-main.sh
Commit 7c8615e6c5127ff1554a81c3a1ca7b1699a36f4d by Pau Espin Pedrol
statsd: Support f_statsd_snapshot() API when using VTY-triggered stats report

Until now that API was only used in testsuites which relied on
time-trigerred reports. This commit also supports getting a given
snapshots if the IUT is configured to only trigger a report based on VTY
request.

Change-Id: I87d34e2f365d3b71ce328c08999be43d482326ad
The file was modifiedlibrary/StatsD_Checker.ttcnpp
Commit 1058dc9a2941c06cf192915ce1a04d808a2e56cd by Pau Espin Pedrol
hnbgw: Introduce module parameter mp_statsd_prefix

The value in that parameter depends on IUT configuration.

Change-Id: I007d45b8323831e8f3708d22c6a9bc6e9badd896
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit f6584fb7049480391a0a3839416484054929e5cb by Pau Espin Pedrol
hnbgw: Introduce module parameter mp_pfcp_upf_node_id

This will allow using it later in HNBGW_Tests.ttcn file when waiting for
PFCP Assoc Req.

Change-Id: I2142289965adba0b457e865e10f0cfc9908b0bb2
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 86c44427a35bded24f4a037d76568e2b4c4e633e by Pau Espin Pedrol
hnbgw: Handle PFCP Assoc Setup procedure in test_CT

Handle PFCP Assoc Setup Req during PFCP initialization in main test_CT.
This simplifies test logic.

Depends: osmo-hnbgw.git Change-Id Ic71df8df83e97f4015077677e426c803f84d31ea
Change-Id: Ic5edecea86b9465c60f008e245a44cfce64c8ddb
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit a0861ee1877ee1ba57eea0712f8e39d3ba897149 by Pau Espin Pedrol
hnbgw: Introduce test TC_ps_iu_release_req_rua_disconnect

Change-Id: Id24a5aed5255af77fbbd30521be70700a9bff1c9
The file was modifiedhnbgw/expected-results.xml
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 18fe041d4c75ecf96ec977985f1a3eff572a0a92 by Oliver Smith
testenv: show testsuite results at the end

Show the testsuite results from junit-*.log not after each testenv*.cfg
file is through, but for all of them at the end. This way the results
are in one place when running with multiple configs, we don't need to
scroll to the middle of the huge log to find out what tests passed with
a previous config.

Adjust the podman container stop and restart logic, so the last
container is still running until we use it for showing the results.

Change-Id: Ie4b70724a33932cd98ba0972db37bf72dc8affb8
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv.py
Commit 9e9b0e6080a6063a5f88177ba35ab3ef91b0430f by Oliver Smith
testenv: more tweaks for container shutdown logic

* Don't do "podman wait" when restarting the container. The idea was to
  really wait before the current container was shutdown before
  restarting one with the same name. But even with the wait we got "the
  container name ... is already in use" errors and so we use different
  names when restarting the container since 6fe837de ("testenv: podman:
  restart_count in container_name"). This means "podman wait" is not
  needed anymore.

* feed_watchdog_loop: change sleep from 5s to 2s, as we wait up to that
  long after the container was shutdown, before testenv stops. 5s is
  quite noticable compared to 2s when running the script locally.

* feed_watchdog_loop: hide stderr of "podman exec" since it will print
  "Error: container ... does not exist in database: no such container"
  during shutdown. This is expected as we stop the container, but it
  looks like an actual error. We already have a more userfriendly
  message "feed_watchdog_loop: podman container has stopped" that will
  appear when the "podman exec" fails during shutdown.

Change-Id: I71721fd41f044817e4021aea045a288f88506f76
The file was modified_testenv/testenv/podman.py
Commit e4810e171dcf3c203cc48067671180f0554aefe1 by Pau Espin Pedrol
hnbgw: Parametrize UPF F-SEID

This is needed if we want to support several concurrent PFCP sessions.

Change-Id: I8c32998c839f75ed93de639e48d08e1458a8032c
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 9ff31430e5afcb7c013c8c7ee2c63ae41f5341db by Vadim Yanitskiy
hlr: use :memory: (volatile in-memory database)

This eliminates hlr.db* files and reduces chances of failures
due to unclean state database when running TCs more than once.

Change-Id: Ibb34a555e999693f00d12b49f936a20105f21c43
The file was modifiedhlr/osmo-hlr.cfg
Commit 8ec1a7d191fa40db063b13f08ac2475566b0315e by Vadim Yanitskiy
hlr: refactor f_SS_expect()

Prepare for follow-up patches reworking SS related GSUP templates.
Avoid passing "omit" for parameter 'ss' of the receive templates
because this will no longer work as expected.  Clean up code flow.

Change-Id: I162a79e3c7ff9dafb031e3da8a78af313534cac7
The file was modifiedhlr/HLR_Tests.ttcn
Commit f01e1c6e9e4405bfb568a80d262b1f195f56e479 by Vadim Yanitskiy
library/gsup: improve formatting of SS templates

Change-Id: I27aa67ded044a4a5362795bb791d883c4af55cd9
The file was modifiedlibrary/GSUP_Templates.ttcn
Commit f1d19e91ba8c06f29ea1080e4a81d47ffeacba3f by Vadim Yanitskiy
library/gsup: improve generic GSUP_PDU templates

* Fix tr_GSUP: 'ies' cannot be omitted, so use '?' (not '*')
* Add missing template restrictions ('value' / 'present')
* Move GSUP_PDU templates after GSUP_IE templates

Change-Id: If4ceaf60311f9e4ed57153e2f6d7cb793c637f89
The file was modifiedlibrary/GSUP_Templates.ttcn
Commit 9270f484ecef40c8f9d1391b64eaed2da3a301d6 by Pau Espin Pedrol
hnbgw: with-pfcp: Support running ConnHdlr concurrently

Use Mutex to serialize PFCP session establishment to workaround the
"Req with SEID=0" dispatching problem.
This same system is used in S1GW_Tests.

Change-Id: Ie19ee0bd1b811e9381e3c245a4b1208de8afcbce
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/gen_links.sh
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit aebe8328a1329fd97500277103175b413f2368fa by Pau Espin Pedrol
RAN_Emulation: Increase ExpecTable size to 16

Use same size as other tables.
This allow running HNBGW_Tests with 16 ConnHdlrs instead of 8.

Change-Id: I0748da523d886a8097b9f35991b9044e6ca33f95
The file was modifiedlibrary/RAN_Emulation.ttcnpp
Commit 962a158948019d7ec1a871c681507ba9c012c3ab by Pau Espin Pedrol
hnbgw: Add test TC_ps_rab_assignment_concurrent

Related: SYS#6602
Change-Id: I053950373cec93ed8dbdfd6b8a71ffe31de3806f
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/expected-results.xml
Commit 8d9a452fb198dab1a636410444ea4ae7d9206680 by Pau Espin Pedrol
hnbgw: Parametrize MgcpParameters MGCP endpoint

This will be needed if we want to run several CS RAB ConnHdlrs in
parallel.

Change-Id: I4bb28dea22a6ea5b415d6ca16bde61b835d435bc
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 3ca864c4ffd7cd0ee028edba8bffbdbb26e7dbe1 by Pau Espin Pedrol
hnbgw: mgcp: Support running CS RAB ConnHdlr concurrently

Use Mutex to serialize CRCX wildcard endpoint, in order to be able
to properly steer the message to the good ConnHdlr.

Change-Id: Ibd97a37d98abfa746b58db0ea8bb591e7c8dc638
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit d439620841ccd72ee16db7e5f4297c9ebea143c8 by Pau Espin Pedrol
hnbgw: Introduce test TC_rab_assignment_concurrent

Related: SYS#6602
Change-Id: I1f717edbe4a758288d017861c4b77836c5811040
The file was modifiedhnbgw/expected-results.xml
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit fcd068043ef5f58864ea0865a09e880be2c51a42 by Pau Espin Pedrol
RUA_Emulation: Add missing msg component destination

Seen while running lots of components concurrently:
"RUA_Emulation.ttcn:315 Dynamic test case error: Port CLIENT has more
than one active connections. Message can be sent on it only with
explicit addressing."

Change-Id: Ief257969a451f2d11ad7619fb97af16d7dd7e199
The file was modifiedlibrary/rua/RUA_Emulation.ttcn
Commit a8e209ca782635834579580f325482f7d5c29584 by Pau Espin Pedrol
hnbgw: Small fixes in f_tc_rab_assignment()

Change-Id: I2f21d3ed59f6b8d26cfee3bd8e75c63cc9d710a3
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 207ce037084031a20486e686ef19b7be41e675b5 by Pau Espin Pedrol
deps: Update titan.ProtocolEmulations.SCCP to upstream master

Until now we were using our own fork with an extra patch with a fix for
SCCP conn id 0.
This patch, together with other patches was merged upstream today.
Hence, update our dependency to point to current upstream master.

Related: OS#6185
Change-Id: I8ba6cec24205337f19bac951d9a8d4f5d4d476ad
The file was modifieddeps/Makefile
Commit 6b2a90e6e278d8ae16eb7c3404848b3e9ce6a1ad by Oliver Smith
osmo-*.cfg: enable gsmtap log

Now that jenkins uses the osmo-*.cfg files from osmo-ttcn3-hacks for the
testsuites that were ported to testenv, make sure that these configs
enable logging to gsmtap log as it was the case in docker-playground.
This gives useful additional context in the pcap files.

Change-Id: I8a1c734c0d34b81e70707b0ac6732a366b867bbe
The file was modifiedbsc/osmo-bsc-sccplite.cfg
The file was modifiedbsc/osmo-bsc.cfg
The file was modifiedhnodeb/osmo-hnodeb.cfg
The file was modifiedbsc/osmo-bsc-vamos.cfg
The file was modifiedbsc/osmo-stp.cfg
The file was modifiedmsc/osmo-stp.cfg
The file was modifiedpcap-client/osmo-pcap-client.cfg
The file was modifiedhlr/osmo-hlr.cfg
The file was modifiedsip/osmo-sip-connector.cfg
The file was modifiedupf/osmo-upf.cfg
The file was modifiedmsc/osmo-msc.cfg
The file was modifiedbsc-nat/osmo-bsc-nat.cfg
The file was modifiedhnbgw/osmo-stp.cfg
The file was modifiedgbproxy/osmo-gbproxy.fr.cfg
The file was modifiedgbproxy/osmo-gbproxy.cfg
Commit 514904197e217615c725db54ffd49b3cd509f68c by Vadim Yanitskiy
library/gsup: improve GSUP_IE templates

* Turn template params into templates
* Use proper template restrictions
* Remove unnecessary valueof()s
* Improve formatting

Change-Id: I67cc555a54113dccb11d0cc05cee66f5c2d795fe
The file was modifiedlibrary/GSUP_Templates.ttcn
Commit b62ea71137bdeb7ffd10de1cd88ad6bb55d47d89 by Vadim Yanitskiy
library/gsup: rework f_gen_{tr,ts}_ss_ies() and SS templates

* Add missing param restrictions to SS related templates.
* f_gen_{tr,ts}_ss_ies(): proper template param restrictions.
* f_gen_ts_ss_ies(): return a template, not a value.
* f_gen_ts_ss_ies(): append IEs using list index.
* f_gen_ts_ss_ies(): isvalue() -> istemplatekind()
                     to allow passing template lists.
* f_gen_tr_ss_ies(): istemplatekind() -> ispresent()
                     to allow passing template lists.
* f_gen_tr_ss_ies(): 'omit' -> '*' for optional params.

Change-Id: Ia611ffa3845d48c5553c70f10981aa029d00d873
The file was modifiedlibrary/GSUP_Templates.ttcn
Commit 1e61e9a7700debb508b1ab80db58fdeb936aadfd by Vadim Yanitskiy
library/gsup: add src/dst name IEs to all SS templates

This enables us to send/match OSMO_GSUP_{SOURCE,DESTINATION}_NAME
IEs (if needed) and brings consistency to all SS related templates.

This patch makes the following testcases pass [again]:

* TC_mt_ussd_for_unknown_subscr,
* TC_proc_ss_for_unknown_session.

At some point osmo-msc started including the Source Name IE in
OSMO_GSUP_MSGT_PROC_SS_ERROR messages, which we didn't expect.

Change-Id: I8d947313a99491d2e4790bc06db863fe09d8b5cf
The file was modifiedlibrary/GSUP_Templates.ttcn
Commit 17f0da1ea64d37624e63a3aa66586b834f2e8c1d by Vadim Yanitskiy
library/rsl: rename t_RSL_IE_ActType_* -> c_RSL_IE_ActType_*

We use prefix 't_' for templates and prefix 'c_' for constants.

Change-Id: I4ae8f6c35f6f823060833f24a0cad41cc9894750
The file was modifiedlibrary/RSL_Types.ttcn
The file was modifiedbts/BTS_Tests.ttcn
Commit 087e0c76a9a96069c3d41fefaf3d2f829b404ae4 by laforge
msc: use :memory: for SMS (volatile in-memory database)

This eliminates sms.db* files and reduces chances of failures
due to unclean state database when running TCs more than once.

Change-Id: I0361284e41f84f43d96b9ce10da88fc9a089cdd4
The file was modifiedmsc/osmo-msc.cfg
The file was modified.gitignore
Commit cef2ce9cbd811736e12e13a2ec758be4f729e0cd by laforge
hlr: expected-results.xml: expect TC_MSLookup_* to pass

These TCs are passing on Jenkins for quite some time.

Change-Id: I254f3a8a97d0602d46c3975315e21f87850bfa05
The file was modifiedhlr/expected-results.xml
Commit 3fc40a98aeaa4dfe803e52f36c05d8a0f75f13de by laforge
{epdg,msc,pgw}/expected-results.xml: sync with Jenkins

Change-Id: Id00d9f95f81c1fdd181e56ed838f4b450accca58
The file was modifiedepdg/expected-results.xml
The file was modifiedmsc/expected-results.xml
The file was modifiedpgw/expected-results.xml
Commit e26a9d2039e2dd41fc6edf9190a0b35d1549e409 by Vadim Yanitskiy
bts: use proper ActType in f_TC_data_rtp_loopback()

For the sake of correctness, use c_RSL_IE_ActType_ASS (assignment)
when activating TCH/[FH] channels in TC_data_rtp_*.  This is the
kind of ActType that would normally be used by the BSC.

Change-Id: Ide773c3fcfdab881756d5fe5b6c314b0c0335043
The file was modifiedbts/BTS_Tests.ttcn
Commit c511c750b2977f843d0ff0862816bff6907feba0 by Vadim Yanitskiy
bts: TC_data_rtp_tchh*: fix timeslot number in comments

Change-Id: I771e616d52315a26679acb1be17cd4f36eaa52b2
The file was modifiedbts/BTS_Tests.ttcn
Commit 17e0e3a61e384af019e5d2c81b03416609c23161 by Vadim Yanitskiy
bts: add TC_data_facch_*: test FACCH/[FH] on data channels

So far we have been testing the actual traffic on TCH/[FH] in data
mode (CSD), but not FACCH/[FH].  Add separate testcases for that.

Half-rate variants of the new testcases crash osmo-bts-trx, so
comment them out in the control section until the problem is fixed.

Change-Id: I2098ccd651fc2a81f62e70be64af386ab0ca6148
Related: OS#6618
The file was modifiedbts/BTS_Tests.ttcn
The file was modifiedbts/expected-results.xml
Commit 11811666e926e241e0de2dafb148b8f3934fce3e by Pau Espin Pedrol
bsc: Fix sporadic failure in .TC_ho_in_fail_ipa_crcx_timeout

The code path was not waiting to receive DLCX if parameter
ignore_mgw_mdcx was set to false. It should wait for DLCX in any case.

Since it didn't wait, te ConnHdlr would finish earlier than expected and
MGCP_Emulation would fail when forwarding the DLCX to ConnHdlr:
"""
MGCP_Emulation.ttcn:257 Dynamic test case error: Sending data on the connection of port MGCP_CLIENT to 2023:MGCP failed. (Broken pipe)
"""

Change-Id: I322b070c369500979e3cc13814de1e4bf067726f
The file was modifiedbsc/BSC_Tests.ttcn
Commit 87d1c22b7ebe52f81b8054fd12290d8ff52f063a by Vadim Yanitskiy
epdg: fix a DTE in as_GSUP_rx_CL_REQ

Recent commit 51490419 uncovered a problem of passing 'dom := *'
to tr_GSUP_CL_REQ, which calls f_gen_tr_ies(), which in its turn
does not properly handle the '*' template kind:

'''
  Dynamic test case error: Restriction `present' on template
                           of type @GSUP_Types.GSUP_CnDomain violated.
'''

The old code was basically equivalent of passing 'dom := ?',
i.e. expecting the OSMO_GSUP_CN_DOMAIN_IE to be present.

Work the problem around by having two alternatives:

* GSUP.receive(tr_GSUP_CL_REQ(dom := omit)
* GSUP.receive(tr_GSUP_CL_REQ(dom := ?)

This patch makes TC_hss_initiated_deregister_permanent_termination pass.

Change-Id: I26738c8c2a0a4b9066bfb619149cbdbaf3e3b5e1
Related: 51490419 ("library/gsup: improve GSUP_IE templates")
The file was modifiedepdg/EPDG_Tests.ttcn
Commit e6eff004ca511f7103a2ffadb206f0faa2828236 by Oliver Smith
testenv: add run --until-nok

Add an argument to run a specific test (if using --test) or a whole
testsuite until it fails with "failure" or "error". This helped me in
reproducing a race condition in the mgw testsuite (related issue).

Related: OS#3849
Change-Id: I17e1ebcc5d6ff1b6a087c4d4c9405a02798212f1
The file was modified_testenv/testenv/testdir.py
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv/__init__.py
The file was modified_testenv/testenv.py
The file was modified_testenv/testenv/testenv_cfg.py
Commit 0adc6808745e0acf14770d3f205bf959e0ef2de9 by Oliver Smith
mgw: fix RTP packets received while RX disabled

Fix the race condition causing tests to abort with:
  1 RTP packets received while RX was disabled

Fixes: OS#3849
Change-Id: Ieaf5440a693448cdeeaac7f47e6110cb480bff5f
The file was modifiedmgw/MGCP_Test.ttcn
Commit 31eaa919ffa6d5604e63c0576ab75cd04efb95ca by Oliver Smith
testenv: make it pass 'ruff check' linter

I've added 'ruff check' to my pre-commit script. Make it pass initially,
so it can detect future bugs. The missing f-string is a bug that causes
ggsn testsuites with a custom kernel path to not work.

Change-Id: I3e5cd05ce0aa241509d77391c5ed64e618f385ba
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv/podman.py
Commit d8865c4f6c0cf3ff237546fd74ad75ed565de1f7 by Oliver Smith
testenv: install dbg pkgs with --binary-repo too

When using --binary-repo, figure out the -dbg and -dbgsym packages for
all dependencies of packages to be installed, and install them as well.

This will make debug symbols available in jenkins, useful for the
related issue. Before this patch debug symbols were only available when
building locally without --binary-repo.

Related: OS#6630
Change-Id: I4dc57257b944126fed2c7b031c92c77a3d4286e0
The file was modified_testenv/data/podman/Dockerfile
The file was modified_testenv/testenv/podman_install.py
Commit 77311c76c05eef9a1ba80a52764038faf1c46883 by Oliver Smith
testenv: pass env var for --binary-repo

Pass TESTENV_BINARY_REPO=1 to the podman container if the --binary-repo
argument is set. This will be used for the BTS testsuite to figure out
from where we need to run fake-trx.

Change-Id: Ia88906147e2e579145e3c8d04090c58f533febd5
The file was modified_testenv/testenv/podman.py
Commit ec1fe0c53d42db52516efeaab64c3bf65840d6b3 by Oliver Smith
bts/run_fake_trx.sh: tweak cd logic

Don't test if FAKE_TRX_DIR is empty, because it is never empty at that
point. If it was empty, then the line above would assign a default
value.

Change-Id: I63f9720487b564de5c5609eb52a6bb9d5a8aa74f
The file was modifiedbts/run_fake_trx.sh
Commit c615e041532b855b4a15f10dfca2e5fd3cf5b31a by Pau Espin Pedrol
testenv: respawn.sh: don't respawn on segfault

Do not respawn the process if it segfaulted or aborted abnormally in
another way (exit code >= 128).

Change-Id: I6f3f6218095643609a8b8869b57dde6b6bdb77a0
The file was modified_testenv/data/scripts/respawn.sh
Commit edb02d68d65ffe0de0a509dfb9e5aceb4202935e by Pau Espin Pedrol
testenv: print backtrace on startup fail too

When a program fails to start up, look for the coredump and print a
backtrace if it was found (instead of only doing it if a program
crashes later on).

Change-Id: I66a55dcfdab17d035ce6425220763a85b5b6dc90
The file was modified_testenv/testenv/daemons.py
Commit 4c56973a0abb617ea759db35a1536abb59081ca0 by Oliver Smith
testenv: build virtphy from src with --binary-repo

Add logic to build virtphy from source when running with --binary-repo.
This extra code path is needed because we currently don't have virtphy
packaged (like trxcon and sccp_demo_user), and we need to build the
libosmocore binary package instead of building completely from source as
we would do it with osmo-dev.

Use ".split(" ", 1)[0]" on the program= value to only look at its first
word, so we can later on use it in testenv.cfg file as follows:

  [virtphy]
  program=virtphy -s /tmp/osmocom_l2

Change-Id: I37bac8509b2601286e4feab099782f82c8338dca
The file was modified_testenv/testenv/podman_install.py
Commit fa4995e8de0c32242f9ffeed3666b8f53cabebbe by Oliver Smith
bts: add initial testenv.cfg

As usually, imported from docker-playground and adjusted to run on the
loopback device.

Related: OS#6638
Change-Id: Id9ed3780d166c5f6736a006f466dc5f0dded6279
The file was addedbts/testenv_hopping.cfg
The file was addedbts/BTS_Tests_FH.cfg
The file was addedbts/osmo-bts-oml.confmerge
The file was addedbts/osmo-bsc-fh.confmerge
The file was modifiedbts/run_fake_trx.sh
The file was addedbts/BTS_Tests_OML.cfg
The file was addedbts/testenv_generic.cfg
The file was addedbts/testenv_oml.cfg
Commit be4cb2d330a4a2198dcf221a382cd03a0091eb4a by lynxis
L3_Templates: GMM: Attach Req/RAU Req: add TLVs required for 4G -> 2G mobility tests

Change-Id: I0a37b75f6b1a522868cdbff43d99d4b953a4e952
The file was modifiedlibrary/L3_Templates.ttcn
Commit 5ed7a614d83f4e6699923e0cf2d35d627429fa0b by lynxis
L3_Templates: RAU Request: add support for MS Network Capability

The MS Network Capability is important to determine the UMTS auth capability
as well the R99 support.

Change-Id: Id750c84ae1673ac33c98cecea035805e8cb92bcb
The file was modifiedlibrary/L3_Templates.ttcn
Commit 769972cc9f7ec03d8cc1ff8ae1d9ffa0c4bc1049 by lynxis
L3_Templates: set R99 indicator

To support UMTS AKA auth, set the R99 indicator

Change-Id: I80035c68bd43fac336ef74ca9377a21f1061167f
The file was modifiedlibrary/L3_Templates.ttcn
Commit 795dc4a6e185796d66ea427cf8161cd37e7c3178 by lynxis
L3_Templates: Add required TLVs for RA Request when moving from 4G to 2G

Add ts_PtmsiTypeTV and ts_RoutingAreaIdentification2TLV

Change-Id: I6d735be76aab0b5228502e3e19804bcc98864829
The file was modifiedlibrary/L3_Templates.ttcn
Commit b1d1dd668f17b6a43af6dca076ad89688d099533 by lynxis
L3_Templates: correct set a5 bits to A1 + A5

The MS Radio Capabilities must include A5 bits to inform the network
of supported encryption capabilities. The a5bits of the first access network
must be present, later ones can be omited, meaning the ones of the first one
also applies.

Change-Id: I5256c1a2c57761589ec51de4fba47fa48b1f3fbb
The file was modifiedlibrary/L3_Templates.ttcn
Commit 0b0972779acb1242c8a5fb6e5a0a99f87ad3437e by Pau Espin Pedrol
Osmocom_CTRL_Functions.ttcn: Use Misc_Helpers.f_shutdown() everywhere

Change-Id: I3b11a4dee35da89b2fec0cc66021dd57db04beb4
The file was modifiedlibrary/Osmocom_CTRL_Functions.ttcn
Commit 13b716a236012f69a4a3b624c5a3a61ef89e4a7e by pmaier@sysmocom.de
deps/Makefile: update titan.ProtocolModules.RTP

The module titan.ProtocolModules.RTP received a fix that avoids crashing
(segfault) on the reception of short RTP packets. Let's make sure that
this fix is included in our builds as well.

Related: OS#4005
Change-Id: Ica445c1058f3afa1e0615986ca5240eeacb02e8c
The file was modifieddeps/Makefile
Commit 8b7572b990f6d28de55ab15ac9650443cb27b8d5 by laforge
hnbgw: TC_rab_release: Fix race condition stats checked too early

It could happen sometimes that the stats report was requested before the
hnbgw received the message increasing the counter.

Change-Id: Ica53d956ee8aed760854d3148af170144234e6b2
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 2e9216b3e85d494c973deec3a6cd33477ded0a5f by laforge
bsc: Fix missing teardown in TC_ho_in_fail_msc_clears_after_ho_detect

Missing handling of teardown messages made the test fail sporadically
due to ttcn3 side already closing the SCCP connection when it was still
expected to receive messages.

Change-Id: I492607aca0e42a823836f4a714ea818c5a897855
The file was modifiedbsc/BSC_Tests.ttcn
Commit 3aa177267d775b37fae0bff68ced6d52d9f42f30 by laforge
msc: fix a race condition in f_mt_call_establish()

It can happen that the MSC sends a paging request quicker than
function f_ran_register_imsi() returns (e.g. when a node executing
the testsuite is under significant load).  In this case the
BSSMAP PAGING message is dropped by the RAN_Emulation CT:

  CommonBssmapUnitdataCallback: IMSI/TMSI not found in table

This can be avoided by calling f_ran_register_imsi() *before*
sending the MNCC SETUP.req, which is triggering paging.

This patch fixes sporadic failures of:

* TC_lu_and_mt_call
* TC_lu_and_mt_call_ipv6
* TC_lu_and_mt_call_no_dlcx_resp

Change-Id: Ie8b69c3b59ea61e01adb24c71c1376335a5ddde6
The file was modifiedmsc/BSC_ConnectionHandler.ttcn
Commit c5be0f150f003d83f4dc7564d0d852fe06782c06 by Pau Espin Pedrol
bsc: osmo-bsc.cfg: Listen IPA Abis and CTRL interfaces on 127.0.0.1

CTRL seems to bind to 127.0.0.1 by default, but IPA Abis listents to
0.0.0.0 by default, which is not needed and may create problems with
concurrent instances.

Change-Id: I56c8c6af16502e8f98b28902a251e190da0c0490
The file was modifiedbsc/osmo-bsc.cfg
Commit d2b1f4ecdad4e9731c3b369ee5ffcf3566ed37bc by Pau Espin Pedrol
bsc: Add missing testcase in expected-results.xml

Change-Id: I6416e5cf4c12912f5094841d3738302bbd6228bb
The file was modifiedbsc/expected-results.xml
Commit 61ccea9ecadce971585efcbca0c7569b173aef82 by lynxis
PCU_Tests_SNS: del/change weight: don't fail on NS

When doing a SNS procedure, ignore NS Alive which are already in the queue or happen direct after.

Related: OS#6611
Change-Id: I8088bd8f3b3e37ee79f61e73d2a3e4f73d00c5c1
The file was modifiedpcu/PCU_Tests_SNS.ttcn
Commit 9fb31e1c72efedd016e699242f354407a98c3b36 by laforge
tr_GTPC_SGSNContextReq: use the same template as MsgType

Change-Id: Idd546c3ec387e9c3ea8f1b1a61cf8ca8230db46a
The file was modifiedlibrary/GTPv1C_Templates.ttcn
Commit 67b589237eb6fafc8b7840f1af83397f7336c638 by lynxis
SGSN: BSSGP_ConnHdlr: GMM Service Request: handle PMM IDLE UE correct

24.008: 4.7.13.3: explicitly mention the completion of the low layer security to be an implicit
Security Command Accept if the UE is in PMM Idle.
Extend the as_service_request() to handle both cases when UE is in PMM-IDLE as well in
PMM-CONNECTED.

Change-Id: I29237997e414aea80f254247da54f909410a4b36
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit 6ebabdc5113ab70fefe7739c2572e3b6efd403ae by lynxis
SGSN: BSSGP_ConnHdlr: GMM Service Request: add support to expect authentication

On a Service Request, the authentication is optional.
Either an authentication must happen or the key material from the previous authentication
has to be used.
The default behavior is still the same.

Change-Id: I9ed08160bf5413e3a30d6e90eb947d4d799e1058
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit b7d264bc3c97bbfd7d8cf9212301d269ca2f933c by lynxis
SGSN: BSSGP_ConnHdlr: f_gmm_attach(): allow the SGSN to request the IMEI

The IMEI might be requested when the GMM Attach happen.

Change-Id: Id49c9e6ef7517a6a831315ac1f9915c50b88beb6
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit e2b7ac3add8853c797d0b962e306c20e9ad7f8e3 by lynxis
SGSN: f_TC_attach_timeout_after_pdp_act: allow authentication

While testing, allow the SGSN to authenticate the UE.
The new VLR code will authenticate the UE, while
the old code doesn't.

Change-Id: I11c628ecebbe7c4c1b2c28e63133a33cfc171e12
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit cd3297dfd1c61a2e6f8d38e34d646ce76c222916 by lynxis
SGSN: f_TC_attach_rau: do a periodic RA update instead of RA change

After an attach, the periodic RA would be the correct.

Change-Id: Ic33687c55915d883b6d9a9a0d640a11588e1d1a0
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 3eb01af40fda9bfbecf14a54d497d9bc479ee5f4 by lynxis
SGSN: TC_attach_auth_id_timeout: set TMSI to provoke a ID Request

This test case simulates a MS which ignores Identity Requests. To ensure
the SGSN will ask for the IMSI, do an Attach Request with id TMSI.
Later this ID Request (type IMSI) will be ignored and the test case
expect a Attach Reject.

Change-Id: I5a860582aa57ebc073e4c33f3f2f8884e360edef
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 7d79f68e9d6ec8db735b37233480d0c362c75294 by lynxis
SGSN: f_TC_hlr_location_cancel_request_withdraw: drop incorrect Update Location response

This PDU was a Copy/Paste mistake and never been expected or used. The SGSN ignored
this message.

Change-Id: Ib8265416c650b0983d7e85786b334f84191331b2
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 5bd3777e210a83a8d213fadaa751c7bd4513f040 by lynxis
SGSN: f_TC_paging_ps: call f_gmm_attach() direct

Instead of using the TC function, call f_gmm_attach() direct.
Also set explicit the verdict at the end.

Change-Id: I68c75f84b01a0cd673ffd8c19ab5f0a8517c5738
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 4aaf70585667c7e900767e03b629a0d9795fc2f9 by lynxis
SGSN: f_TC_cell_change_different_*: always expect the auth

The new SGSN will always ask for authentication when receiving Attach or RA
which is the correct behaviour as long the LLC layer doesn't indicate
integrity or encryption protection.

Change-Id: I24579b5fc843caf68e035e106cee4e4ec0a3c735
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 30ef29c3a61b1760a71d9498602f6ef582e07ca7 by lynxis
SGSN: fix encoding of IMEISV in Auth and Ciphering Response

According to 24.008 the IMEISV field is exact 11 bytes long and
must contain a IMEI + SV which is exact 16 digits long, not 15.

Change-Id: I79dd79840de58f450c1a05e704fd9bd831455716
The file was modifiedsgsn/BSSGP_ConnHdlr.ttcn
Commit 69896eda4faa919c5203e3fd3738b328ed73b4c7 by lynxis
SGSN: TC_attach_pdp_act_pmm_idle: use correct Service Request type

When the UE requests data service, it must use the data service request type.

Change-Id: I9301e7a37d96c3f93e77f7618d6c13dfa1fbe46b
The file was modifiedsgsn/SGSN_Tests_Iu.ttcn
Commit c5288135fade1a97852d512b24a146277c436ce2 by lynxis
SGSN: Context Req In: use correct TEID-C

For a MS/UE moving from 2G to 4G, the Ctx Acks need to transmit
with the correct TEID-C which the SGSN chose in the Context Response.

Change-Id: I84dc7dda8ee1227edd68d1482a4c5bf267c16418
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit c010edb00e662449fda6229d46ad26bd343d7951 by lynxis
SGSN: assign random TEID-C to Context Req/Resp/Ack messages

Change-Id: Icac28280a810e8d24eeeaaae1fb1a15278fde8da
The file was modifiedsgsn/SGSN_Tests.ttcn
The file was modifiedlibrary/GTP_Emulation.ttcn
Commit d099279d5b6efbf513cb628ad55296d05197a41a by lynxis
SGSN: Remove mm context triplets

Only triplets which hasn't been used should be included.
The MME will only request and sent back a single set of tuples.
There shouldn't any left overs.

Change-Id: I60a3331396cb9905ec9a4df9b1e65a3291a51058
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit b5136791025dcf3f210fda2ecc0b29a02f926595 by Oliver Smith
testenv: use new osmocom-bb binary packages

When using --binary-packages, use the osmocom-bb-trxcon etc. binary
packages that are now available, instead of only installing the
dependencies as binary packages and building these components from
source.

Change-Id: I072ea55d12060b4ef04ee9775ef116d553090e9a
The file was modifiedbts/testenv_oml.cfg
The file was modifiedbts/run_fake_trx.sh
The file was modifiedbts/testenv_hopping.cfg
The file was modified_testenv/testenv/podman_install.py
The file was modifiedbts/testenv_generic.cfg
Commit 2fd8cb3774df215eb35e23ab337947c1e1c2af97 by lynxis
SGSN_Tests: f_TC_attach_usim_resync: fix IMEISV value

IMEISV is IMEI + 2 digit software version.

Change-Id: I044eeccd02e2d3f891879516f5a9c003ac8f849a
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 58ace8f7f296e3f3f5fa67d99e2622448f4767dc by lynxis
PCU_Tests_SNS: SNS Add: handle NS_Alive while waiting for SNS_Ack

Similiar to 61ccea9ecadc ("PCU_Tests_SNS: del/change weight: don't fail on NS"),
the SNS Add procedure might have to handle a NS Alive PDU in the receiving queue while waiting
for a SNS ACK.

Related: OS#6611
Change-Id: I10646d9acfe280ddfb8852a4d5c37882aae99874
The file was modifiedpcu/PCU_Tests_SNS.ttcn
Commit 3f48fa0ffbdea022e3138bba8c89243e82f42a05 by Pau Espin Pedrol
testenv: make copy= more intuitive

Currently copy= in testenv.cfg creates copies of files under the full
source file name under the target directory: copy=dir/file.cfg creates
dir/file.cfg (like "cp -a --parents"). This is not very intuitive,
change it to create a "file.cfg" instead without subdirectory. With
this change, it behaves the same as "cp -a".

Suggested-by: Pau Espin Pedrol <pespin@sysmocom.de>
Change-Id: Id9e4ea066d0a0e72ccd83e4f6f887f382bf61e46
The file was modifiedggsn_tests/testenv_open5gs.cfg
The file was modified_testenv/testenv/testdir.py
The file was modified_testenv/README.md
The file was modifiedggsn_tests/open5gs/open5gs-smf.yaml
Commit 798c9a1dedaf43f9a0f3c4c3b967fb898bf7e170 by Pau Espin Pedrol
remsim: Add initial testenv

"server" testsuite is working as goos as in docker-playground.git
"bankd" testsuite is currently failing due to bankd exiting early after
starting.
"client" is not currently working/running in docker-playground, initial
config copied here for completeness.

This commit hence allows already quickly running "server" testsuite.

Change-Id: Ic69a04342a4cdfced90cf8ffbe7e5cdede8d4b8e
The file was addedremsim/bankd/REMSIM_Tests.cfg
The file was addedremsim/testenv_bankd.cfg
The file was addedremsim/server/REMSIM_Tests.cfg
The file was addedremsim/bankd/bankd_pcsc_slots.csv
The file was removedremsim/REMSIM_Tests.cfg
The file was addedremsim/testenv_client.cfg
The file was addedremsim/testenv_server.cfg
The file was addedremsim/client/REMSIM_Tests.cfg
Commit 7d747cc3ff7b2dc93ef9e6833935b43b94b1c009 by lynxis
RAW_NS: SNS Add: handle IPv4/IPv6 element in SNS Ack

When adding a new NS-VC via SNS Add, the SNS Ack should
only contains the IEs "List of IP4/6 elements" if the cause code is
Unknown IP endpoint.

However the libosmocore/ns2 code isn't following this behavior yet.

Change-Id: I18c659e43db79400c1b428ed745267a5e6e59102
The file was modifiedlibrary/RAW_NS.ttcnpp
Commit 5443d56283dd0fb814aca2040fab71e00497b4a3 by lynxis
RAW_NS: SNS Changeweight: remove IPv4/IPv6 element in SNS Ack

When changweights of a NS-VC via SNS, the SNS Ack should
only contains the IEs "List of IP4/6 elements" if the cause code is
Unknown IP endpoint.

However the libosmocore/ns2 code isn't following this behavior yet.

Change-Id: Ibf00cbab0c6691cdb72fe592ee30e122dd8f4783
The file was modifiedlibrary/RAW_NS.ttcnpp
Commit 5ad6e895f8f9d7b94645b3b37794866f2956176e by pmaier@sysmocom.de
PCUIF: fix usage of bts number in PCUIF_TXT_IND

When we receive the PCU_VERSION using tr_PCUIF_TXT_IND we must ignore the
included BTS number because the PCU_VERSION is not addressed to a specific
BTS. When we send a PCU_VERSION using ts_PCUIF_TXT_IND, we should always
use the bts number 0 to be consistent (the BSC/BTS will ignore this number
anyway).

Let's fix the usage of tr_PCUIF_TXT_IND and put comments, to make clear why
the above applies.

Change-Id: I93de261fc77806b2f817e0d30cb1b0d377ed0dbb
related: OS#6507
The file was modifiedpcu/PCU_Tests_NS.ttcn
The file was modifiedbts/BTS_Tests_OML.ttcn
The file was modifiedbts/BTS_Tests.ttcn
The file was modifiedpcu/PCUIF_Components.ttcn
Commit 224e7926e633225717e9e5b68fa3ab1b9fee9a3c by Pau Espin Pedrol
RAN_Emulation: Allow client to trigger SCCP CC if automatic CC was disabled

This allows users of RAN_Emulation to trigger events in between CR
transmited and CC being receied at the IUT.

Change-Id: I117c8fde118b488b011e381d51eed378d2f3ff0e
The file was modifiedlibrary/RAN_Emulation.ttcnpp
Commit a8069a3f7b1c28ff246a9214ef0ac539311428a7 by Pau Espin Pedrol
hnbgw: Introduce test TC_{cs,ps}_rua_disconnect_during_sccp_cr_cc

Related: SYS#7208
Change-Id: Ie4fe4aaf77017f7191cf000331e452cded56cf25
The file was modifiedhnbgw/expected-results.xml
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit d749e9934b049dde8d2a21fd7828eb0028a60a97 by Pau Espin Pedrol
hnbgw: Fix template restriction in template param

Change-Id: I946f21f6d662d889095199c268d2586aea55c821
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit bda800f030d59d29cbb643a9a9d47e4f4ad5e999 by Pau Espin Pedrol
testenv: Log return code of unexpected end of process

This providing further information, for instance if the process actually
exited due to a signal (rc < 0) or due to exiting on its own (rc >= 0).

While at it, rewrite the log line since a process exiting doesn't
necessarily mean it crashed.

Change-Id: I7bbee6ad8e114eeb1ef348184158230b53d0f3cf
The file was modified_testenv/testenv/daemons.py
Commit 11b22c65b85bfaee7fddd396a76a5e396ab7956d by Pau Espin Pedrol
remsim: Enable debug output of bankd

Change-Id: Idc1ed4b9419735170cac92916073757da01691ed
The file was modifiedremsim/testenv_bankd.cfg
Commit b9c1e1eb5354842722f22766b937180f4436de02 by Oliver Smith
remsim: bankd: Install vsmartcard-vpcd

This is needed for test RemsimBankd_Tests.TC_createMapping_exchangeTPDU
to work. Add require_vsmartcard_vpcd.sh to give a meaningful error
message when running without --podman, if the user doesn't have it
installed.

Co-authored-by: Oliver Smith <osmith@sysmocom.de>
Change-Id: Ib5ba5075eff4955354fa25d1c605f277e8a6962a
The file was modifiedremsim/testenv_bankd.cfg
The file was added_testenv/data/scripts/require_vsmartcard_vpcd.sh
The file was modified_testenv/data/podman/Dockerfile
Commit 60cf13449fc2b3ddce2330fafc6b6a6825c5ac7a by Pau Espin Pedrol
sccp: Initial testenv

Change-Id: I616425d729dda342e78537c6b7256d5dddebaa88
The file was addedsccp/sccp_demo_user.cfg
The file was addedsccp/testenv.cfg
Commit 039ac2b716051bde1790e5046de79325d50df77e by Pau Espin Pedrol
sccp: Let some time for SCCP RLC to reach IUT before finishing test

Otherwise tear down of the test component immediatelly afterwards
creates a race condition where sometimes the RLC message is not sent
before closing the socket.
As a result, the SCCP-SCOC stays in DISCONN_PEND until T(rel) fires a
while afterwards, generating a new RLSD in a follow-up test, disrupting
expectancies of that unrelated test.

Since sccp_demo_user doesn't implement a Layer Manager, the recv() 0
from the socket doesn't automatically tear down the SCCP conn, since it
could have several ASPs:
"""
0: asp-asp-srv-client: ss7_asp_xua_srv_conn_rx_cb(): sctp_recvmsg() returned 0 (flags=0x80)
...
asp-srv-client: connection closed
XUA_ASP(asp-srv-client){ASP_ACTIVE}: Received Event SCTP-COMM_DOWN.ind
XUA_ASP(asp-srv-client){ASP_ACTIVE}: state_chg to ASP_DOWN
XUA_AS(as-srv-client){AS_ACTIVE}: Received Event ASPAS-ASP_DOWN.ind
XUA_AS(as-srv-client){AS_ACTIVE}: state_chg to AS_PENDING
Delivering N-PCSTATE.indication to SCCP User 'SCCP Management'
Ignoring SCCP user primitive N-PCSTATE.indication
[Here same 2 lines for SCCP User 'refuser', 'echo', 'callback', 'test_client_vty']
XUA_ASP(asp-srv-client){ASP_DOWN}: No Layer Manager, dropping M-ASP_DOWN.indication
XUA_ASP(asp-srv-client){ASP_DOWN}: No Layer Manager, dropping M-SCTP_RELEASE.indication
"""

Change-Id: Id7d5970bb0fe0e42fedcb56fe4a738a92ddd5bbf
The file was modifiedsccp/SCCP_Tests_RAW.ttcn
Commit 7975223975ef30ef4f7a4f2f56144cca6016d721 by Vadim Yanitskiy
library/s1ap: f_tr_S1AP_RABSetupRsp(): use ispresent()

Change-Id: I6ee1246ef9f32ac7d5ce107d3ba9ea11ed87af20
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 5364bf728ab5c00505a30639db26a91124266760 by Vadim Yanitskiy
library/s1ap: add E-RAB MODIFY REQ/RSP templates

Change-Id: Id38cd51698c1388311a41f045ff08ec7f8a85146
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 19f7a9373eb3b121b4d9bdc1b47a91ab8f30fcb8 by Vadim Yanitskiy
library/s1ap: add E-RAB MODIFY IND/CNF templates

Change-Id: I2dd3d420ebfaf37fefa1d33a40176ec57fee5619
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 6820c8030437be7bfedcf7418823166d59b02cc5 by Vadim Yanitskiy
s1gw: make f_ConnHdlr_rx_session_modify_req() more flexible

Allow the caller to pass FAR ID, SEID, and E-RAB parameters (F-TEID),
so that it can also be used for testing the E-RAB MODIFY procedure.

Change-Id: I52317e79ac02cb4e321b49c2cd824de28e25a1c6
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 66f9a4babdbfdac63658bdb8adf0d827972c72fd by Vadim Yanitskiy
s1gw: add constants for PFCP FAR IDs

Change-Id: Ib25e5cc9ca21047f9884e1c13d0861bf4f7251a1
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 20c2b36373c86ec2fc6420f46d10794652cc0c73 by Pau Espin Pedrol
mgw: Improve log and teardown upon unexpected mgcp resp received

Change-Id: I233075f5a88ed7f1f7de496664cdc7281aefa900
The file was modifiedmgw/MGCP_Test.ttcn
Commit 62095640a8bce3be225b0710ce41450a1e20fef2 by lynxis
PCU_Tests_SNS: sns_del: check if removed NS-VC still transmits

After removing a NS-VC via SNS-DEL, the NS-VC shouldn't receive
any further NS PDUs.

Related: OS#6611
Change-Id: Ied4367a519cf75291ff8766c9efebb0f8a12b11f
The file was modifiedpcu/PCU_Tests_SNS.ttcn
Commit 554a286378ab242361cd2ec1da93cb1812668107 by lynxis
GSUP_Templates: Purge MS Request: allow the Message class IE to be present

Change-Id: I367f63fe5286e39ba51de94729455d2638f19c6f
The file was modifiedlibrary/GSUP_Templates.ttcn
Commit d05a3a0eab9cb7c8880cfff4cb8e26982d66c258 by lynxis
SGSN: f_cellid_to_RAI: fix spaces vs tabs

Change-Id: Ic1927729dd0d205f1bd866423c8dfdf91caf597d
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit 06b9d257ce31e5cc003cbe5ccb27d69586572fd3 by lynxis
msc: add testenv.cfg

Change-Id: Ia93115e3a27ac43b6530f2669e210f59169d75b9
The file was addedmsc/testenv.cfg
Commit 64fe578f24178958ce916f50e06bdb552d15a358 by laforge
stp: Improve failure teardown using Misc_Helpers.f_shutdown

Change-Id: I776bc32b1bdb52d7e90102c4ab6ff7b0ef7a12c6
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit 6cc1fd90ad922d9289f40ffc5d598aa33d8ca903 by laforge
stp: set up all M3UA ports in array in steps

This way we have all ports in more or less the same state when handling
messages.
It should also speed up tests and mitigate sporadic failures  under some
scenarios where we already accept the SCTP conn instead of rejecting it
and waiting for reconnect from client.

Change-Id: I585d9c768301bfd9ba849876923787137fc35981
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit 65cd8d4f7bd56d28527564dbfd205b252c631c1c by dwillmann
gbproxy: Don't log the payload size for every DL/UL-UNITDATA

This just wastes memory. We can check the pcaps if a test does fail.

Change-Id: I862d67a48f1d694262cf39a1e939033bde0c6eab
Related: OS#6704
The file was modifiedgbproxy/GBProxy_Tests.ttcn
Commit f10f4a8c7a66bdfd62ec8b62aac23bace47163a9 by Oliver Smith
testenv: run: add --autoreconf-in-src-copy arg

Add a new argument that avoids the problem that ./configure refuses to
run if it has already been executed in the source dir. (It aborts and
asks the user to run "make distclean" first, which is especially
annoying if it has to be done in multiple source dirs before being able
to build successfully.)

Put the new logic behind an "experimental argument" for now. I think it
improves usability greatly and plan to make it the default later when
it has been well tested.

I have also considered making the source dir read-only when mounted into
podman and this argument is set. This was the original goal of Lynxis'
related patch, on which idea this one is based. But osmo-dev still
needs to write into the source dir in case it clones a new repository,
so making the sources dir read-only with this trade-off should be a
separate flag and could be added in another patch later.

Related: osmo-ttcn3-hacks I0f1ac8852218f158ece14c176f05574f60d9d1f7
Depends: osmo-dev I18ac50e3441df81e1fe7d8d5321df7e80ab9c650
Change-Id: I5c38ce69dc39823d12be574c74a654d2fa6ed8fb
The file was modified_testenv/testenv/osmo_dev.py
The file was modified_testenv/testenv/__init__.py
Commit f6be37e47904348b555ceef4e874120cdc05f9ec by Vadim Yanitskiy
library/s1ap: fix criticality in UE CONTEXT RELEASE PDUs

Change-Id: I6c63b3ecb428b54705aea0c14610c00223651d8f
Related: SYS#7310
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 2f87ce5ac603f97257b65a7cdb4d199dd7cbe338 by Vadim Yanitskiy
s1gw: add f_TC_exec()

The idea is to reduce the amount of boilerplate code.

Change-Id: I0df4ad15bc2dca2afb2c598c1b053f45b69c181b
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 75cb01b7e1a83e850674e49a3f47fd116aa3eca0 by Vadim Yanitskiy
s1gw: add TCs for UE CONTEXT RELEASE procedures

Change-Id: I065692f311e9d03630ab3ca2f6a03465418f0e71
Related: osmo-s1gw.git Ic94489e3d3052221b49431da3a95e5c1eb0e0ba0
Related: SYS#7310
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/expected-results.xml
Commit e8db49258a4d5b495f5519a2c876b711f71c71ea by Pau Espin Pedrol
hnbgw: Use Misc_Helpers.f_shutdown upon rx of unexpected msg

Otherwise the test continues for a while and ends up with a DTE which
makes it harder to figure out the original test failure.

Change-Id: I7f07cff2ce93e8b11338ba4e39e1d49662323f58
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 229767a8c50df6191b8f6c8172e7eee642101c77 by Pau Espin Pedrol
MGCP_Emulation: Make sure peer is running before Tx

This avoid DTE with "Broken pipe" if messages are being transmitted
while tear down process has already started, even if components are
created as "alive".

Change-Id: I8724870b9b967ffa49c3da03e1cdb2941f81653a
The file was modifiedlibrary/MGCP_Emulation.ttcn
Commit b415d6dca43170532c8de9a4a8d817167ab62c83 by Pau Espin Pedrol
hnbgw: Submit proper L3 PDUs during CR

Generating random PDU values makes hnbgw act on it, since it looks up
higher layers to figure out NRI steering.

Change-Id: I725c35a3584b7d2d162c24ab2b662cfb80e539d7
Related: OS#6717
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 0671b682feea595b797ea0a4935ec6e0074c2758 by Pau Espin Pedrol
Mutex: Create component alive

Change-Id: Ie2980705dd0d2d8ed11a6c13349fb85e6f254748
The file was modifiedlibrary/Mutex.ttcn
Commit 8378569a717e710fd2f7df899ce99d1ef4ea508f by Pau Espin Pedrol
RAN_Adapter: Create components alive

HNBGW_Tests.TC_hnb_disconnected_timeout needs modification since it
expects the component to drop the underlaying conn towards the IUT when
the component is stopped. This is not longer the case when the component
is created as "alive". In order to make sure its resources are
destroyed, one needs to kill it.

Change-Id: Ice4d93b42552f1c5d621582b1fc3a38b4e1ae837
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedlibrary/RAN_Adapter.ttcnpp
Commit 0202506948dc993e1d8fee683d110986e5dee615 by Pau Espin Pedrol
hnbgw: Create all components alive

This makes it easier to figure out errors due to getting rid of DTEs
changing the result output of the test.

Change-Id: If7ef1897adf3ef819314aa094ba78c526d77770f
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 74a5957494a5db5d835c0db717c47fed0e9c75b1 by Pau Espin Pedrol
pcu: Fix wrong BSN uint size

3GPP TS 44.060 9.1.4.2, BSN is 11 bit long.

Change-Id: Id1ef8b58dc61ab91de2c781a2fd1e8da5eba83a7
The file was modifiedpcu/GPRS_Components.ttcn
Commit 542ab1797b57aa7a5361b5ea5da06d6290c7528f by Pau Espin Pedrol
pcu: Fix TC_dl_cs1_to_cs4 sporadic fail

The test TC_dl_cs1_to_cs4 failed sporadically in ttcn3-pcu-test-asan.
Due to how the DL data arriving at Gb is split in chunks over RLC/MAC
(also based on how CS changes over time), it may happen that the full
PDU content doesn't finish at the exact block number where PCU expects
the DL ACK/NACK. As a result, since PCU delays finishing the DL TBF and
some data for that DL TBF has already not been ACKed (and since there's
no more active DL TBFs), it will decide to retransmit some of the
RLC/MAC blocks which haven't been yet ACKed, instead of transmitting
nothing.
This is an optimization to increase the probabilities the MS has
received all the data.
We need to account for this possibility in f_dl_data_exp_cs(), used in
the mentioned test. In there, it needs to be checked whether the
received DL data block is a retransmission, and use that knowledge to
resolve that all data has been transmitted and hence the final condition
can be checked.

Change-Id: I7fb40689547645adf1d54f43c263161be1d7a440
The file was modifiedpcu/PCU_Tests.ttcn
The file was modifiedpcu/GPRS_Components.ttcn
Commit 7c66363f06a2131ee96bbb39a02a40f86f07db95 by Pau Espin Pedrol
pcu: Fix dummy DL block received due to timer race conditions

Timer X2002, which manages delay at PCU between sending DL TBF Ass over
CCCH and start transmitting for it over PDCH, is clock-time based.
As a result, timer at PCU process and ttcn3 process may time out
slightly differently. Hence, it can happen that we request a DL block
immediatelly *before* the timer triggers at the PCU. In that scenario,
PCU transmits a dummy block instead of a data block.
Account for this race condition in several tests; some tests already
used this formula.

Change-Id: Ic2bb953483cd1f678cbe32c7a94e177f79ecb4e4
The file was modifiedpcu/PCU_Tests.ttcn
Commit a38b2fec94d540df5db0e89051ed160af26d0955 by Vadim Yanitskiy
s1gw: f_ConnHdlr_session_delete(): invalidate peer's SEID

Change-Id: If8027e2bdb5822eb7555cd02a72be900a1f18880
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 305ade194b1b0594968f081581496574d8198a8a by Vadim Yanitskiy
s1gw: f_ConnHdlr_session_delete(): respect any order

It's not guranteed (nor required) that PFCP Session Deletion Request
PDUs are sent in the same order as their respective ERab records are
organized in the given ERabList.  They can be emitted in any order.

Make f_ConnHdlr_session_delete() more flexible:

* Expect to receive N PFCP Session Deletion Request PDUs;
* For each received PFCP PDU, find the matching E-RAB;
* Make sure that an E-RAB is never released twice;
* Send PFCP Session Deletion Response.

This patch fixes the following TCs:

* TC_ue_ctx_release_req3
* TC_ue_ctx_release_cmd_compl3

Change-Id: I93d3d38829b1f425d18d59464894da239e3511eb
Related: 75cb01b7 ("s1gw: add TCs for UE CONTEXT RELEASE procedures")
Related: SYS#7310
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit b80ae53000f83f6ade308a8780b0083215fa3563 by Vadim Yanitskiy
s1gw: add TC_e_rab_modify_req_rsp[_multi]

Test the E-RAB Modify procedure (MME initiated), which is defined
in 3GPP TS 36.413 section 8.2.2.

Change-Id: I58b9964bae24b5aac526ee0c0c8ac8798f351e05
Related: osmo-s1gw.git I24d57ea390d71b640cb42046a8658e9d30670682
Related: osmo-s1gw.git I057a1c58d0c6ad04c00ad3ea4c68230d8632a07e
Related: SYS#7308
The file was modifieds1gw/expected-results.xml
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
The file was modifieds1gw/S1GW_Tests.ttcn
Commit 67a8fde0c7be1b45acf138c6f1a4a0eb14a09f69 by Vadim Yanitskiy
s1gw: add TC_e_rab_modify_ind_cnf[_multi]

Test the E-RAB Modify procedure (eNB initiated), which is defined
in 3GPP TS 36.413 section 8.2.4.

Change-Id: Iec95ca0ecf37290bddfbefce1861f8ae66bf4db1
Related: osmo-s1gw.git I750ada0a5a21edc8bc06d567c8000b6304966474
Related: osmo-s1gw.git Icc16a57d40b68bd17c5d207b643927d58176e088
Related: SYS#7308
The file was modifieds1gw/expected-results.xml
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit c4253ad7497973c06e101666245a002c567c4166 by Pau Espin Pedrol
hnbgw: remove osmo-hnbgw <= 1.6.0 code path

osmo-hnbgw 1.7.0 has been released, so we can remove this code path.

Change-Id: Ie55b752c19aa597afdc47b6e57e8ff0b42313e00
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit e9feead11104a79958b96d3b5002b690e920a981 by Pau Espin Pedrol
sgsn: remove osmo-sgsn <= 1.12.0 code path

Now that 1.13.0 has been released, we can run this test in latest too.

Change-Id: I4ead7b05d7d956303584ccbfe1e13692f54341af
The file was modifiedsgsn/SGSN_Tests.ttcn
Commit dc79a8837665962741be28b05505158c78f7b0de by pmaier@sysmocom.de
eim: move es9p_Types_JSON to library

The TTCN3 module es9p_Types_JSON is currently only used by the eIM testsuite,
but it may also be helpful in other testsuites in the future.

Related: SYS#7339
Change-Id: If4be10a298e30188aebe7c9d3efbdb56d2816c7f
The file was removedeim/es9p_Types_JSON.ttcn
The file was addedlibrary/euicc/es9p_Types_JSON.ttcn
The file was modifiedeim/gen_links.sh
Commit 075c76a18b623225139a1a979170bcb11099e917 by laforge
mgw: osmo-mgw.cfg: remove deprecated no-op params

This patch fixes the following warnings:

% Deprecated 'sdp audio-payload number <0-255>' config no longer has any effect
% Deprecated 'sdp audio-payload name NAME' config no longer has any effect
% Deprecated 'loop (0|1)' config no longer has any effect
% Deprecated 'allow-transcoding' config no longer has any effect
% Deprecated 'loop (0|1)' config no longer has any effect
% Deprecated 'allow-transcoding' config no longer has any effect

Change-Id: Ie4f2b46eda2e848781b77e590ad20e80fed86257
The file was modifiedmgw/osmo-mgw.cfg
Commit 40dedbef99437d641f041790198a68af6168a3b1 by laforge
bts: expect TC_data_{rtp,facch}_tchf144 to pass

Change-Id: I5dfcecc9cb6829ad208a54d7a3092a4cde327fb3
Related: OS#6167
The file was modifiedbts/expected-results.xml
Commit 7fbcc6f8a957dfc8fb3a30dd7577e927a42015d9 by Pau Espin Pedrol
stp: Allow setting up different m3ua_config list by test

This is useful, for instance, for tests willing to test dynamic ASPs.

Change-Id: I0a875bac5e9506be9140d5afa28da25bdc99a5a6
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit c810f6083f4163824622099f9493a1b98ddcc8ee by Pau Espin Pedrol
Use fork of titan.ProtocolModules.M3UA containing fix

Use a fork of the repository until the M3UA_NOTIFY decoding bug gets its
fix merged, currently submitted upstream in [1].

[1] https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.M3UA/-/merge_requests/4

Change-Id: I9ac3dcad88cd13c1b45fb70bdcd2a474d084a652
The file was modifieddeps/Makefile
Commit 702e4e1716a7ebb9aa9850375780821892351b00 by Pau Espin Pedrol
stp: Pass M3UA conn idx to f_M3UA_rkm_register()

Change-Id: I9295a2c3518f82e8c82625fb573e414b1d634146
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit 0687306e059b3e694332c732d2eaef3b2e31e88a by Pau Espin Pedrol
stp: NOTIFY expectancy fixes

Fix expected behavior of STP according to specs (RFC 4666 4.3.4.5),
after osmo-stp got several related fixes in libosmo-sigtran.git
Change-Id I85948ab98623a8a53521eb2d2e84244011b39a93 and Change-Id
I3dffa2e9c554f03c7c721b757ff33a89961665b5.

Change-Id: I3a56b4fcb8c119a31815f3175db2d7899fbfddd7
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit 1f3865fd7e7d81c41eeb61cc9574a9c931de69ce by Pau Espin Pedrol
stp: Introduce tests TC_dyn_(2)asp_as_rkm_permitted

These tests allows testing behavior of scenarios related to dynamic
ASP/AS/RKM improved/fixed in libosmo-sigtran.git Change-Ids:
I986044944282cea9a13ed59424f2220fee6fe567
I85948ab98623a8a53521eb2d2e84244011b39a93
I3dffa2e9c554f03c7c721b757ff33a89961665b5

Change-Id: Ic3116cbe63832003876ae19b31491275aebb41a9
The file was modifiedstp/expected-results.xml
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit bb2d39ff2d79d437edab8783d778fa83434913ff by Pau Espin Pedrol
stp: Fix expectancies of TC_clnt_quirk_snm_inactive

The test STP_Tests_M3UA.TC_clnt_quirk_snm_inactive validates the
snm_inactive quirk by sending a DAUD before the link being activated,
and expecting a DAVA to make sure osmo-stp did indeed process the SNM
message.
However, osmo-stp used to lack proper route validation based on link
state, which means it would incorrectly assumed the link for the
affected PC (55) in the test was active and hence would answer with a
DAVA. After libosmo-sigtran.git Change-Id
I928fb1ef5db6922f1386a188e3fbf9e70780f25d this wrong behavior is fixed,
and hence osmo-stp starts answering with a DUNA instead of a DAVA, since
AS "as-client" has not yet been activated during the test.
Fix the test expectancies by expecting a DUNA instead of a DAVA.

Change-Id: I907981c1487b299df852c405bae1fefff4bf5191
Depends: libosmo-sigtran.git Change-Id I928fb1ef5db6922f1386a188e3fbf9e70780f25d
Related: SYS#7112
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit 009199c9d571c26f52a18e55bd5a6f6b314ad649 by Pau Espin Pedrol
stp: Fix brokeness in STP_Tests_M3UA.TC_tmt_loadshare

The test was not even setting the traffic-mode in the IUT.
Furthermore, it was expecting pure round-robin behavior, which was the
older behavior of osmo-stp when loadshare traffic-mode was selected.

Actually split the test into 2, naming them properly (since round robin
is not a AS traffic mode in itself, but a possible implementation of the
loadshare traffic-mode.

The new test validates the usual loadshare traffic-mode based on SLS
distribution.

Related: SYS#7112
Depends: libosmo-sigtran.git Change-Id I61340549c596f1c04bc2269dbc165c327bf72037
Change-Id: I16d81cb2f88bb2927f248182ad4f8f27c8c24859
The file was modifiedstp/STP_Tests_M3UA.ttcn
The file was modifiedstp/expected-results.xml
Commit 8d0f1a96b3802364a07585684565c233fdb6c0fc by Pau Espin Pedrol
stp: Fix brokeness in STP_Tests_IPA.TC_tmt_loadshare

Similar to previous commit for M3UA, this time for IPA.
Since in IPA so far the SLS is fixed per ASP, we need to add an extra
sender ASP which will get a new asp_id (and hence SLS) so that we can
also test traffic being sent/distributed to the 2nd receiver.

Change-Id: I61c3efbf8e30533d051e2de506f7c8eaae7e297b
The file was modifiedstp/expected-results.xml
The file was modifiedstp/STP_Tests_IPA.ttcn
The file was modifiedstp/osmo-stp.cfg
The file was modifiedstp/STP_Tests.ttcn
Commit 03b3bff502a10538544da996574b7d5e61672eb2 by Pau Espin Pedrol
stp: STP_Tests.ttcn: Use M3UA PC and RCTX from config

Change-Id: I81c8402d5ccd6e59f2a6869927c637fff30cb952
The file was modifiedstp/STP_Tests.ttcn
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit 59f515ce4378408922791a4dfa59ecf0e02cfde6 by pmaier@sysmocom.de
es9p_Types_JSON: split headers into separate module

The headers used in the JSON binding of ES9+ are also used in ES2+, ES11 and ES12.
Let's split the headers into a separate module, so that we can re-use them in
other definitions too.

Change-Id: I0242c877805003fa67445800960f75ce27752383
Related: SYS#7339
The file was modifiedeim/gen_links.sh
The file was addedlibrary/euicc/esx_header_Types_JSON.ttcn
The file was modifiedlibrary/euicc/es9p_Types_JSON.ttcn
Commit 874b0001ced9248bf162e3cab44d3c751a5d68bb by pmaier@sysmocom.de
RSPDefinitions_Templates: add missing default values

The template parameters of some templates lack a reasonable default.
Let's add default values to those.

Related: SYS#7339
Change-Id: Ia55d17a00462c7c7729eb0d8d24ab0556c4c6918
The file was modifiedlibrary/euicc/RSPDefinitions_Templates.ttcn
Commit 368e35f9fb84904482a77175041cbb74f2c61a6f by pmaier@sysmocom.de
es9p_Types_JSON: add decoder/encoder functions for opposite direction

We currently only have ES9p encoder/decoder functions to emulate an ES9p server,
however, we will need to emulate ES9p clients too

Change-Id: Ic7e3390bd09cc9e0c91ca90ac60cdde5d2ce1384
Related: SYS#7339
The file was modifiedlibrary/euicc/es9p_Types_JSON.ttcn
Commit ef4f54ac563e72a902be8341bcf6d78b4481d4df by pmaier@sysmocom.de
HTTP_Adapter/cosmetic: remove stray newline

Change-Id: If23ca399071ddb8f9f39797b543d43f6173406f9
The file was modifiedlibrary/HTTP_Adapter.ttcn
Commit b147943311904948903d29fdc0343e5827122f74 by Oliver Smith
testenv/README: fix markdown syntax

Put the two wget lines into a code block, otherwise the line break is
omitted and it looks weird.

Change-Id: Ia61d56cdf4822595e2a05b320e387a079bdbfeb2
The file was modified_testenv/README.md
Commit 946605badc75aac38b35e420387966153c82ade4 by pmaier@sysmocom.de
HTTP_Adapter: allow requests to different hosts

The host that is requested via the HTTP_Adapter is configured once on
initialization. This is fine if the test scenario only has exactly one
destination to query. For multiple destinations, this model does not
work. Let's add an http_pars parameter to the request functions, so
that the user can direct the requests to different hosts dynamically.

Related: SYS#7339
Change-Id: Ic87674f2381b3c6a1be6d0ce28a9e5403cda201b
The file was modifiedlibrary/HTTP_Adapter.ttcn
Commit b26f4f635f74fcd1b69a10728f3a73f98dffc632 by pmaier@sysmocom.de
HTTP_Adapter: add missing omit qualifiers

On some function in the HTTP_Adapter module, the (omit)
qualifiers are missing.

Related: SYS#7339
Change-Id: I985021852cbe2bcce60b1466e8ec9c3820a0c0f8
The file was modifiedlibrary/HTTP_Adapter.ttcn
Commit dacbca96bad18d177dfff08378ae3f60b68fe1ef by Oliver Smith
testenv: use --autoreconf-in-src-copy by default

Pass --autoreconf-in-src-copy to osmo-dev's gen_makefile.py by default,
so we can always avoid errors related to:

* running "./configure" in-tree and out-of-tree (results in "configure:
  error: source directory already configured; run "make distclean" there
  first")
* running "./configure" / "autoreconf" with different autotools versions
  (on host system and in podman container)

I've kept is as experimental flag at first for better testing, but make
it the default now as it seems to work reliably.

The old make dir is cleaned up when the user runs "./testenv.py clean"
the next time.

Related: osmo-dev I18ac50e3441df81e1fe7d8d5321df7e80ab9c650
Change-Id: I41e1fb534e253ddb43f266d73485b83259a8aa40
The file was modified_testenv/testenv/__init__.py
The file was modified_testenv/testenv/requirements.py
The file was modified_testenv/testenv/osmo_dev.py
Commit 964e44bc64dce01495bd43f97e44d7e05086857f by Pau Espin Pedrol
deps: Update titan.ProtocolModules.M3UA to upstream master

MR contained in our fork was merged [1], so we can use upstream again.

[1] https://gitlab.eclipse.org/eclipse/titan/titan.ProtocolModules.M3UA/-/merge_requests/4

This patch doesn't contain an update hash because it was merged as
fast-forward so the commit hash now in master HEAD did not change from
the one in our repo fork branch.

Change-Id: Icf411559d3ba5bc699d8a66d7c42e7034392a9e6
The file was modifieddeps/Makefile
Commit 1468b6fc125663e64e297b059cfb549ec0f60906 by Pau Espin Pedrol
stp: STP_Tests_IPA.TC_tmt_loadshare_sls: Fix test expectancies

Change-Id: I68856e11a92b707eb11ab4813390e6faf3c54b69
The file was modifiedstp/STP_Tests_IPA.ttcn
Commit fb4b71777cd5b8a2f04939a6230ac172d560caa2 by Pau Espin Pedrol
sccp: Improve logging receiving unexpected msg

Change-Id: I90c5236882e96fc038fee0d2f4551cfc58767c78
The file was modifiedsccp/SCCP_Tests_RAW.ttcn
Commit 20e1d390f0bf4e9bc961f279197dd4489476ee5b by Pau Espin Pedrol
sccp: Fix test rx SLS expectancies

The SLS is the same for all messages in conn being sent in one direction, but
doesn't need to be the same value on both directions.
Since the SLS value on the other direction is not selected by the test
itself, we cannot expect a given specifi value.
Update the test expectancies.

This started to fail since recently libosmo-sigtran started properly
setting SLS values, eg libosmo-sigtran.git
7781eb275da41a9b6b1ea5d8b0e802e87a8e9d53 and
0061e8d0bcba3b0ed5ea255588619627d0975380.

Change-Id: Ic288b58629361de9cfadb568a27b51b7e02c9e99
The file was modifiedsccp/SCCP_Tests_RAW.ttcn
Commit 8fc1b2152ff7615f610e7a040cb3b5135dfc5351 by Pau Espin Pedrol
SCCP_Templates: Expect either proto class0 or class1 upon rx SCCP

Until recently, libosmo-sigtran only sent class0, but it is now able to
send class1 too (0061e8d0bcba3b0ed5ea255588619627d0975380).
Adapt the test expectancies.

Change-Id: Ia1e05b24f1b56404d951eece0e9314d784d375db
The file was modifiedlibrary/SCCP_Templates.ttcn
Commit 45ae4a9fe5d996f1352579fc8cafd03f871622fb by laforge
HTTP_Server_Emulation: allow multiple HTTP server ports

At the moment the HTTP_Server_Emulation component can only provide
a single HTTP server. Let's extend it so that it can provide multiple
HTTP server.

Related: SYS#7339
Change-Id: I11df9df5c3041f977b458835e923c74abe3bba7b
The file was modifiedlibrary/HTTP_Server_Emulation.ttcn
The file was modifiedeim/eIM_Tests.ttcn
The file was modifiedipad/IPAd_Tests.ttcn
Commit fbd787d9d5de270b72dee5f7076f8e928ee88774 by Oliver Smith
testenv: -h output: add more binary repo examples

It wasn't clear how to use the nightly asan repository with testenv.
Extend the help output for that.

Change-Id: I5e18059f129423eac3374bd6beff32930a0f7c95
The file was modified_testenv/testenv/__init__.py
Commit 79a9e4970fa86126ec9affdd1f7a4cc0a3df1c08 by Vadim Yanitskiy
bts: BTS_Tests.cfg: remove commented out params

... most of them are personal stuff.

Change-Id: I892ae9003082da78ba41df55b6fb56ff4aae5526
The file was modifiedbts/BTS_Tests.cfg
Commit aa1ceb8f87c6c9d1d0d2de1e6a33b4bc9fa44823 by Vadim Yanitskiy
bts: BTS_Tests.cfg: set BTS_Tests.mp_transceiver_num

At least for osmo-bts-trx, we are running the testsuite with 4
transceivers.  This is also required for running the hopping config.

Change-Id: I449001f67abe1748f221c1ef9d0212f024f710dd
The file was modifiedbts/BTS_Tests.cfg
Commit 6c973bdd6e5a5b476ce3d82cb61dd90e1ba210cb by Pau Espin Pedrol
bts: Run osmo-bts-trx with sched_rr priority

use a real time prio since it really needs to do stuff in ral time with
high prio. Use lower rt prio than fake_trx since that one is the most
important piece providing clock.

Change-Id: I0251ed3ec0645617cf4e9bcc03e75c805bf1634c
The file was modifiedbts/osmo-bts.cfg
Commit 422f442d62c2f1265acbf820b49577354e259f0d by laforge
asterisk: Rework test TC_ims_call_mo_after_tcp_conn_closed with new expectancies

Previous expected behavior (and Asterisk-UE implementation) was wrong.
Since recently, Asterisk behaves better, that is, whenever the TCP conn
is dropped by the peer, it will attempt re-connecting and
re-registering.

Related: SYS#7398
Change-Id: I7ec1e8e30c4d72be96c8e300e0d038e63ba0e600
The file was modifiedasterisk/Asterisk_Tests.ttcn
The file was modifiedasterisk/IMS_ConnectionHandler.ttcn
Commit 878bd8e8b1730810dccccecfd634d162579379ef by Pau Espin Pedrol
mme: Take into account KSI update by Network

Since recently, open5gs updates the KSI received from the UE in order to
comply better with 4G Core expectancies.

Track assigned KSI in ttcn3 code and update it according to
expectancies.

Depends: open5gs.git 70310979c58fe186e9eaa06bec9d9a31f24ff7a1
Change-Id: Ie97788c5d9996370cd3e24cc0ff7c003adff1a65
The file was modifiedlibrary/NAS_Templates.ttcn
The file was modifiedmme/MME_Tests.ttcn
Commit 3d453535309a811881a6109bd2d304bb489eca60 by Pau Espin Pedrol
mme: Replace TC_s1ap_setup_wrong_plmn with test with different expectancies

This test was written following previous open5gs behavior, which was
wrong and updated in https://github.com/open5gs/open5gs/issues/3544.

Expect test to trigger a successful S1 setup procedure.
Rename the test to reflect the new expectancies.

Related: OS#6634
Change-Id: I3aba3d642e3bc70f08b6e0713514fb8906da775d
The file was modifiedmme/MME_Tests.ttcn
The file was modifiedmme/expected-results.xml
Commit e890d4ca47465bbf2fbe160d879538d1c0b4cf4b by Vadim Yanitskiy
rmlinks.sh: use -delete instead of -exec rm

Change-Id: Ic2cf9c36159a2bbf1acb59e6b316d1ef30aabe28
The file was modifiedrmlinks.sh
Commit 48fc8c0e9bb5ac555399c1f04c78e3781b84a077 by Vadim Yanitskiy
rmlinks.sh: remove non-existent path exclude

Change-Id: I91ae0d3a610f4c9d826bfb1f579204fb0f55e7c8
The file was modifiedrmlinks.sh
Commit 5a7ce576e95560346a6c1f0e7eeb8c1673f46fea by Vadim Yanitskiy
remove unused ROHC_CNL113426_LATEST dir

Change-Id: I30a5595ad1d0dfd2d6e4193add9e9e3503210aca
The file was removedROHC_CNL113426_LATEST/doc/ROHC_CNL113426_FS.pdf
The file was removedROHC_CNL113426_LATEST/src/ROHC_EncDec.cc
The file was removedROHC_CNL113426_LATEST/doc/ROHC_CNL113426_PRI.pdf
The file was removedROHC_CNL113426_LATEST/doc/ROHC_CNL113426_UG.pdf
The file was removedROHC_CNL113426_LATEST/src/ROHC_Types.ttcn
Commit e2d11575ed143cffecc5a0a4039beebc0d4f2c16 by Vadim Yanitskiy
deps: fix overriding recipe for target 'titan.ProtocolEmulations.SCCP'

This patch fixes the following warnings:

Makefile:188: warning: overriding recipe for target 'titan.ProtocolEmulations.SCCP'
Makefile:185: warning: ignoring old recipe for target 'titan.ProtocolEmulations.SCCP'
Makefile:188: warning: overriding recipe for target 'titan.ProtocolEmulations.SCCP/clean'
Makefile:185: warning: ignoring old recipe for target 'titan.ProtocolEmulations.SCCP/clean'
Makefile:188: warning: overriding recipe for target 'titan.ProtocolEmulations.SCCP/distclean'
Makefile:185: warning: ignoring old recipe for target 'titan.ProtocolEmulations.SCCP/distclean'

The problem is that 'titan.ProtocolEmulations.SCCP' is listed in
both ECLIPSEGITLAB_REPOS and OSMOGITHUB_REPOS.

Change-Id: Ia215f02fc08d66fb56e7e0e452b75d6e2f6c59c5
Fixes: 207ce0370 ("deps: Update titan.ProtocolEmulations.SCCP to upstream master")
The file was modifieddeps/Makefile
Commit dd3ae980159c9b65e0b125fbd662e7523efb84c8 by Vadim Yanitskiy
bts: simplify f_tc_rsl_ms_pwr_ctrl()

Change-Id: I67968a0398f9957dc4cc9c7fdffaf2b0ac40b88a
The file was modifiedbts/BTS_Tests.ttcn
Commit f60cf7a324c533cf14a3258c36d5acee817500ad by Vadim Yanitskiy
library: fix coding style near f_rnd_int()

Change-Id: Ic9b97cd1626f35b3483f37fa250eea9dfd35ef51
The file was modifiedlibrary/Osmocom_Types.ttcn
Commit 2cdcfa003a5ff3ea53b7b5090d498e23739c7629 by Vadim Yanitskiy
library: add f_rnd_sleep()

Change-Id: I97474d0c39052d8a9dd294238530e0b6c31a19e0
The file was modifiedlibrary/Osmocom_Types.ttcn
Commit 76a7496f33a62ef2a6719ed126041c9a162272d6 by Vadim Yanitskiy
library/s1ap: cosmetic: fix a typo

Change-Id: I50aceea2653c426d1f60542dbb6721b8c75ed3fb
Related: SYS#7288
The file was modifiedlibrary/s1ap/S1AP_Templates.ttcn
Commit 58466982bfa2801061799193e18f1a01903e0e61 by Vadim Yanitskiy
library/s1ap: split PDU specific API to S1AP_Functions.ttcn

Change-Id: Id3ba089140093490abd0307addeb5d7287dc5894
Related: SYS#7288
The file was modifiedlibrary/S1AP_Emulation.ttcn
The file was modifiedmme/gen_links.sh
The file was addedlibrary/S1AP_Functions.ttcn
The file was modifiedmme/MME_Tests.ttcn
Commit abffd4f37822a4740b2dcc35a157b93ba1d45e01 by Vadim Yanitskiy
s1gw: derive altsteps from f_ConnHdlr_rx_s1ap_from_{enb,mme}()

Change-Id: I8637a8abed0f0152abf2dce63ac28aa90f85bdc7
Related: SYS#7288
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit 3dc20fe5be46cee02c78a34c40697e7ec503a59a by Vadim Yanitskiy
s1gw: add UE multiplex component

The UEMux is built upon the ConnHdlr component, allowing to simulate
concurrent activity of multiple virtual UEs.  This new component will
be used in follow-up patches.

Change-Id: I60e6f5d2b9882c27cecd06a2450bda4909c0532a
Related: SYS#7288
The file was addeds1gw/S1GW_UEMux.ttcn
The file was modifieds1gw/gen_links.sh
Commit 325d07697da4351ddd8f4556b984acee12c35fd2 by Vadim Yanitskiy
s1gw: add TC_uemux_uldl_nas_release

So far all of our *_multi TCs have been running the test logic in
multiple eNB connections.  This is the first TC simulating activity
of multiple virtual UEs within a single eNB connection.

Change-Id: I8e5db55739241f89592a7d2a81a13e8028e90d1d
Related: SYS#7288
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_UEMux.ttcn
The file was modifieds1gw/expected-results.xml
Commit 049d7025fc492ab372d4ba6037813bc11814c138 by Vadim Yanitskiy
s1gw: disable Nagle for eNB and MME connections

Change-Id: Id89941659fd2763aad9262b05aa007370424f2c1
Related: SYS#7288
The file was modifieds1gw/S1GW_Tests.default
Commit f2290ac1f47d0d14203207a3bd33ec348828d8a4 by Vadim Yanitskiy
msc: f_establish_fully(): merge EST_TYPE_MO_{CALL,CSD}

There's nothing special about CSD at the stage of MM connection
establishment, it looks like a normal call at this point.

Change-Id: I732b58ed43bc0d76fb78a6a41e19261658d8f755
The file was modifiedmsc/BSC_ConnectionHandler.ttcn
Commit d82ce1dd7604cfc8538cea92cb0c694c55c33b7f by Vadim Yanitskiy
msc: use f_expect_paging() in SS/USSD TCs

Change-Id: Ia75420c738ef412af6ae602566fab7c997b48335
The file was modifiedmsc/MSC_Tests.ttcn
Commit adfc1d11aa46a6ad8bffb207af2958fddba6833c by Vadim Yanitskiy
msc: split up as_unexp_gsup_or_bssap_msg()

Make use of derived as_unexp_{gsup,bssap}_msg() altsteps.
Take a chance to improve them by printing unexpected PDUs.

Change-Id: Ie6c349bdae289d19614809545e23c2b7bf88f8ed
The file was modifiedmsc/MSC_Tests.ttcn
Commit e9de1515d41aa979cbf2446b6530d24140811fa7 by Vadim Yanitskiy
msc: add TC_gsup_mt_sms_{paging,conn}_timeout

Change-Id: Ief16753783e044911f1e3cef8d7012810d709e61
Related: SYS#7323
The file was modifiedmsc/expected-results.xml
The file was modifiedmsc/MSC_Tests.ttcn
Commit 64db5053a31f720f2fb7311f5e95f7eef52d423d by Vadim Yanitskiy
s1gw: ConnHdlr: allow passing {MME,ENB}-UE-S1AP-ID

This is needed for follow-up UEMux testcases, in which we spawn
multiple virtual UEs with unique {MME,ENB}-UE-S1AP-IDs.

Change-Id: Ife37c77cff348cdfbde191dbad6da816e68ca941
Related: SYS#7288
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit cdc149a6676477368fd95ea9465b2c8a97b5f86a by Vadim Yanitskiy
s1gw: add UEMux TCs for E-RAB SETUP and RELEASE

Change-Id: Ia4583f82a768ca3d185aad596ce8ec9bbd37ad32
Related: SYS#7288
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_UEMux.ttcn
The file was modifieds1gw/expected-results.xml
Commit f3b38d4b45adc00b7e10b5f2489be04586effd3f by Vadim Yanitskiy
s1gw: add UEMux TCs for INITIAL CTX SETUP and UE CTX RELEASE

Change-Id: I811904e50dd6f0a05b0bb6babebe5b4690e2d3ec
Related: SYS#7288
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_UEMux.ttcn
The file was modifieds1gw/expected-results.xml
Commit 25e65906f9c3b84293a3ae74f7c7d046ac022f93 by Vadim Yanitskiy
s1gw: fix passing swapped {MME,ENB}_UE_S1AP_ID

This commit fixes a regression introduced in 64db5053
and makes the following TCs green again:

* TC_e_rab_modify_ind_cnf[_multi]
* TC_e_rab_modify_req_rsp[_multi]

Change-Id: I9b19a82234f547a9e44c9c034492ee4b21892818
Fixes: 64db5053 ("s1gw: ConnHdlr: allow passing {MME,ENB}-UE-S1AP-ID")
The file was modifieds1gw/S1GW_Tests.ttcn
The file was modifieds1gw/S1GW_ConnHdlr.ttcn
Commit a89579678e54923ab1a18cc55d72f5ac62d6a3b3 by Oliver Smith
remsim: make client tests work in testenv

* Prevent osmo-remsim-client-shell from closing immediately with "STDIN
  was closed, terminating".

* Fix REMSIM_Tests.cfg:
  * move mp_ to proper section
  * proper IP

Change-Id: I91b08b9bfde11f4600993b18ece1e810b61ed904
The file was modifiedremsim/testenv_client.cfg
The file was modifiedremsim/client/REMSIM_Tests.cfg
Commit bb438dc76eea5b644c258927c9fdfe84778e896f by Oliver Smith
testenv: fix building osmo-remsim with osmo-dev

Use --disable-remsim-client-ifdhandler as configure argument for
osmo-remsim. We don't need this for running tests and this prevents the
buildsystem from trying to write to /usr/lib/pcsc/drivers/ which fails
the build.

Change-Id: I3b00e5301433476bd19de3814943878f918c1fa0
The file was removed_testenv/data/osmo-dev/osmo-bts-trx.opts
The file was modified_testenv/testenv/osmo_dev.py
The file was added_testenv/data/osmo-dev/testenv.opts
Commit fd3991491645f2e5b7a0bf5b3a91a4c13290a0f8 by Oliver Smith
Cosmetic: testenv/testdir: fix formatting

This wasn't caught by previous ruff versions, fix it.

Change-Id: Ib770ee2e14811777efdb2c5867b29ba379abde7c
The file was modified_testenv/testenv/testdir.py
Commit 83ab0c8fdb80a80bb70384199f0f88c93c8f2f1b by Pau Espin Pedrol
stp: TC_tmt_loadshare*: Use new vty command 'binding-table reset'

Reset the eSLS binding table state before starting the test, to run it
with a clean state.

This test also fixes TC_unknown_client_dynamic_tmt_loadshare since it
now resets the table after connecting the 2nd dynamic ASP, which allows
re-distributing all seeds in the table into the new available set of
ASPs.

Depends: libosmo-sigtran.git Change-Id I56c34072a9ded42c13dbfc105a0ab3353ca353ec
Change-Id: I40b7724edcc06a3df641e316be4770d0e56bb72d
The file was modifiedstp/STP_Tests_IPA.ttcn
The file was modifiedstp/STP_Tests_M3UA.ttcn
Commit f008dd8f7a8af34bcf42ea5dbc4a3c350e2d27e5 by Oliver Smith
testenv: fix OSMO_DEV_MAKE_DIR env var

When --autoreconf-in-src-copy was made the default, the make dir name
has been changed to make2 but this variable was not adjusted. Fix it.

Fixes: dacbca96 ("testenv: use --autoreconf-in-src-copy by default")
Change-Id: Ia46ebe1240806995960545afbb34e6533580f209
The file was modified_testenv/testenv/cmd.py
Commit ea43b4aac4d50b1b815620bdb3d40cb8796631b3 by Oliver Smith
sccp: testenv: fix hardcoded sccp_demo_user path

The current path only worked for with podman and with osmo-dev. Make it
work for the following use cases too:

* without podman, with osmo-dev
* with podman, with binary packages (instead of osmo-dev)

Removing package=no is required, so testenv builds sccp_demo_user from
source when running with --binary-packages. This is needed as
sccp_demo_user is not packaged (OS#5899).

Change-Id: Id6e0b669dcb71cab9e789fe011e60827a8e07f77
The file was addedsccp/run_sccp_demo_user.sh
The file was modifiedsccp/testenv.cfg
Commit 563100e13fb12b2bb0b073adeab9327778d0bb70 by Oliver Smith
sccp: testenv: fix run with asan + latest binaries

When running against osmocom:nightly:asan, build sccp_demo_user with
--enable-sanitize. Otherwise this code is not running with asan and
doesn't even start (as the libraries we link against are built with
--enable-sanitize).

When running against osmocom:latest, check out the latest tag instead of
current master.

Fixes: OS#5899
Change-Id: I5307125560694feae9f0978ebd27607a77ed8675
The file was modified_testenv/testenv/podman_install.py
Commit f10f525ce38726785bb935e124ad4591b9097c13 by Oliver Smith
testenv: remove TESTENV_GIT_DIR

This variable is not used anymore, remove it.

Change-Id: Iabb9fa3b9b393b2cb7f18fb877746e5d1e510e63
The file was modified_testenv/testenv/cmd.py
Commit a61fcf1c87c56b48e08e09b3411e2f56f6b6a8c0 by Vadim Yanitskiy
msc: add/expect network-originated MT-Forward-SM.Err

The idea is to have two variants of the MT-Forward-SM.Err:

* _MS: originated by the MS/UE (via RP-ERROR),
* _NET: originated by the network (MSC) itself.

In both testcase scenarios we expect the network to indicate the
MT_FORWARD_SM_ERROR on its own, due to the lack of response from MS/UE.
Use the right template kind for that, expect a specific Cause value.

Change-Id: Ic27d943645fdff8d34f958e3bf16c8ee6e8368d2
Related: osmo-msc.git I51d92752471147e6d21a5059bebb0702b32642a5
Related: e9de1515 ("msc: add TC_gsup_mt_sms_{paging,conn}_timeout")
Related: SYS#7323
The file was modifiedlibrary/GSUP_Templates.ttcn
The file was modifiedmsc/MSC_Tests.ttcn
Commit fff7a5d8fbf8dd3ccc768c7c89219a6fbd9b1ae8 by Vadim Yanitskiy
msc: execute more SMS-over-GSUP tests via UTRAN

Change-Id: Ia3c044ad04561a4ee6dbb4a3fe59fedd3ac79bba
Related: 1cd11a05a ("MSC_Tests.ttcn: introduce TC_gsup_mt_multi_part_sms")
Related: 8d0d7af27 ("msc: add TC_gsup_mt_sms_lu_delay for X36 (LU delay) timer")
Related: e9de1515d ("msc: add TC_gsup_mt_sms_{paging,conn}_timeout")
The file was modifiedmsc/expected-results.xml
The file was modifiedmsc/MSC_Tests.ttcn
The file was modifiedmsc/MSC_Tests_Iu.ttcn
Commit dc17cca7ea3dc1bc86d4654191df82d42bbbf63c by Oliver Smith
testenv: make clone project function generic

Prepare to use the same code for cloning libosmocore in order to build
osmo-ns-dummy in a follow-up patch, which isn't in the binary packages
either.

Change-Id: Id19ed229545b22751c810b647e9be24f955f348d
The file was modified_testenv/testenv/podman_install.py
Commit 8b0f9ab9f1349611114e6cbf2974576b1a0563c1 by Oliver Smith
testenv: clone_project: fix getting latest version

Extend the logic for getting the last version, so it doesn't only work
with libosmo-sigtran (where the last version happens to be the last one
returned by "git ls-remote --tags") but also for libosmocore where this
isn't the case. Filter the versions by the relevant ones and then sort
them to get the highest one.

Change-Id: Ic15e385b9c8bab5c0dc70276049d6ad5ae927a6a
The file was modified_testenv/testenv/podman_install.py
Commit 0f12d25ec57a2795fef62cf65eab8dbb3534102c by Oliver Smith
ns: initial testenv config

Change-Id: I7b0d81db49dae0a3bb3d4c3b36fd3f8b4b590760
The file was addedns/testenv_udp.cfg
The file was modified_testenv/testenv/podman_install.py
The file was added_testenv/data/scripts/build_osmo_ns_dummy.sh
The file was addedns/testenv_sns.cfg
The file was addedns/run_osmo_ns_dummy.sh
The file was addedns/testenv_sgsn_sns.cfg
Commit 4e4398aac6d19fe16c40be88290e0da08588fd2d by Pau Espin Pedrol
hnbgw: Support configuring RAC on each hnb conn

Change-Id: Ie6a731d641ca963f71537e09fda8c894730bee84
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit b0e3627eaa2665a03eb2301b099da6bceb4e4d4a by Pau Espin Pedrol
hnbgw: Test paging with PAge Area ID IE

Change-Id: I313aadae08f187b413e894a93faa29ce771ef7fe
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/expected-results.xml
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
Commit 2ad3001b4bbd3e4cc2fa8fe5a70a5d057a9f1e36 by Pau Espin Pedrol
stp: Fix typo in comment

Change-Id: I9f4a1e5ec0b0d2614b3cec0768e8847fce3e3cdf
The file was modifiedstp/STP_Tests_IPA.ttcn
Commit 9d542aa3544b064d1560792dce754b1d9a30f8a5 by Oliver Smith
testenv: clean: fix cleaning git dir

Don't try to build a PATH that contains the testsuite dir if running the
"clean" action, because then no testsuite is defined.

Fix for:
  $ ./testenv.py clean
  [testenv] + ['rm', '-rf', '/home/user/.cache/osmo-ttcn3-testenv/git']
  Traceback (most recent call last):
    File "/home/user/code/osmo-dev/src/osmo-ttcn3-hacks/./testenv.py", line 137, in <module>
      main()
    File "/home/user/code/osmo-dev/src/osmo-ttcn3-hacks/./testenv.py", line 133, in main
      clean()
    File "/home/user/code/osmo-dev/src/osmo-ttcn3-hacks/./testenv.py", line 117, in clean
      testenv.cmd.run(["rm", "-rf", path])
    File "/home/user/code/osmo-dev/src/osmo-ttcn3-hacks/_testenv/testenv/cmd.py", line 106, in run
      env=generate_env(env),
          ^^^^^^^^^^^^^^^^^
    File "/home/user/code/osmo-dev/src/osmo-ttcn3-hacks/_testenv/testenv/cmd.py", line 72, in generate_env
      path += f":{os.path.join(testenv.testsuite.ttcn3_hacks_dir, testenv.args.testsuite)}"
                                                                  ^^^^^^^^^^^^^^^^^^^^^^
  AttributeError: 'Namespace' object has no attribute 'testsuite'

Change-Id: I65da89581260fc60b3d8da0a93ee04c0c22c7f2c
The file was modified_testenv/testenv/cmd.py
Commit 0aea324764a6439e97aac2f6b19cea7dbfcbd787 by Oliver Smith
Revert "hnbgw: Test paging with PAge Area ID IE"

This reverts commit b0e3627eaa2665a03eb2301b099da6bceb4e4d4a: caused
regression in several other tests.

Related: OS#6762
Change-Id: I416d514e739cc0b16832192bfdb746a4ed09336f
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
The file was modifiedhnbgw/expected-results.xml
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit 0d958c2c723afcb911dc6bbc40027b30f526fe62 by Oliver Smith
Revert "hnbgw: Support configuring RAC on each hnb conn"

This reverts commit 4e4398aac6d19fe16c40be88290e0da08588fd2d: caused
regression in several other tests.

Related: OS#6762
Change-Id: I077c584219bfa54468bd796a1fc2e85fd60b7a02
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/ConnHdlr.ttcn
Commit 6aff1b551255c1c789494ab6bec61baa91302d1b by Vadim Yanitskiy
msc: add TC_mo_ussd_evil_ms for OS#6756

This is an "evil MS" scenario that crashes current osmo-msc.

Change-Id: If1d85a1b4b63b01b4565e53677acfd21e664e799
Related: osmo-msc.git I724f0f0c9ef8611d3c3653e9370361b252127f72
Related: OS#6756
The file was modifiedmsc/expected-results.xml
The file was modifiedmsc/MSC_Tests.ttcn
Commit 2ba10d9ea1ccb97843d2b416ffb2c9ca5a05f45e by Oliver Smith
buildsystem: move related scripts to subdir

Clean up the main directory by moving all buildsystem related scripts
into a _buildsystem subdirectory.

Rename gen_links.sh.inc to gen_links.inc.sh while at it, so vim does
syntax highlighting as shell script and not bitbake.

The rest of these patches in this series lead up to changing the
buildsystem to build out-of-tree (so we don't clutter the source dirs
with symlinks and build artifacts) and making the build output more
readable.

Related: OS#6599
Change-Id: Ieeefdfd74b2698794fb12fec4ed32565dc9f36a6
The file was modifiedmsc/regen_makefile.sh
The file was modifiedpcap-client/gen_links.sh
The file was removedregen-makefile.sh
The file was modifiedpgw/regen_makefile.sh
The file was modifiedipad/regen_makefile.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedsysinfo/regen_makefile.sh
The file was modifiedmme/regen_makefile.sh
The file was modifiedstp/gen_links.sh
The file was modifiedSCCP_Test/regen_makefile.sh
The file was modifiedstp/regen_makefile.sh
The file was modifiedlibrary/rua/regen_makefile.sh
The file was modifiedbts/regen_makefile.sh
The file was modifiedlibrary/sbcap/regen_makefile.sh
The file was modifiedpcrf/regen_makefile.sh
The file was modifiedepdg/regen_makefile.sh
The file was modifiedhss/gen_links.sh
The file was modifiedfr-net/regen_makefile.sh
The file was modifiedlibrary/ranap/regen_makefile.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedupf/gen_links.sh
The file was added_buildsystem/rmlinks.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedMakefile
The file was modifiedsgsn/gen_links.sh
The file was removedgen_links.sh.inc
The file was modifiedremsim/regen_makefile.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedeim/regen_makefile.sh
The file was modifiedsimtrace/gen_links.sh
The file was added_buildsystem/regen-makefile.sh
The file was modifiedbsc/regen_makefile.sh
The file was modifiedsip/regen_makefile.sh
The file was modifiedhnbgw/regen_makefile.sh
The file was modifiedcbc/regen_makefile.sh
The file was modifiedmme/gen_links.sh
The file was modifiedhnodeb/regen_makefile.sh
The file was modifieddia2gsup/regen_makefile.sh
The file was modifiedlibrary/s1ap/regen_makefile.sh
The file was modifiedsccp/regen_makefile.sh
The file was modifiedpcap-client/regen_makefile.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedpcu/regen_makefile.sh
The file was modifiedbts/gen_links.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modifiedhss/regen_makefile.sh
The file was modifiedfr/regen_makefile.sh
The file was added_buildsystem/gen_links.inc.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedccid/regen_makefile.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedlibrary/hnbap/regen_makefile.sh
The file was removedrmlinks.sh
The file was modifiedupf/regen_makefile.sh
The file was modifiedasterisk/regen_makefile.sh
The file was modifiedipad/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedselftest/regen_makefile.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedsmlc/regen_makefile.sh
The file was modifiedns/regen_makefile.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedgbproxy/regen_makefile.sh
The file was modifiedggsn_tests/regen_makefile.sh
The file was modifieds1gw/gen_links.sh
The file was modifiedsgsn/regen_makefile.sh
The file was modifieds1gw/regen_makefile.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedmgw/regen_makefile.sh
The file was modifiedlibrary/sabp/regen_makefile.sh
The file was modifiedhlr/regen_makefile.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedbsc-nat/regen_makefile.sh
The file was modifiedsimtrace/regen_makefile.sh
The file was modifiedsip/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedremsim/gen_links.sh
Commit 85b38bbc8512df88fb246a5f6855a460ef3a4961 by Oliver Smith
buildsystem/regen_makefile: change to inc script

Make the regen_makefile script more consistent with gen_links.inc.sh by
also turning it into an include script. By doing this all previously
declared variables are available in regen_makefile, which means export
and passing as arguments is not needed anymore, making the resulting
users simpler.

Use #!/bin/sh -e while at it and remove empty CPPFLAGS_TTCN3 vars.

Change-Id: I10a41671e857024be6a5e8577c2aaca83228793e
The file was modifiedgbproxy/regen_makefile.sh
The file was modifiedpgw/regen_makefile.sh
The file was modifiedsmlc/regen_makefile.sh
The file was modifiedhnbgw/regen_makefile.sh
The file was modifiedns/regen_makefile.sh
The file was modifiedasterisk/regen_makefile.sh
The file was modifiedmsc/regen_makefile.sh
The file was modifiedbsc/regen_makefile.sh
The file was modifiedpcrf/regen_makefile.sh
The file was modifiedhnodeb/regen_makefile.sh
The file was modifieddia2gsup/regen_makefile.sh
The file was modifiedfr/regen_makefile.sh
The file was modifiedSCCP_Test/regen_makefile.sh
The file was modifiedsip/regen_makefile.sh
The file was modifiedepdg/regen_makefile.sh
The file was modifiedpcap-client/regen_makefile.sh
The file was modifiedipad/regen_makefile.sh
The file was modifiedpcu/regen_makefile.sh
The file was modifiedcbc/regen_makefile.sh
The file was modifiedselftest/regen_makefile.sh
The file was modifiedstp/regen_makefile.sh
The file was modifiedsysinfo/regen_makefile.sh
The file was added_buildsystem/regen_makefile.inc.sh
The file was modifieds1gw/regen_makefile.sh
The file was modifiedremsim/regen_makefile.sh
The file was modifiedbsc-nat/regen_makefile.sh
The file was modifiedfr-net/regen_makefile.sh
The file was modifiedeim/regen_makefile.sh
The file was modifiedccid/regen_makefile.sh
The file was modifiedsgsn/regen_makefile.sh
The file was modifiedsimtrace/regen_makefile.sh
The file was modifiedhss/regen_makefile.sh
The file was modifiedmgw/regen_makefile.sh
The file was removed_buildsystem/regen-makefile.sh
The file was modifiedggsn_tests/regen_makefile.sh
The file was modifiedhlr/regen_makefile.sh
The file was modifiedmme/regen_makefile.sh
The file was modifiedbts/regen_makefile.sh
The file was modifiedsccp/regen_makefile.sh
The file was modifiedupf/regen_makefile.sh
Commit c444e78561adfeb0935ad37432f6c826f6e5c0c7 by Oliver Smith
buildsystem: remove ttcn3_compiler workaround

The related debian bug has been fixed in 2018, so remove the workaround.
I've also verified that the binary is called "compiler" in Arch Linux
(as some developers are on Arch).

Change-Id: Ia50aa3caffeaa85eefba10695096aa23dcb69c93
The file was modified_buildsystem/regen_makefile.inc.sh
Commit c643bd3f72a0e4f1f60ef05341fec2c0944d67bd by Oliver Smith
buildsystem/regen_makefile: modernize

Apply various small changes to make this file more readable.

Change-Id: I5a7dcd6171c6a370928ebedafc5ed318384dd8dd
The file was modified_buildsystem/regen_makefile.inc.sh
Commit 9a4a7d0b174af1a83d5dbd9417ba897febe79746 by Oliver Smith
buildsystem/gen_links: move set -e to users

Make it more obvious that the various gen_links.sh scripts are running
with "set -e" by adding it to the #! line instead of setting it through
an included file.

Change-Id: I4caf445bef716161526a213d6a06ecc9d30f78cb
The file was modifiedhlr/gen_links.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedbts/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
The file was modifiedsip/gen_links.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedhnodeb/gen_links.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedstp/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedpcap-client/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedhss/gen_links.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedupf/gen_links.sh
The file was modifiedasterisk/gen_links.sh
Commit 66c566812c000979a9e7e16eac7aece1a3c48124 by Oliver Smith
buildsystem/gen_links: rename ignore_pp_results

Rename ignore_pp_results to gen_links_finish in preparation for the next
patch where the function will be used for generating more symlinks
instead of writing to a gitignore file. This is a separate commit to
make the next one more readable.

Change-Id: I6a1a79f1a3ff18fe4b51e4c72c3e9b56c571935e
The file was modifiedhnodeb/gen_links.sh
The file was modifiedpgw/gen_links.sh
The file was modifiedggsn_tests/gen_links.sh
The file was modifiedhss/gen_links.sh
The file was modifiedgbproxy/gen_links.sh
The file was modifieddia2gsup/gen_links.sh
The file was modifiedipad/gen_links.sh
The file was modifiedmgw/gen_links.sh
The file was modifiedpcu/gen_links.sh
The file was modifiedasterisk/gen_links.sh
The file was modifiedpcap-client/gen_links.sh
The file was modifiedsgsn/gen_links.sh
The file was modifiedhlr/gen_links.sh
The file was modifiedstp/gen_links.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedbsc/gen_links.sh
The file was modifiedmsc/gen_links.sh
The file was modifiedmme/gen_links.sh
The file was modifiedfr-net/gen_links.sh
The file was modifiedupf/gen_links.sh
The file was modifiedns/gen_links.sh
The file was modifiedSCCP_Test/gen_links.sh
The file was modifiedepdg/gen_links.sh
The file was modifiedsimtrace/gen_links.sh
The file was modifiedpcrf/gen_links.sh
The file was modifiedremsim/gen_links.sh
The file was modifiedsmlc/gen_links.sh
The file was modifiedcbc/gen_links.sh
The file was modifiedeim/gen_links.sh
The file was modifiedccid/gen_links.sh
The file was modifiedfr/gen_links.sh
The file was modifiedsip/gen_links.sh
The file was modifiedselftest/gen_links.sh
The file was modifiedbsc-nat/gen_links.sh
The file was modifiedsccp/gen_links.sh
The file was modifiedbts/gen_links.sh
The file was modifiedsysinfo/gen_links.sh
The file was modifieds1gw/gen_links.sh
The file was modifiedhnbgw/gen_links.sh
Commit 050ba48cc6270344af406188b39ca3e249924daf by Oliver Smith
buildsystem: build out-of-tree

The buildsystem used to create symlinks to dependency source files in
the testsuite directories, and then building inside that source
directory. This lead to many unrelated files being in the source
directory.

Change the logic to create symlinks to all sources in a separate
$BUILDDIR instead (default: _build) and do the build there.

Advantages:
* Source directories are not cluttered with other files anymore.
* Clean up logic becomes much simpler and faster (rm -rf _build instead
  of generating a Makefile and running "make clean" in every testsuite
  directory).
* No need to generate gitignore files on the fly anymore.
* Using a separate $BUILDDIR is now possible, this will be used by
  testenv in a follow-up patch when running with podman, to make sure
  that build artifacts from podman and not using podman are not mixed as
  they are incompatible.

Related: OS#6599
Change-Id: If18aaf2a2a0d55bb617e5cb1b73f6ee4b1952494
The file was modifiedstart-testsuite.sh
The file was modified_buildsystem/regen_makefile.inc.sh
The file was modified_testenv/testenv/testsuite.py
The file was modified.gitignore
The file was removed_buildsystem/rmlinks.sh
The file was modified_buildsystem/gen_links.inc.sh
The file was modifiedMakefile
Commit fb850543a1508156bdaccfd9a81804c9a412effe by Oliver Smith
buildsystem: make output more readable

Generate short and readable compile messages:

  CC       IPL4asp_PT.o
  CCLD     TCCInterface.so
  CCLD     TELNETasp_PT.so
  CCLD     MGCP_Test

Instead of the very verbose messages we would get otherwise. Especially
the linking message clutters a whole page of terminal output without
this path:

   if ... g++ ... $ALL_OBJ_FILES; then : ; else ... $ALL_OBJ_FILES; fi

Change-Id: I780106e64089dc24a7ba724f6a94e67417d49c30
The file was modified_buildsystem/regen_makefile.inc.sh
Commit 92b378412d503581db16b88b957a36c56a4eac53 by Oliver Smith
testenv: remove copy_ttcn3_hacks_dir

When running with podman, set a separate builddir to avoid conflicts
with build objects generated from running "make" outside of podman. As
the buildsystem supports setting a differerent builddir directly now,
remove the copy_ttcn3_hacks_dir logic that was used to emulate this
feature.

Change-Id: I9cae0c4f8c34bb6876ef51048ef19b35a2e369a9
The file was modified_testenv/testenv/testenv_cfg.py
The file was modified_testenv/testenv/requirements.py
The file was modified_testenv/testenv/testsuite.py
Commit 16f8d193fe7350ab4ffd3de09e970d1fd2f95ab9 by Oliver Smith
testenv: refactor run --until-nok code

Refactor the code in preparation for using the code that checks if the
testsuite was successful with a new --bisect arg in the next patch.

Change-Id: I3a8fc83c6833f0d2a8be9c0d7ddaea0546859988
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv.py
Commit 0eb0e4a3b766f8d1cc6b83b8aa719067a47921ff by Oliver Smith
testenv: run: add --bisect argument

Add an argument that lets testenv.py exit with != 0 when at least one
test has failed, so it can be used with "git bisect".

Change-Id: I941064c1c704560e0f7351c82e810481cd72b6da
The file was modified_testenv/testenv/testsuite.py
The file was modified_testenv/testenv/__init__.py
Commit 4c55a1b18164f07dbe333be504206042e421aa04 by Oliver Smith
start-testsuite: fix passing $TEST to ttcn3_start

Fix that testenv / ttcn3_start kept running after the testsuites were
already done. This was caused by passing an empty string to ttcn3_start
as test argument, which causes it to still use the config file, but run
in a single test mode:

https://gitlab.eclipse.org/eclipse/titan/titan.core/-/blob/9.0.0/mctr2/mctr/ttcn3_start#L307-319

After the first test ran, ttcn3_start sends "emtc" to the MTC, which
replies with "MTC cannot be terminated." as it is still in
MC_EXECUTING_TESTCASE instead of MC_READY:

https://gitlab.eclipse.org/eclipse/titan/titan.core/-/blob/9.0.0/mctr2/cli/Cli.cc#L695-700

The ttcn3_start script then waits forever for the "MTC terminated.."
string, which doesn't come since "emtc" isn't sent to the MTC a second
time:

https://gitlab.eclipse.org/eclipse/titan/titan.core/-/blob/9.0.0/mctr2/mctr/ttcn3_start#L353-356

Fixes: 050ba48c ("buildsystem: build out-of-tree")
Change-Id: Ic50de8350e20d101417c5689058b64fe6547126f
The file was modifiedstart-testsuite.sh
Commit 09b0b21580c1895371c02a5fcb4aa670da4ec19f by Oliver Smith
README: use # and ## for headlines

Prepare README to be able to use deeper headline levels.

Change-Id: Ice2baaf3ffdd1c11238c7791ab39925bed10818d
The file was modifiedREADME.md
Commit 94c920d1e478bdf6b2f39eb0082306e366fb9586 by Vadim Yanitskiy
start-testsuite: respect $TTCN3_DIR (if set)

Change-Id: I5c1cdc6ffbe50cf7ee48a160d2f406e428326d14
The file was modifiedstart-testsuite.sh
Commit 76fb46829295808f2a587d20baa599dd57cf02f9 by Pau Espin Pedrol
Move f_{dec,enc}_mcc_mnc() API BSSMAP_Templates.ttcn -> GSM_Types.ttcn

The GsmMcc and GsmMnc types used in the function are defined in
GSM_Types.ttcn, which is also incldued by BSSMAP_Templates.
Hence, move the function there so that it can be used in other
testsuites including more generic GSM_Types.ttcn but not
BSSMAP_Templates.ttcn.

Change-Id: Iafafd2957a11d34a9402d252a169fec40593f483
The file was modifiedlibrary/GSM_Types.ttcn
The file was modifiedcbc/CBC_Tests.ttcn
The file was modifiedlibrary/BSSMAP_Templates.ttcn
Commit a5725515b5f2f8da89d6daa42b2239d81143cc7b by Pau Espin Pedrol
Fix MNC decoding in f_dec_mcc_mnc()

This API is so far only used in MSC_Tests.ttcn f_sgs_perform_lu(), but
will be used in more testsuites in follow-up commits.

Change-Id: I9db37d0dc9abbbefd57af4f0e2b91bf8a918d4e9
The file was modifiedlibrary/GSM_Types.ttcn
Commit 886dc9713aacb1e7e480e310b8382edf606e715a by Pau Espin Pedrol
hnbgw: Support configuring RAC and Cell ID on each hnb conn

Change-Id: I490e770be5e390a1f55e1dff1cf0c42e917a8d33
The file was modifiedhnbgw/ConnHdlr.ttcn
The file was modifiedhnbgw/HNBGW_Tests.ttcn
Commit a96d791ed80f1746dbe778f3b7cec484309e9db7 by Pau Espin Pedrol
hnbgw: Test paging with Page Area ID IE

Change-Id: I5a053bcf1f8470038e95d03889da077f8f967bfa
The file was modifiedhnbgw/HNBGW_Tests.ttcn
The file was modifiedhnbgw/expected-results.xml
The file was modifiedlibrary/ranap/RANAP_Templates.ttcn
Commit e217e408c4e236b87915f5c8f9bc4d39ce064983 by Oliver Smith
README: explain how to run testsuites manually

As the testsuites are now in the _build directory, running them might
not be as obvious. Add an example to the README. While at it, explain a
bit more what the testenv script does and where one can read more about
it.

Change-Id: I1ee9319ada889a8dd43cfb32776dc1a8ae12d607
The file was modifiedREADME.md
Commit 2fe6caed9404d06c2e4527e61284ca584b3e5392 by Vadim Yanitskiy
start-testsuite: remove workaround for TITAN < 9.0.0

We're using the 9.0.0 nowadays, which does not need this workaround.

Change-Id: I57eecd6e0ea9e488a2110b029ddc313bd05cd1fa
The file was modifiedstart-testsuite.sh
Commit aa25aeaa7504bbe19d1b62e6d2bee2e53a4227f8 by Oliver Smith
testenv: support fetching coredumps in jenkins

The Osmocom jenkins nodes run inside LXCs. When we get a coredump it
appears on the host, fetch it from there via testenv-coredump-helper,
which gets added to the hosts in the related patch.

Related: osmo-ci I7e66c98106b7028a393e3b873e96ae2dcb412c48
Related: OS#6769
Change-Id: I3784b4cbcef08b26f77b6f6f7a70a830d9c81a18
The file was modified_testenv/README.md
The file was modified_testenv/testenv/coredump.py
Commit e0f38967fc4ca526993c19b7bc357789463e47eb by Oliver Smith
bts: set osmo-bts sched priority to 30

Change the scheduling priority from 10 to 30, as we are currently see
osmo-bts suffering from scheduling latency in jenkins even though we
don't run other jobs at that time:

  20250425034138405 DL1C ERROR PC clock skew: elapsed_us=387574, error_us=382959 (scheduler_trx.c:449)

This should fix that the kernel prioritizes other (userspace or kernel)
processes running on the same machine that have a higher priority. We
have seen such an improvement after increasing scheduler priority for
osmo-bts-sysmo too (see I2394e6bbc00a1d47987dbe7b70f4b5cbedf69b10).

Priority 30 is higher than 10. From sched(7):

> Processes scheduled under one of the real-time policies (SCHED_FIFO,
> SCHED_RR) have a sched_priority value in the range 1 (low) to 99 (high).

This testsuite currently gets executed through docker-playground and it
fetches this config from osmo-ttcn3-hacks (see
If15461240f3037c142c176fc7da745a1701ae3f8).

Related: osmo-ci I0162f7299c8e37f893ffa10ddc4c8edece29ed7f
Change-Id: I828422e2363a58ca8c19d0f1b8a1b7d4e4bc031e
The file was modifiedbts/osmo-bts.cfg
Commit bde6f20f3848c50d19c94b3867a4884c880efe13 by Oliver Smith
tcpdump/dumpcap: move kill_rm_pidfile to inc file

Move kill_rm_pidfile out of the 4 ttcn3 tcpdump/dumpcap scripts into a
shared include file. Use the version of the function that only tries to
kill the command with sudo if it was started with sudo.

This fixes dumpcap not stopping if:

* it was started with ttcn3-tcpdump-start.sh (despite the name it will
  start dumpcap instead of tcpdump if dumpcap was found), where it gets
  started without sudo, and

* no rule is set in the user's sudoers file to run kill as root with
  NOPASSWD.

Change-Id: Ia63c37b54fb42a8c64a676334cef6f9df4152e18
The file was added_scripts/tcpdump-dumpcap.inc.sh
The file was modifiedttcn3-dumpcap-start.sh
The file was modifiedttcn3-tcpdump-start.sh
The file was modifiedttcn3-dumpcap-stop.sh
The file was modifiedttcn3-tcpdump-stop.sh