Commit Graph

1303 Commits

Author SHA1 Message Date
Pau Espin 4d0886d77d OSMUX_Emulation: Add special error case for port events
This way it's easier to quickly spot there was a problem with the socket
connection.

Change-Id: I962bf4837a9e359576c42a51a9919891186c7100
2022-08-20 08:11:27 +00:00
Pau Espin ef046b39bf OSMUX_Emulation: Use Misc_Helpers.f_shutdown() everywhere
Change-Id: Id8f104a4123fcfbc96ab07f2e9343369946e3334
2022-08-20 08:11:27 +00:00
Neels Hofmeyr a56e8fdc2d hnbgw: test PS RAB GTP mapping
Related: SYS#5895
Change-Id: I93c4689ddc016eb4eb25f8cbdd0142936c6f972b
2022-08-16 15:42:51 +02:00
Neels Hofmeyr a2d1d7a211 add library/PFCP_*, deps/PFCP
Will soon be used by new subdir 'upf' (test osmo-upf),
and by 'hnbgw' (test GTP mapping via UPF).

Related: SYS#5599
Change-Id: I0723b931b3f755ea291bffa2f27c34ba446c2f2f
2022-08-16 13:42:10 +00:00
Pau Espin f14e3ec864 bsc: Fix CBSP expectancies when receiving ETWS write-replace response
BSC_Tests_CBSP was sending an ETWS message but using non-ETWS templates
to match the response, which may differ from an ETWS one  (for instance,
ETWS related messages have no channel_ind).

Change-Id: I42941655081af6d5b04b1e061e6259d8dee94665
2022-08-09 12:51:59 +02:00
Vadim Yanitskiy 7c29c4e2c1 BSC_Tests: add TC_chan_alloc_algo_ass_dynamic
This test case verifies the new channel allocation mode, which
is expected to switch between ascending and descending modes
dynamically based on the following two configurable parameters:

* Uplink RxLev threshold (and min number of samples),
* C0 (BCCH carrier) channel load threshold.

The test case scenario includes:

Case a) Unknown Uplink RxLev => fall-back to ascending.
Case b) Not enough RxLev samples => use ascending.
Case c) Uplink RxLev below the threshold => use ascending.
Case d) Uplink RxLev above the threshold => use descending.
Case e) Uplink RxLev above the threshold, but C0 load is not.

Change-Id: Ia522f37c1c001b3a36f5145b8875fbb88311c2e5
Related: SYS#5460
2022-08-08 20:22:17 +00:00
Pau Espin 45ef775232 cbc: Introduce test TC_cell_failure_restart_idle_mme
Related: OS#4945
Change-Id: Ie0ab3d4fbe1d9a824b1f69ceacbf7dfd4f0d9728
2022-08-05 22:31:33 +02:00
Pau Espin 910ef1c74b sbcap: Add missing cause types
Change-Id: I09526f5ac19c80927b6b8ad1cff874a86e0b3a04
2022-08-05 20:29:24 +00:00
Pau Espin 8c67433741 sbcap: Fix spec references in comments
Change-Id: I89bc9d15548e6c709f0e1b614f00bc98ec41d441
2022-08-05 20:29:24 +00:00
Pau Espin e7d3d99293 cbc: Test ETWS msg over SBc-AP
So far only non-emergency CBS messages were tested, which require a
slighlty idfferent encoding on the protocol side.

Related: OS#4945
Change-Id: I506322fc8a664716db8cd79217c2091b0b926836
2022-08-05 20:29:24 +00:00
Pau Espin ad5d2dbd47 cbc: Test ETWS msg over CBSP
So far only non-emergency CBS messages were tested, which require a
slighlty idfferent encoding on the protocol side.

