If send() on AF_PACKET returns ENOBUFS, usleep for 2ms and re-try
until it succeeds.
Change-Id: Id7bdd2c690eae3bec1df7634944cd73f0bf0b29a
Closes: OS#5343
When testing the serving BSS part of the RIM application in osmo-pcu, we
will need receiving templates that allow us to verify the response (RAN
INFORMATION) rim container.
Change-Id: I964d7504f3c4aeaa4ce537316b3140e8b893003d
Related: SYS#5103
Change the whole vty configuration for NS to be more flexible
and support more setups. Old configurations are invalid.
For further information see:
https://osmocom.org/projects/libosmocore/wiki/Network_service_(NS)
Depends-on: If5bd6b86e130772e6c93d640b0c637985416136d (osmo-sgsn)
Change-Id: I37d010bc4ae553c30feb2ebd2be66d23b96bf42a
The gbproxy tests and our scripts have started to use
hdlc0..7 paired with hdlcnet0..7. Let's adjust fr-net to
also use 'hdlcnet1' as the pairing 'fr' test uses 'hdlc1'
Change-Id: If456a575cc2ae0ab2fc63730b329131dfcc70a47
Sending a message [even over a real or simulated E1 line] should always
be less than 1s end-to-end. But just to see if increasing the timeouts
to 2s will result in less test failures, let's change from 1s to 2s.
Change-Id: Iebb43283ad7c267c6ed7f49989ec453be38956a9
Allow ignoring for received dumy packets while waiting for a Pkt Ass on
PACCH. This fixes some tests failing sometimes due to race condition
where rlcmac packet is requested too quicky, after the PCU has received
the BSSGP packet we sent to it.
The function is splitted into an internal altestep + a wrap function
which is compatible with tests already using it.
Related: OS#4779
Change-Id: I0a10d3a7383d8534e9263864b4130a96392e6198
This feature is useful in simulating intermittent or permanent transport network
outage by simply halting processing of all rx+tx in the specified NS-VC
until it is administratively re-enabled.
Change-Id: I742ecf01de15e3edbf0719371f0217a5739b7c8e
RelateD: OS#4521
With pooling enabled these tests now need to verify that the reset/block
is propagated to all SGSNs in the pool.
Change-Id: I34ed4bffce564dbaf08f9388bd5247351dd0725e
Fixes: OS#4964
As we know, many production deployments have SGSN architectures with
clear control / user plane split. In such situations, IP-SNS of the
SGSN informs us of two (classes of) IP endpoints:
some that have control_weight > 0 and data_weight 0
some that have control_weight 0 and data_weight > 0
Let's adjust the GBProxy_Tests.ttcn to use such a configuration for
each of the two simulated SGSNs.
Change-Id: If0e404bdf2c30a5e18748695608611be83f61109
Closes: OS#4953
* allow configuration of signalling + data weight for each NS-VC
* advertise per-NSVC signalling/data weight in SNS-CONFIG
* keep track of unblocked NS-VCS separately for data / signalling
* transmit BVCI=0 traffic only over signalling NS-VC
* transmit BVCI>0 traffic only over data NS-VC
* accept incoming BVCI=0 traffic only if signalling_weight > 0
* accept incoming BVCI>0 traffic only if data_weight > 0
Related: OS#4953
Change-Id: I9798e639b4bc8658482945970775b012b5840779
We need to move the IP-SNS handling up one layer, as only the NS-VCG
knows all the other NS-VCs, and after the SNS-CONFIG-ACK, we must
mark all of our NS-VCs as alive and start the alive procedure.
Related: OS#4953
Change-Id: Ie0f4342a0346952d7c50ac36900148e311d4c782
The ConnHdlr test stores the sgsn_idx in g_pars. Use that in the paging
tests to the correct SGSN pages the MS.
This commit fixes what 4332044c missed and is required for the ptp paging
reject test to pass.
Change-Id: Id85ffa57af943ae98c0f022b261ec24d557c236d
Related: OS#4951
We expect the uplink BSSGP status to be routed based in the
inner/contained downlink PDU - and vice-versa.
Change-Id: If2ddd158346a3da340f1c673354196f3872c4f67
Related: OS#4951
RADIO-STATUS can occur with TLLI, but also with P-TMSI or IMSI.
Update our templates accordingly while keeping backwards compatibility.
Related: OS#4951
Change-Id: I1119e50e457b02d52e7c2c26a8b8039bf2118296
They all fail with current gbproxy master as it doesn't yet implement
routing of RIM messages.
Related: OS#4896
Change-Id: I0fec6fd4a5a6559f596b9006ae437323da6f05d7
The ConnHdlr test stores the sgsn_idx in g_pars. Use that in the paging
tests to the correct SGSN pages the MS.
This is required for the paging reject test to pass.
Change-Id: I34cfc047b36cd6c139a78a7f171a9a99cc974a79
Related: OS#4951
Previous RAW_NS only supported NS over UDP because
it handled the UDP connection on it's own.
Because of this there was no cleanup function for the tests
because no virtual component were started.
Using the new NS_Provider allows to use the same tests over
UDP and FR with no changes.
Change-Id: I8a3b6c72798a75f434f54229fdbfc802cd13967e
The test fail with current osmo-gbproxy master, as the related
implementation is missing.
Related: OS#4951
Change-Id: I19a36dfef8f33f278a54b938a5daccce08de6fe0
Otherwise we may run into problems where the BSSGP_Emulation still
has references to longer existing components in its ClientTable.
Change-Id: Iee54e93e6ae1b3e40f502d5ba2499e9eb03bf203
The point of global (component) variables is that we don't have to pass
them around as extra function arguments everywhere. So don't do it.
Change-Id: I0754d5db7e797a51be3a0b601b0533de80bc246d
We cannot choose a random TLLI anymore, as this will obviously end up
at a random SGSN, and not the one we're targeting.
Change-Id: I665eda9e04cbf505f55abc9bcd414d6cbd6a36dd
Move the entire body inside the loop to a separate function. This
will be useful when adding pooling support next.
Change-Id: Ia0f9d9128754c2196ab026623f1b6a254a958d2f
We change the osmo-gbproxy.cfg to use NRI 3 for SGSN-0 (NSEI 101) and
NRI 4 for SGSN-1 (NSEI 102).
We also add the capability to GBProxy_Tests to allocate P-TMSI with
a specific NRI and default to the first NRI of SGSN-0 so all tests
written still for a single-SGSN-non-pool scenario pass without any
modification.
Related: OS#4472, SYS#5002
Change-Id: I15f78dca5ac31a1c71f086d3e92a70e900eae250
The altstep was missing the "repeat" at the end, causing it to abort
early and reporting a test failure which actually didn't exist.
Change-Id: I0ec9aa06fa9ec25b2047c1e795e28eeefd6bc7d2