I used the construct like f_rnd_octstring(f_rnd_int(100)) in a number
of places to generate random-length packets with randomized length.
The problem I didn't realize is that f_rnd_int() of course can also
return '0', which would generate zero-length packets. This may be
permitted in some protocols, but it leads to problems e.g. when trying
to send a UDP packet of zero length (which the kernel will not do).
So let's introduce
* f_rnd_int_nonzero() for returning non-zero randomized integers
* f_rnd_octstring_rnd_len() for returning a random-length random payload
octet string
* replace all f_rnd_octstring(f_rnd_int()) call sites with the new
function.
Change-Id: I818a113ff8d2a2f7cab2ec7d9c8661607c6331d6
Closes: OS#5528
Disable test TC_rkm_unreg_never_registered for current latest version of
osmo-stp (1.4.0), as it does not clean up properly and now causes other
tests to fail.
With this patch, test results for -latest are restored to how it was
before I7d2f9eb298778a8e60c7e73f314bc73528e85406 and
I31fcba85d23a8767eb0ceb513ff5b440558a475b were merged.
Related: OS#4239
Change-Id: Ice8fe9597a0a12eb4ec26172982a0f5cd01a148b
Rename the option to mp_osmo_stp_newer_than_1_4_0, because I'm going to
use the variable in the next patch for something unrelated to the asp
quirk and so we can avoid introducing another variable.
Related: docker-playground I6a32398242b53c827a94cf65e4a35900a7c4171a
Related: OS#4239
Change-Id: I43b1aa2c029c88c88320d40f60df46a5eb6c4c24
Create the routing key dynamically, before trying to unregister it, so
osmo-stp doesn't answer with ERR_NOT_REG instead of the expected
ERR_ASP_ACTIVE. While at it, add missing clean up logic.
Related: OS#4239
Change-Id: I31fcba85d23a8767eb0ceb513ff5b440558a475b
Create the routing key dynamically, before trying to unregister it. The
previous version tried to unregister a statically configured routing
key, as in TC_rkm_unreg_never_registered, but expected success instead
of the proper ERR_NOT_REG.
So after fixing osmo-stp to make TC_rkm_unreg_never_registered pass,
this test failed.
Related: OS#4239
Change-Id: I7d2f9eb298778a8e60c7e73f314bc73528e85406
Tests for M3UA SSNM behavior. This is just being introduced in
osmo-stp, so all tests will fail on 'latest', and some will still fail
until SSNM processing inside osmo-stp is becoming more complete.
Change-Id: I5074dccde9940956439235e8d02e6a722b8da5f5
Related: OS#2623
The tests were written without considering the arrival of such messages;
however, it is well within the M3UA spec that such messages appear at
any time indicating remote point code availability etc.
In libosmo-sccp.git Id92be4691b0fd77598a6edb642c028bbd8c5b623 we start
generating those messages in osmo-stp.
Let's ignore them in the tests to avoid unexpected failures.
Later on, we likely will introduce / adapt tests to actually expect
those messages whenever appropriate.
Change-Id: I85ce8fd4f26db184833cf348293f0255bb5eaac3
Related: OS#2623
The IP addr module parameter is split now, IPA module has its own set
of configurable addresses, and M3UA its own. Moreover, in M3UA the
single address is transformed to be an array of addresses, to support
multi-homing with both IPv4 and IPv6 addresses.
Related: SYS#4915
Change-Id: Ib1925ed1df5cea3fa66f28b5625532d454a2c338
TTCN3 transforms -1 internally to 9999. We don't care about the src port
here since we are a client, so let's simple take a randomly free one.
Change-Id: I6665e628c5f1db31731d092f58d0bd2520f65ee6
It is a known bug that some verisons of titan don't support having
several alt cases without any separator. This is already fixed in
master, but it doesn't hurt adding them to have them compile on other
versions.
Change-Id: I999d4cc5c1c26b8bbdf8b30ad8dfdc8f55ca433b
There are some M3UA implementations out there who use a routing context
during the ASPAC procedure, but who then don't use it in subsequent DATA
transmission. Let's add a test case for that.
Change-Id: Iaf95f8eafa53cff94910d89584eef95f1b474c7f
Related: OS#4594
This test case checks if the traffic-mode is communicated to the SG if
we operate in ASP mode.
Change-Id: If7d84b73b36a91fb697daf6263ec93b8672cbdc2
Related: OS#4285
This way traffic modes set dynamically by peers are cleared and can be
reset by next tests easily.
Change-Id: I177441b2d43298b3836ccf78fe11267333e80665
In the past, we were automatically running [large parts of] the nplab
M3UA and SUA test suites, but those implement only a fraction of the
functionality. Particularly, they don't cover the non-standard IPA
behavior, and they don't cover RKM (routing key management).
Let's introduce an initial set of STP tests with this patch. We try
to not duplicate nplab here, and implement bits not covered there.
Change-Id: I628a87385cac0dfe708a0d74a5088fbd5a4790cd