Related: OS#4945
Change-Id: Ie22a00120218a205db11a5622274dcc67435f5de
2022-08-05 20:29:24 +00:00
Vadim Yanitskiy 6fe5d4e33e BSSMAP_Templates: add SpeechCodecList param to tr_BSSMAP_HandoverRequest
Change-Id: Ia5ce0c03fd4198e26068ddd1f18f2e17b1ae533d
Related: OS#5529
2022-08-05 17:38:43 +00:00
Pau Espin 74f62981a8 cbc: Expect Concurrent-Warning-Message-Indicator IE in SBcAP Write-Repl-Req
3GPP TS 23.041 9.3.32 states that the IE is always present for non-ETWS
messages and never present in ETWS messages.
The present template is used for CBS messages (non-ETWS) only so far.
Once we add support to test ETWS message this will be updated
accordingly if needed.

Related: osmo-cbc.git I4a5ac56b7e6eeb85aee07ae2ddf10fa2afbbf4ef
Related: OS#4945
Change-Id: I8f2067069ecf0c46f86279413a10e5970ec4456c
2022-08-04 13:32:39 +02:00
Pau Espin b1a83fbb6d cbc: Test sending Unknown TAI List to osmo-cbc
Related: OS#4945
Change-Id: I7d8cf5e6498d03ad340b8f843ce93a20171e9fca
2022-08-04 13:32:32 +02:00
Pau Espin db247f8318 cbc: Support mme/bsc sctp/tcp server mode
Related: OS#4945
Change-Id: I9fa4ddfa18ac85644f219874e6b2166e1795e3a9
2022-08-02 11:50:54 +02:00
Pau Espin ae2e51557f cbc: Send Write-Replace-Warn-Ind after ACKing the request
This way we can test how does osmo-cbc behave when receiving such
message.

Related: OS#4945
Change-Id: Ifcdcddc7dccb5439126a5fa29bb540669ed25908
2022-08-02 08:37:16 +00:00
Vadim Yanitskiy 68c4cff30e library/GSM_RR_Types: make ts_SacchL1Header easier to use
Move parameter 'fpc' at the end and assign false by default, so that
there is not need to pass false.  We never set it to true anyway.

Change-Id: I8a0ef562c2426a637fbb9fe3d50711ee7738d04f
2022-08-01 12:37:19 +00:00
Pau Espin 78d80e7469 sbcap: Expect IE Send-Write-Replace-Warning-Indication
Since osmo-cbc.git I563e7d1c999f14b8197bb41e85b7bcf6262fe2a0, Write
Replace Warning Indication is sent, so expect it.

Change-Id: I84e3ae7a532a8a76ac1c26d357da7eaa73f39374
2022-07-28 12:39:39 +02:00
Pau Espin 7c13cb7e0f Support for SBc-AP protocol as used on the MME-CBC interface
This requires a recent libfftranscode (>=0.5) with SBC-AP support.

The asn files are obtained from 3GPP TS 29.168.

Related: osmo-cbc.git Ib278bc1d1a74459814016fef7a8fe21cc29d46c9
Related: docker-playground.git 5f3c78105836d1f2c229655df3f537a73ab6e12a
Change-Id: Ia6743e0a3e7974a5f2dd3ecf74ec331f646f6bc2
Related: OS#4945
2022-07-18 11:20:14 +02:00
Pau Espin 696fbe75a2 bsc_cbsp: Support receiving CGI as cellID in CBSP Reset and Failure Ind
New versions of osmo-bsc send CGI instead of LAC+CI, which provides more
information (PLMN).

Related: SYS#5910
Change-Id: I48e86150f499f0f458f75f132087319d80f86448
2022-07-15 14:51:43 +02:00
Vadim Yanitskiy 87ebd0bd16 library/MGCP_Templates: add send template ts_MgcpResp_Err
Change-Id: Ib0462228cece29952c91b4d18ebe2d89fed70c03
Related: OS#5572
2022-06-28 03:58:38 +07:00
Pau Espin 2b33d4e2d3 bsc-cbsp: Test BTS Failure+Restart when BTS becomes (un)available
Related: SYS#5910
Change-Id: I35ddde7bc2e39d35c301f1153416b549ba1630cd
2022-06-17 20:27:07 +00:00
Pau Espin 7b23060141 SABP: Add regen_makefile.sh
Other similar libraries also have it.

