pespin submitted this change.

View Change

Approvals: daniel: Looks good to me, but someone else must approve laforge: Looks good to me, approved Jenkins Builder: Verified
m3ua: Discard rx MSUs for non-active AS

TODO originally added long time ago in d11fa298c5f179a03307c185b0d433e6ba61d40f.

Change-Id: Ibd3c85b9c5ac24fe1447c82b1f2cff4453105b84
---
M src/m3ua.c
M src/ss7_as.c
M src/ss7_as.h
3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/m3ua.c b/src/m3ua.c
index 35e2bb7..f073c8e 100644
--- a/src/m3ua.c
+++ b/src/m3ua.c
@@ -625,9 +625,14 @@
if (rc)
goto ret_free;

- rate_ctr_inc2(as->ctrg, SS7_AS_CTR_RX_MSU_TOTAL);
+ if (!osmo_ss7_as_active(as)) {
+ rate_ctr_inc2(as->ctrg, SS7_AS_CTR_RX_MSU_DISCARD);
+ LOGPAS(as, DLM3UA, LOGL_INFO, "Discarding received XUA Message %s, AS state %s\n",
+ xua_hdr_dump(xua, &xua_dialect_sua), osmo_fsm_inst_state_name(as->fi));
+ goto ret_free;
+ }

- /* FIXME: check for AS state == ACTIVE */
+ rate_ctr_inc2(as->ctrg, SS7_AS_CTR_RX_MSU_TOTAL);

/* store the MTP-level information in the xua_msg for use by
* higher layer protocols */
diff --git a/src/ss7_as.c b/src/ss7_as.c
index 4dedfc3..fac5ffe 100644
--- a/src/ss7_as.c
+++ b/src/ss7_as.c
@@ -58,6 +58,7 @@
#define SS7_AS_CTR_RX_MSU_SLS_STR "Number of MSU received on SLS "
#define SS7_AS_CTR_TX_MSU_SLS_STR "Number of MSU transmitted on SLS "
static const struct rate_ctr_desc ss7_as_rcd[] = {
+ [SS7_AS_CTR_RX_MSU_DISCARD] = { "rx:msu:discard", "Total number of incoming MSU discarded" },
[SS7_AS_CTR_RX_MSU_TOTAL] = { "rx:msu:total", "Total number of MSU received" },
[SS7_AS_CTR_RX_MSU_SLS_0] = { "rx:msu:sls:0", SS7_AS_CTR_RX_MSU_SLS_STR "0" },
[SS7_AS_CTR_RX_MSU_SLS_1] = { "rx:msu:sls:1", SS7_AS_CTR_RX_MSU_SLS_STR "1" },
diff --git a/src/ss7_as.h b/src/ss7_as.h
index bc17726..5bc3574 100644
--- a/src/ss7_as.h
+++ b/src/ss7_as.h
@@ -25,6 +25,7 @@
};

enum ss7_as_ctr {
+ SS7_AS_CTR_RX_MSU_DISCARD,
SS7_AS_CTR_RX_MSU_TOTAL,
SS7_AS_CTR_RX_MSU_SLS_0,
SS7_AS_CTR_RX_MSU_SLS_1,

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

Gerrit-MessageType: merged
Gerrit-Project: libosmo-sigtran
Gerrit-Branch: master
Gerrit-Change-Id: Ibd3c85b9c5ac24fe1447c82b1f2cff4453105b84
Gerrit-Change-Number: 40294
Gerrit-PatchSet: 5
Gerrit-Owner: pespin <pespin@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann@sysmocom.de>
Gerrit-Reviewer: laforge <laforge@osmocom.org>
Gerrit-Reviewer: pespin <pespin@sysmocom.de>