ttcn3-bscnat-test fails randomly
The failure happens because the bscnat sende a DLCX after receiving a CRCX ACK. This is the accompanying log message:
Mon Apr 22 08:02:50 2019 DMGCP <000b> bsc_mgcp_utils.c:642 No CI, freeing endpoint 0x7 in state 1
I looked at some failures and it seems to happen only on an identifier that starts with a zero and is followed by hexadecimal 'digits' a-f. So it seems we are parsing the value as decimal instead of hexadecimal.
- % Done changed from 0 to 60
A patch that parses the value as hexadecimal number is here: https://gerrit.osmocom.org/#/c/openbsc/+/13778
Note that in osmo-mgw this value is simply stored as (lower-case) string and according to the spec the value could be 16 bytes (32 characters) long - longer than the uint32_t we currently use.
However, osmo-bsc_nat is used only at On-Waves (where we don't see issued with the length) so I'll leave it for now. If osmo-bsc_nat is used more-widely it makes sense for it to use libmgcp where this is already fixed.
- Status changed from In Progress to Resolved
- % Done changed from 60 to 100
This is merged now. The test still fails - this time due to a "Timeout of guard timer" issue which we are seeing in other tests as well so I think it's related and will get fixed once that issue is fixed.