pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40292?usp=email )
Change subject: sccp: SCOC -> SCRC: Use DPC provided from conn info in msg_type != CR [3/3] ...................................................................... sccp: SCOC -> SCRC: Use DPC provided from conn info in msg_type != CR [3/3] See Q.714 section 2.2 for more info on how the "addressing information" is obtained depending on the msg. Change-Id: I602c5be73d7fe6ef2af1cbfe6888227a9f602562 --- M src/sccp_scrc.c 1 file changed, 10 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-sigtran refs/changes/92/40292/1 diff --git a/src/sccp_scrc.c b/src/sccp_scrc.c index a99e26d..c80e917 100644 --- a/src/sccp_scrc.c +++ b/src/sccp_scrc.c @@ -252,7 +252,16 @@ rc = sua_addr_parse(&called, xua, SUA_IEI_DEST_ADDR); if (rc < 0) { - LOGPSCI(inst, LOGL_ERROR, "XUA Message %s without valid DEST_ADDR\n", + /* Q.714 2.2.2: It is expectd that CO msgs != CREQ have no "Called Address". + * Use MTP DPC info provided by SCOC in xua->mtp.dpc instead. */ + called = (struct osmo_sccp_addr){ + .ri = OSMO_SCCP_RI_SSN_PC, + .presence = OSMO_SCCP_ADDR_T_PC, + .pc = xua->mtp.dpc, + }; + } + if (!(called.presence & OSMO_SCCP_ADDR_T_PC)) { + LOGPSCI(inst, LOGL_ERROR, "XUA Message %s without valid DPC address information\n", xua_hdr_dump(xua, &xua_dialect_sua)); return -EINVAL; } -- To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40292?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: newchange Gerrit-Project: libosmo-sigtran Gerrit-Branch: master Gerrit-Change-Id: I602c5be73d7fe6ef2af1cbfe6888227a9f602562 Gerrit-Change-Number: 40292 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pes...@sysmocom.de>