libosmocore/tests/gb
Jacob Erlbeck cc6ac4cdc4 ns: Force a defined state when sending NS RESET
Currently the state is assumed to remain the same while the reset
procedure is active. While this works correctly in general, a single
unexpected BLOCK_ACK or UNBLOCK_ACK can change the state but will not
stop the reset procedure. The leads to repeated RESET messages, where
the corresponding RESET_ACK is ignored. This is a stable state which
can only be left by manual intervention or by reception of a RESET
message from the peer.

This commit changes the RESET timeout handler to set the state to
BLOCKED/RESET when sending the new NS RESET message.

Note that this should ensure a clean restart even if the state has been
screwed up. It does not fix the handling of BLOCK_ACK or UNBLOCK_ACK
in abnormal cases.

Addresses:
 gprs_ns.c:349 NSEI=8895 Tx NS RESET (NSVCI=8895, cause=O&M intervention)
 gprs_ns.c:878 NSVCI=8895 Rx NS RESET ACK (NSEI=8895, NSVCI=8895)
 gprs_ns.c:887 NS RESET ACK Discarding unexpected message for NS-VCI 8895 from SGSN NSEI=8895

Ticket: OW#1551
Sponsored-by: On-Waves ehf
2015-12-17 14:16:50 +01:00
..
bssgp_fc_test.c bssgp: Free msgb in case of error when calling into gprs_ns_sendmsg 2014-10-10 17:55:13 +02:00
bssgp_fc_tests.err bssgp/test: Fix bssgp-fc test 2015-05-04 07:44:43 +02:00
bssgp_fc_tests.ok GPRS BSSGP test: integrate into autotest 2012-09-07 12:07:54 +02:00
bssgp_fc_tests.sh GPRS BSSGP test: integrate into autotest 2012-09-07 12:07:54 +02:00
gprs_bssgp_test.c bssgp/test: Add missing START/END printfs 2015-06-19 20:53:31 +02:00
gprs_bssgp_test.ok bssgp/test: Add missing START/END printfs 2015-06-19 20:53:31 +02:00
gprs_ns_test.c ns: Force a defined state when sending NS RESET 2015-12-17 14:16:50 +01:00
gprs_ns_test.ok ns: Force a defined state when sending NS RESET 2015-12-17 14:16:50 +01:00