Change-Id: I74b31c041b254713b95821ff166640465ccd1409
2022-06-15 16:28:23 +02:00
Pau Espin 3cfb6c35c2 Move SABP_Selftest.ttcn under library/sabp
Same as we already have for RANAP.

Change-Id: If04d973a393153a7cd15429d036f60adeea4b5f9
2022-06-15 16:20:11 +02:00
Pau Espin 3caeebc95e Move all SABP files to library/sabp/
Let's have all SABP related stuff together in one subdir, not some under
the subdir and some directly under library/.

Change-Id: Ibfd0287194c87dcc240590e0835d6205ead194f9
2022-06-15 16:20:11 +02:00
Pau Espin b6300d1ee2 Move RUA_Emulation under library/rua/
Let's put it under library/rua to have all RUA_* files together.

Change-Id: I22bc9b53675e1f8e6b7cd834b743aa90304b522e
2022-06-15 16:20:11 +02:00
Pau Espin 4759074556 hnodeb: Update primitives to audio SAPI version 1
Audio SAPI version 1 has been added recently in osmo-hnodeb.git
I860d18b80c1041bf63a1570d435e0568c0f6b01b.
Let's update our HNBLLIF emulation to support and use it.

Related: SYS#5516
Change-Id: I9af56f5e6a70b350f2fffa2e04be384d101b52ed
2022-06-13 20:52:15 +00:00
Neels Hofmeyr f0b9ed14bd hnbgw: test SCCP CR without payload
Various tweaks are required to allow RAN_Emulation to handle, and also
to expect, an SCCP CR that has no payload data.

Related: SYS#5968
Related: If0c5c0a76e5230bf22871f527dcb2dbdf34d7328 (osmo-hnbgw)
Change-Id: I827e081eaacfb8e76684ed1560603e6c8f896c38
2022-06-08 12:07:55 +00:00
Pau Espin 7d58b0817e GTP: Send more QoS IE fields by default
This way we trigger more code paths in the GGSN_Tests IUT, like parsing
the QoS IE. This is interesting because the QoS IE has quite a complex
encoding, specially the MBR/GBR part. Those fields in turn are also
modified during the answer based on AVPs received during Gx set up of
that session.

Related: SYS#5984
Change-Id: Id195eedf530e2eff753d057ce2302dfb5275bfcd
2022-06-08 11:44:40 +00:00
Vadim Yanitskiy 9d06c638db library/StatsD_Checker: make logging messages more readable
Change-Id: I0484f36184fe3724c57cedcf203894d701b91605
2022-06-07 14:56:16 +00:00
Pau Espin ee961c77fd DIAMETER: Send QoS AVPs in Gx CCA
This way we can trigger code paths in GGSN/PGW parsing those.

Change-Id: Ib758d4e3acc331954aca6423372410cb1e341ebd
2022-06-07 08:15:19 +00:00
Pau Espin 6477d7358a DIAMETER: Introduce and rework some AVP templates
All the AVP ecosystem in DIAMETER is quite a mess. There's AVPs defined
in several different specs, sometimes even with the same name and
different AVP code and vendor.
Hence, as we add more templates it becomes important to start using the
prefix in order to differentiate where they come from.

Change-Id: Iec7c51dae136629d6b754de4dd798e988ac51f6b
2022-06-07 08:15:19 +00:00
Vadim Yanitskiy bf2aa4999f library/RSL_Types: fix wrong comment near tr_RSL_MsgTypeT
Change-Id: Ic10e324375d1495d94352e7229e6be481106e8bb
2022-06-01 00:29:56 +06:00
Pau Espin 6ed763001d Allow Setting IuUP_Cfg from test using RTP_Emulation
Change-Id: I4e8296dae40277be51974338bc0d21c939eec149
2022-05-26 18:27:39 +00:00
Pau Espin 52ee518e28 IuUP: Encode Initialization according to cfg
Change-Id: I1dec3a8dcc829ad2c308636b697b089e873fd824
2022-05-26 18:27:39 +00:00
Pau Espin 5b4f2c691f IuUP: Improve enc/dec of PDU Type 14
Related: SYS#5969
Change-Id: I33e8a82e654b5afef8bc468cf6b1fff8fa9637ce
2022-05-26 18:27:39 +00:00
Pau Espin 52562c9ca1 ggsn: test Gy Volume-Quote-Threshold feature
Change-Id: If10171589e915db8e78278d2d802e38c66b37687
2022-05-25 16:13:56 +02:00
Pau Espin cba0f6d292 ggsn/pgw: Fix Gy CCR Reporting-Reason expectancies
The Reporting-Reason can be in different places depending on its values.
In the case of TERMINATION, we expect it to be FINAL so we know its
location.

