Commit Graph

1303 Commits

Author SHA1 Message Date
Daniel Willmann d764dd9939 bsc-nat: Add default module parameters
Change-Id: I800ebe0f33cf7c86eea65d2e186c6af12fee6db7
2019-03-29 11:12:14 +00:00
Daniel Willmann 909523e141 bsc-nat: Use BSCx as token for BSC no x
Change-Id: I27cf1a2f5c8a55eb9883ac9430e73c95dded9b7b
2019-03-29 11:12:14 +00:00
Daniel Willmann 991fd78860 bsc_nat: Wait for bsc-nat to connect to MSC before connecting the BSC
Change-Id: Ic02ce9bd46cab7e6d4833b1d838c334e377f7d50
2019-03-29 11:12:14 +00:00
Daniel Willmann aa17059b32 bsc-nat: Fix errors due to bit rot
Change-Id: I79f3b1b74c9f6f8769a5d71fde04847435f3f345
2019-03-29 11:12:14 +00:00
Daniel Willmann 0c6f34cf8f Rename IPA_Test->BSCNAT_Tests and get proper cfg files
Change-Id: I937d2aa1abfcb302dfb529ac8be75dcd269c46e2
2019-03-29 11:12:14 +00:00
Daniel Willmann 94e4e80ec0 mgw: Ensure TC_selftest passed if no error is encountered
Change-Id: Ie1601d57ac5bf9ddf99cbbd1cdb91160dc47c84d
2019-03-28 13:08:10 +01:00
Harald Welte 7fd25cfbfd pcu: Add TC_pcuif_suspend() to test PCU->BSSGP SUSPEND processing
The PCU is supposed to forward any RR SUSPEND received by the BTS
on dedicated channels and pass it to the SGSN via BSSGP.  This provides
knowledge to the SGSN that the MS is not reachable via PS/TBF anymore
until it completes its CC dedicated mode transaction and RESUMEs.

Change-Id: Iaf35e0c1087413db1dc7d169fa716df14c78f5db
2019-03-27 11:17:49 +00:00
Harald Welte 3d1fd5feef PCU: make f_bssgp_establish() run on BSSGP_Client_CT
This means it can be used in different/other scenarios, e.g.
with tests that use PCUIF directly.

Change-Id: I1aa5dc090aac78a85a85ac190343befb0199a093
2019-03-27 11:17:49 +00:00
Harald Welte 4bff40ad04 PCUIF: Add templates for PCU_IF_MSG_SUSP_REQ
Change-Id: Ib7661790b9531be829ee550ce889151ebe1885ac
2019-03-27 11:17:49 +00:00
Harald Welte 797ab3a91c pcu: Fix MCC/MNC handling: use 'F' between MCC and MNC in 2-digit case
Change-Id: Ifdb64c501095839e86894716769adb53e3c17382
2019-03-27 11:17:49 +00:00
Harald Welte 23989a64da Osmocom_Gb_Types: Add more templates for BSSGP SUSPEND/RESUME
Change-Id: Ife25401043d565e52a73206c562bbb68bcfdbafa
2019-03-27 11:17:49 +00:00
Harald Welte b16516c0af GSM_RR_Types: Add enc_RoutingAreaIdentification()
This allows us to encode a stand-alone RAID as needed in some places.

Change-Id: I28222304b2bac893b216c47e6dc002886fab6406
2019-03-27 11:17:49 +00:00
Harald Welte 001b0dad5f BSSGP_Emulation: Handle incoming BVCI=0 messages
Like BVCI=PTP, the BVCI=0 messages must be dispatched by their
TLLI, but using the BSSGP_SP_SIG port instead of BSSGP_SP.

Change-Id: Ic456d43ec07600162991698ec3d75d36785b2fb8
2019-03-27 11:17:49 +00:00
Harald Welte 0466d16d42 pcu: move f_pcuif_tx() to PCU_Tests_RAW as it runs on RAW_PCU_CT
Change-Id: Ic60a7fc657df17ff2d3a889501f0576b98f1f4ad
2019-03-27 11:17:49 +00:00
Harald Welte f12b5a412d pcu: Ensure we're always using the same defaults for the CGI
Not all parts of the code explicitly specify each and every parameter
of the Cell Gobal Identifier (particularly we don't do that for the PCU
INFO IND), and hence multiple parts only interoperate if the same
defaults are used in all locations.

