Attention is currently required from: osmith, pespin.

pespin uploaded patch set #2 to this change.

View Change

The following approvals got outdated and were removed: Code-Review+1 by osmith, Verified+1 by Jenkins Builder

Submit SCRC Routing Failure indications asynchronously

Submitting CL/CO messages down the stack (SCOC/SCLC -> SCRC) may trigger
a Routing Failure in the opposite direction up the stack.

Until recently, due to missing logic, it was (almost?) impossible to
trigger such a Routing Failure path in our code.

Since recently, though, we can run over them, and so far we are
generating those indications in a synchronously manner, which means upper
layers in libosmo-sigtran and even in user applications we may receive a
callback with such Routing Indication (or derived N-PCSTATE.ind) while
still waiting for return of the initiaring request.

This causes a lot of unexpected trouble and unintended behavior in both
libosmo-sigtran SCOC/SCLC as well as user applications.

Hence, instead, defer the triggering of such Routing Failure indications
SCRC -> SCOC/SCLC so that they are submitted in event loop context later
on, when upper layers are done updating its status.

Related: OS#6790
Change-Id: I17ae7174f7ffee8c9a004435e522803a97d4fb7b
---
M src/sccp_instance.c
M src/sccp_instance.h
M src/sccp_internal.h
M src/sccp_scrc.c
M src/xua_msg.c
M src/xua_msg.h
6 files changed, 91 insertions(+), 12 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/libosmo-sigtran refs/changes/15/40615/2

To view, visit change 40615. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newpatchset
Gerrit-Project: libosmo-sigtran
Gerrit-Branch: master
Gerrit-Change-Id: I17ae7174f7ffee8c9a004435e522803a97d4fb7b
Gerrit-Change-Number: 40615
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith@sysmocom.de>
Gerrit-Attention: osmith <osmith@sysmocom.de>
Gerrit-Attention: pespin <pespin@sysmocom.de>