Change-Id: Id33b9bb2f7b469e03a0761dc8807770cfdf77fcc
2022-05-25 14:13:02 +00:00
Pau Espin 8fa2284189 ggsn: Validate charging reported values
Change-Id: I497309bb0b30c61bdb00e0c08f18294ecd4dd485
2022-05-23 11:35:37 +02:00
Pau Espin a2af578a1a ggsn: Improve checks around Gy messages
Change-Id: I702796f2f941b78da904faa2ffdba4185333bc0d
2022-05-19 14:13:07 +02:00
Pau Espin 837ed5092f DIAMETER_Templates: Drop unused param
Change-Id: Ic806f7d23f6e3b23365f4d45874b0bc3b3ec91d1
2022-05-18 20:14:41 +02:00
Pau Espin b8cd34a248 library/DIAMETER: Rename template to follow naming style
Change-Id: I1c7cfbea25a2da99813aa3c4f8a5760c4185ee26
2022-05-18 20:14:30 +02:00
Pau Espin 35e308a26c DIAMETER_Types_ttcn: Generate types for TS 32.299 (Gy)
Change-Id: I8413781a28362816a1f93790951c125defbbaf6b
2022-05-18 12:09:58 +00:00
Pau Espin c24a18c594 Add script to regen library/DIAMETER_Types.ttcn
This way we have a reproducible way to generate the same
library/DIAMETER_Types.ttcn file.

Change-Id: Ie6fdb8003a0faf25a5bf4027b672da73f788988e
2022-05-18 12:09:58 +00:00
Harald Welte ee4d70c025 RAN_Emulation: f_ran_unregister_imsi complement for f_ran_register_imsi
We have a function to register an IMSI but we're missing a function
to unregister it from RAN_Emulation.  This will cause resource leaks
and eventually an overflow of the ImsiTable.  We don't notice this yet
as we don't have long enough running tests in the test suite yet.

Change-Id: I1f5d86c999d4495d661166f98183dfbc48f05f47
2022-05-17 19:48:15 +02:00
Harald Welte 130110c895 GSUP: add f_unregister_imsi() to unregister an imsi/connhdlr
Change-Id: I13f6784533fe0e1f42d9595f028861d4645ec1a9
2022-05-17 19:48:15 +02:00
Harald Welte 17f3208195 GSUP: Add function to unregister expect; clarify naming
Change-Id: I4f2eb3c2b48c8626eb2da633579a874d089be73a
2022-05-17 19:48:15 +02:00
Pau Espin 535ca2658b ggsn: Append MS TimeZone IE to CreatePDPCtxReq
TS 29.060 states that it shall be included for primary PDP context
activation if the information is available, so let's add it by default.

Change-Id: I8c7e491a07cadfe09403504a82d34e412673a531
2022-05-16 17:11:08 +02:00
Pau Espin 38968e9ba9 ggsn: Append IMEISV IE to CreatePdpCtxReq
Change-Id: I00975328e94afd116e59c88fd96c5b0154810a1e
2022-05-13 17:41:15 +02:00
Pau Espin 0e127870fb ggsn: Append ChargingCharacteristics IE to CreatePdpCtxReq
This IE is conditionally added if the HLR provides it to the SGSN.
Let's add it by default so that we test code paths where GGSN parses it.

Related: SYS#5925
Change-Id: Ia0f74041d2107afeaa36b94e33474370b7b07c0e
2022-05-13 11:54:27 +02:00