Change-Id: Iac9be9a8d4ccb4d01cc343d763d2e35873e3844f
2019-03-27 11:17:49 +00:00
Harald Welte a419df22a6 PCU_Tests.ttcn: Use "normal" Osmocom TTCN-3 coding style
Change-Id: I6eaca0ec7fb9c2dc5d59e385bc3a3a8bb85fe23a
2019-03-27 11:17:49 +00:00
Harald Welte e81d84edd2 NS_Emulation: Disable sending NS-RESET from SGSN to BSS
Change-Id: I2a5775fcaf63ac008adecaf2c602c82e9e4ccb5a
2019-03-27 11:17:49 +00:00
Harald Welte 5e514fa3db NS_Emulation: Add minimal support for SGSN-side SNS handling
Change-Id: I1edf739d6fd39478f662a28a7d9334ca51c270a3
2019-03-27 11:17:49 +00:00
Philipp Maier 8a581d2409 BSC_Tests: execute S15-S0 related tests only on AoIP
Make sure that the S15-S0 related testcases are only executed when AoIP
is used as transport.

Change-Id: I62d51bbe4b1f089ded6c271b68414a4a37d509d8
Related: OS#3864
2019-03-27 07:01:14 +00:00
Philipp Maier fe39b9da86 bsc: add TC_chan_rel_hard_clear_csfb to expected-results.xml
The testcase TC_chan_rel_hard_clear_csfb is missing from the
expected-results.xml. Lets add it.

Change-Id: I087e6715364f72944cb47fa64d96eab6538afda5
2019-03-26 17:38:26 +01:00
Max 2c6f563e51 BTS: use PCU-related test cases as version string
When running PCU-related tests against BTS use name of the test as a PCU
version string sent from TTCN-3 code. This makes it easier to separate
OsmoBTS log output related to different test cases.

Change-Id: I9ef9e46061ef116529bdea196050f914804615b3
2019-03-21 16:00:04 +00:00
Harald Welte 64d0731c5b pcu: Add SNS tests for SGSN-originated BVC-RESET handling
Change-Id: Ib6b80acf98711f4749da4faf549b02ff2b82425f
2019-03-20 10:57:38 +00:00
Philipp Maier 99a033e917 expected-results: add new S15-S0 related testscases
The S15-S0 related testscases are missing from the expected-results.xml
file. Lets add them.

Change-Id: I28a853ec25feb723b2d333061e1ae4d2e0b34d86
Related: SYS#4470
2019-03-20 09:46:17 +01:00
Neels Hofmeyr b0f823422e msc: f_tc_sgsap_mt_sms_and_nothing: also do f_sgsap_bssmap_screening
The only reason to omit f_sgsap_bssmap_screening() in this was the still
pending SMS in the database. Since SMS are now removed,
f_sgsap_bssmap_screening() will succeed.

Change-Id: Ibea1e1fb33e0dde7e8bf51ff226d5e57c5a5d763
2019-03-19 13:30:32 +00:00
Philipp Maier d0e64b07dd BSC_Tests: add testcases to verify S15-S0 handling
The handling of the AMR rate configuration bits S15-S0 is currently only
superficially checked. Lets add more some more elaborated testcases to
check through varios different situations. Also make sure that the
resulting mr configuration IE is verified

Change-Id: Ica323deb9836deea72982e093c9cb31deb5a216b
Related: SYS#4470
2019-03-19 13:29:31 +00:00
Philipp Maier 806f8f1fb4 BSC_Tests: fix TC_assignment_codec_amr_f/h
The testcase TC_assignment_codec_amr_f uses a combination of S-Bits that
has S1 which configures a set of four rates at once. This is quite a
complex situation and since the BSC was upgraded with new features
affecting the behavior in this special case lets simplify this testcase
for now.

depends: osmo-bsc Ie52376b51fe07ed07056e8df2e9557293ff67a78
Change-Id: Ibf730f76947cdeed23eb3119167450e3b7a9b314
Related: SYS#4470
2019-03-19 13:29:31 +00:00
Philipp Maier 4f764ce4f3 MGCP_Test: Test AMR octet-aligned/bandwith-efficient mode conversion
osmo-mgw now implements a conversion between the AMR octet-aligned
and banwith-efficient payload format. Lets add tests for this

Change-Id: I050bfeabfb5fdbf986d429eef3af69fe8158d56e
depends: osmo-mgw I622c01874b25f5049d4f59eb8157e0ea3cbe16ba
related: SYS#4470
2019-03-19 13:29:31 +00:00
Philipp Maier c8c0b40e1b MGCP_Test: allow setting of fmtp parameters
When creating an RTP flow, there is currently no way to set SDP fmtp
parameters. Lets add a template and a parameter in order to be able to
set those parameters.

