libosmocore/src
Jacob Erlbeck fe2aa68db8 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:22:04 +01:00
..
codec cygwin: Link many libraries with -no-undefined to create a dll 2013-03-03 10:10:07 +01:00
ctrl misc: Look into the build directory for generated files 2014-09-25 18:18:49 +02:00
gb ns: Force a defined state when sending NS RESET 2015-12-17 14:22:04 +01:00
gsm misc: Look into the build directory for generated files 2014-09-25 18:18:49 +02:00
vty misc: Look into the build directory for generated files 2014-09-25 18:18:49 +02:00
Makefile.am logging: Add ability to save/print current log filters 2014-08-25 10:09:42 +02:00
application.c application: don't ignore SIGHUP but do config file reopen. 2013-03-18 19:06:13 +01:00
backtrace.c backtrace: don't use fprintf, but printf (for osmocom-bb) 2012-09-08 22:00:13 +02:00
bits.c add missing copyright statements to source code files 2014-09-11 13:18:08 +08:00
bitvec.c misc: Doxygen tweaks: fixed some typos and minor errors 2013-02-15 13:27:59 +01:00
conv.c misc: Doxygen tweaks: fixed some typos and minor errors 2013-02-15 13:27:59 +01:00
crc16.c crc: use namespace prefix osmo_* 2011-05-07 13:00:51 +02:00
crcXXgen.c.tpl misc: Doxygen tweaks: fixed some typos and minor errors 2013-02-15 13:27:59 +01:00
gsmtap_util.c misc: Doxygen tweaks: fixed some typos and minor errors 2013-02-15 13:27:59 +01:00
logging.c libctrl: Add DLCTRL as logging context for the control interface 2014-08-21 15:34:18 +02:00
logging_syslog.c doc: Fix the Doxygen section endings 2012-04-18 21:53:23 +02:00
loggingrb.c Added a ring buffer log target to store the last N log messages. 2013-02-27 15:13:45 +01:00
macaddr.c add missing copyright statements to source code files 2014-09-11 13:18:08 +08:00
msgb.c msgb: Add msgb_hexdump() function 2014-03-04 13:30:12 +01:00
msgfile.c core: Fix missing include in msgfile.c for getline 2012-12-12 00:00:43 +01:00
panic.c add some missing doxygen annotation for libosmocore functions 2013-01-11 09:43:32 +01:00
plugin.c add some missing doxygen annotation for libosmocore functions 2013-01-11 09:43:32 +01:00
rate_ctr.c doc: Fix the Doxygen section endings 2012-04-18 21:53:23 +02:00
rbtree.c core/rbtree: remove redundant if()-condition in rb_erase() 2011-11-12 23:23:35 +01:00
select.c select: Fix english in comment 2014-05-15 21:40:15 +02:00
serial.c misc: Doxygen tweaks: fixed some typos and minor errors 2013-02-15 13:27:59 +01:00
signal.c doc: Fix the Doxygen section endings 2012-04-18 21:53:23 +02:00
socket.c add missing copyright statements to source code files 2014-09-11 13:18:08 +08:00
statistics.c statistics: use namespace prefix osmo_counter* 2011-05-07 13:00:51 +02:00
strrb.c strrb: Remove a tautology from the code 2013-07-03 09:30:02 +02:00
talloc.c misc: Remove the sys/types.h include from various files 2011-04-18 16:57:04 +02:00
timer.c timer: Use the now parameter when it is not NULL 2014-05-23 08:37:02 +02:00
utils.c add missing copyright statements to source code files 2014-09-11 13:18:08 +08:00
write_queue.c write_queue: Use EBADF instead of EBABDFD for portability 2014-07-01 19:42:49 +02:00