Change-Id: Ic1840d5023cb3888a17980f4ed08c19175864896
Related: SYS#4470
2019-03-19 13:29:31 +00:00
Neels Hofmeyr bb825c91bb msc: TC_lu_disconnect: add final delay to fix spurious failure
I hit a "Broken pipe" error, hoping that the bit of delay makes the teardown
more stable.

Change-Id: I765a75f91a748239f6cc82f4a61f02d59166f00b
2019-03-19 13:16:09 +00:00
Max 81487c8b36 Use dumpcap for ttcn3-tcpdump-*.sh if available
Check if dumpcap is installed (either as suid or with appropriate
capabilities) and use it for packet capture instead of
'sudo tcpdump' if available. This makes it easier to use TTCN-3
testsuite as regular user without altering sudoers.

Change-Id: I77df04d51a469c924cf727f0596cc33565909746
2019-03-19 10:28:46 +00:00
Neels Hofmeyr 59e0c6f764 msc: for mo and mt call, interleave MGCP and Assignment
Upcoming osmo-msc changes move away from the current ordering of MGCP and
Assignment messages. Allow these async dialogs to appear in any order.

Change-Id: Ia06af1e347601949f4ddb19f963daa400766d9e7
2019-03-17 14:39:58 +00:00
Harald Welte 7e6a35cc65 pcu: Verify IPv4 address communicated in PCU-originated SNS-CONFIG PDU
Prior to this patch, the test accepted anything as list of IPv4
endpoints in the PCU-originated SNS-CONFIG PDU.  Using this patch,
the corect IPv4 address and UDP port number is verified.

Change-Id: Ia57100c7833bebc8d77118968c19ab12a3834036
Related: OS#3845
2019-03-16 18:37:54 +01:00
Harald Welte ecd159ecc7 pcu: Test SNS where initial IP/port is not part of configured NS-VCs
As per section 6.2.1 of 3GPP TS 48.016, the initial IP/port where the
SNS SIZE/CONFIG procedures are being performed is not automatically part
of the later NS-VCs.  This means we shall not perform the NS-ALIVE
procedure or any other procedure beyond SNS with that specific endpoint.

This adds a new TC_sns_1c1u_separate() to test for this behavior.

Change-Id: Ie2a017250ca1d5386e2cf42d1945e61d170ac92d
Related: OS#3844
2019-03-16 14:46:12 +01:00
Harald Welte 3b3358323c pcu: Fix PCU_Tests_RAW_SNS.TC_pcuif_rach
Change-Id: Ifb19e68a4b2b3250cdc6079dcd7f42656c57cee0
2019-03-15 22:41:33 +01:00
Harald Welte 33ad57b6fe pcu: Fix TC_sns_so_config_success expectations
If there's only one IP/PORT/NSVC, we cannot expect something happening
on another NSVC.  In this test case, only index 0  / NSVC0 is used.

Change-Id: Ia83d726c4223d61544f80d266ea832fcaa235518
2019-03-15 17:03:14 +00:00
Max 68b4743c7d Log PCU socket path on errors
Change-Id: I5a4a7c9dc630ecd6fc0ca7a21d4b528d811edd06
2019-03-15 11:43:32 +00:00
Max e521445fee Generalize ttcn3-tcpdump-*.sh
Prepare for supporting alternative packet dumpers:
* reword comments
* rename pidfile
* move tcpdump-specific option inside if
* move comment about sudo closer to actual sudo invocation

Those are cosmetic changes which do not affect how packet dump is made
but makes it easier to support alternative packet dumpers in follow-up
commit.

Change-Id: Ib2528db65348c0422fe8b7c7c53656fbce4f6405
2019-03-14 20:46:51 +00:00
Max 6e05304843 Log FN and RA in TC_rach_max_ta
Similar to other RA-related tests, log FN and RA values in case of test
failure.

Change-Id: I815b10d0f0e9f29de7d306fa052b72b9e483dd9d
2019-03-14 16:39:29 +01:00
Oliver Smith ee6a088f37 ggsn: add tests to validate IPv4v6 pdp ctx
Add related templates based on 3GPP TS 29.060 Figure 37A and create
tests based on existing IPv4 and v6 ones.

Related: OS#2900
Change-Id: I3bab7df5caddc5c8b973c81544f954d5473ac234
2019-03-14 09:10:45 +00:00
Neels Hofmeyr 0f7429ad10 msc: TC_gsup_cancel: end with f_expect_clear() to avoid broken pipe
Change-Id: I3b3ae0b9c3f02f523dfb60c9efb732db3ade2785
2019-03-14 03:43:52 +00:00
Neels Hofmeyr 82fd04b13b msc: add codec to all Assignment Complete messages
So far we omit a Speech Codec (Chosen) from Assignment Complete messages, which
is actually a mandatory parameter. osmo-msc seems to carry on nevertheless, but
it actually shouldn't be able to.

Always send a Speech Codec (Chosen).

Change-Id: Ib35f019383db8ace05a9dc349648e2da7ba58bfa
2019-03-14 03:43:52 +00:00
Max b7aae8b957 IPA: log host:port on listen errors
Change-Id: I0e25961698ab70a2822e2b2be5b514c3603981ca
2019-03-11 15:22:02 +01:00
Max ba06feb0ce TC_rach_content(): fail test explicitly
By default Misc_Helpers.f_shutdown() will set test verdict to
'none'. Let's fail test explicitly if we had any timeouts.

Related: OS#1854
Change-Id: Ifff8b3b83eeedea0d308f7ab0bfe347e2dc278c8
2019-03-11 13:37:46 +00:00
Neels Hofmeyr c0b520d578 msc: f_tc_sgsap_reset: add final delay to fix spurious failure
Change-Id: I20fd583311ee69f2cdee6448e809214ab261f6bd
2019-03-07 23:27:37 +01:00
Neels Hofmeyr 6aaeccf093 msc: move sms sending to BSC_ConnHdlr and send from within test flow
For the sole reason that f_vty_sms_send() was put on MTC_CT for no apparent
reason, we start the test function and send an SMS with an arbitrary two
seconds delay.

Instead move it to BSC_ConnHdlr and place SMS sending in the actual test
function flow where it belongs.

Change-Id: I5f348b3d30342b7c4871a1fc8f94648923e82eea
2019-03-07 23:27:37 +01:00
Neels Hofmeyr 6b468a493e msc: as_clear_cmd_compl_disc: log unexpected message
When receiving an unexpected BSSMAP message that fails the test, log it.

Change-Id: I5cafac3318a50567f1916ea670af55558e97bf17
2019-03-07 23:27:37 +01:00
Neels Hofmeyr de76f05547 msc: add as_optional_cc_rel to ignore CC REL during call abort tests
When aborting a call with a Clear Request, it is actually a good idea to
release an ongoing call with a CC Release message from the MSC. Allow this.

Change-Id: I8378f7602fecac8262b31b47ad9327a3782c1bcd
2019-03-07 16:37:51 +01:00
Neels Hofmeyr ced8acf305 log time in tcpdump-start and -stop.sh
Also log the testcase name in tcpdump-start.sh.

The output now looks like

    ------ MSC_Tests.TC_mo_cc_bssmap_clear ------
    Thu Mar  7 13:21:00 UTC 2019
    [...]
    Thu Mar  7 13:21:04 UTC 2019
    ====== MSC_Tests.TC_mo_cc_bssmap_clear pass ======

The reason to log start and end dates came up like this: I noticed a segfault
in a tested program at a specific time. From the timestamp I tried to find out
which of the tests saw the failure. (After a segfault, all subsequent tests run
and fail, but it is not obvious which failure occured because of a segfault,
and which ones just normally failed before that.) Looking at the timestamps of
the log files didn't help, because the ttcn3_logmerge touched those after the
tests completed. So the only way is to cat each individual log file and find
the timestamp.

So this adds an overview of the timestamps without needing to open log files.

Change-Id: I0832d9b5df599baad5dec8d3a993481b4286fbb3
2019-03-07 16:33:03 +01:00
Oliver Smith c574829208 library/GSUP_Types.ttcn: add CHECK-IMEI message
Implement necessary messages for Procedure Check_IMEI_VLR (TS 23.018
Chapter 7.1.2.9). This lets the VLR ask the EIR to check if an IMEI
is valid. In the Osmocom stack, we don't have an EIR and this request
is handled by the HLR. We are able to store the IMEI in the HLR as
side-effect (OS#2541).

This is roughly based on TS 29.002 8.7.1 MAP_CHECK_IMEI service, but
only implements the bare minimum required IEs (imei and imei_result).

Related: OS#3733
Change-Id: Ie1ae5c66ad3f9b42b345020de62a0c276cd8d709
2019-03-04 16:24:28 +00:00
Harald Welte 16e92f4169 PCU: Add simple test for PCUIF RACH Indication
Change-Id: I8fa6de711391837ed16888c48b22cd29892f222f
2019-03-02 00:04:52 +01:00