lists.osmocom.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

gerrit-log

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
gerrit-log@lists.osmocom.org

July 2025

  • 1 participants
  • 1492 discussions
[S] Change in osmo-ttcn3-hacks[master]: msc: Use static sigtran config between osmo-msc and osmo-stp
by pespin 10 Jul '25

10 Jul '25
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40629?usp=email ) Change subject: msc: Use static sigtran config between osmo-msc and osmo-stp ...................................................................... msc: Use static sigtran config between osmo-msc and osmo-stp This allows referencing/accessing the specific ASP in osmo-stp, which will be needed in a follow-up commit to test IUT behavior when the SCTP conn is dropped. Related: OS#5917 Change-Id: Id78aac528b10a8449b83075419b74315d838d4a4 --- M msc/osmo-msc.cfg M msc/osmo-stp.cfg 2 files changed, 11 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/29/40629/1 diff --git a/msc/osmo-msc.cfg b/msc/osmo-msc.cfg index 98a9462..61b03cf 100644 --- a/msc/osmo-msc.cfg +++ b/msc/osmo-msc.cfg @@ -44,7 +44,7 @@ ! cs7 instance 0 point-code 0.23.1 - asp asp-clnt-OsmoMSC-A 2905 0 m3ua + asp asp-clnt-OsmoMSC-A 2905 1905 m3ua remote-ip 127.0.0.1 role asp sctp-role client diff --git a/msc/osmo-stp.cfg b/msc/osmo-stp.cfg index bfdbb37..284e5cd 100644 --- a/msc/osmo-stp.cfg +++ b/msc/osmo-stp.cfg @@ -27,6 +27,14 @@ ! cs7 instance 0 xua rkm routing-key-allocation dynamic-permitted + asp msc0-0 1905 2905 m3ua + local-ip 127.0.0.1 + remote-ip 127.0.0.1 + role sg + sctp-role server + as msc0 m3ua + asp msc0-0 + routing-key 3 0.23.1 asp virt-bsc0-0 23906 2905 m3ua local-ip 127.0.0.1 remote-ip 127.0.0.1 @@ -52,10 +60,9 @@ asp virt-rnc0-0 routing-key 2 0.24.3 route-table system + update route 0.23.1 7.255.7 linkset msc0 update route 0.24.1 7.255.7 linkset virt-bsc0 update route 0.24.2 7.255.7 linkset virt-bsc1 update route 0.24.3 7.255.7 linkset virt-rnc0 listen m3ua 2905 - accept-asp-connections dynamic-permitted - listen ipa 5000 - accept-asp-connections dynamic-permitted + accept-asp-connections pre-configured -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40629?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: newchange Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Id78aac528b10a8449b83075419b74315d838d4a4 Gerrit-Change-Number: 40629 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de>
1 0
0 0
[S] Change in osmo-ttcn3-hacks[master]: hnbgw: swap first MSC and SGSN PC to be usual default ones
by osmith 10 Jul '25

10 Jul '25
Attention is currently required from: pespin. osmith has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40625?usp=email ) Change subject: hnbgw: swap first MSC and SGSN PC to be usual default ones ...................................................................... Patch Set 3: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40625?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Ib62258e340ecf8cbe1026e43ccccc6bf98932244 Gerrit-Change-Number: 40625 Gerrit-PatchSet: 3 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Thu, 10 Jul 2025 13:56:43 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[M] Change in osmo-ttcn3-hacks[master]: hnbgw: Introduce test TC_stat_stp_sctp_disconnected
by osmith 10 Jul '25

10 Jul '25
Attention is currently required from: lynxis lazus, pespin. osmith has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40592?usp=email ) Change subject: hnbgw: Introduce test TC_stat_stp_sctp_disconnected ...................................................................... Patch Set 5: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40592?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I079f2da09ff8d52e614ff6f5d267cd5429e4eb58 Gerrit-Change-Number: 40592 Gerrit-PatchSet: 5 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Comment-Date: Thu, 10 Jul 2025 13:55:59 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[XS] Change in osmo-ttcn3-hacks[master]: bsc: TC_mscpool_sccp_n_pcstate_detaches_msc: wait for AS to become un...
by osmith 10 Jul '25

10 Jul '25
Attention is currently required from: fixeria, lynxis lazus, pespin. osmith has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40620?usp=email ) Change subject: bsc: TC_mscpool_sccp_n_pcstate_detaches_msc: wait for AS to become unavailable ...................................................................... Patch Set 4: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40620?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Idc84929d89cbac4eb67cd2740f98844253dde70d Gerrit-Change-Number: 40620 Gerrit-PatchSet: 4 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Comment-Date: Thu, 10 Jul 2025 13:51:42 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[XS] Change in libosmo-netif[master]: osmux: Use while loop to tear down entire llist
by pespin 10 Jul '25

10 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-netif/+/40628?usp=email ) Change subject: osmux: Use while loop to tear down entire llist ...................................................................... osmux: Use while loop to tear down entire llist There's no need to use more complex llist_for_each_entry_safe() here. Related: SYS#7508 Change-Id: Id98619b1e91f12b0febf40118113bb53bd526702 --- M src/osmux_input.c 1 file changed, 4 insertions(+), 4 deletions(-) Approvals: fixeria: Looks good to me, but someone else must approve laforge: Looks good to me, but someone else must approve pespin: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmux_input.c b/src/osmux_input.c index 2184a08..41f12b6 100644 --- a/src/osmux_input.c +++ b/src/osmux_input.c @@ -144,8 +144,8 @@ static void osmux_circuit_del_msgs(struct osmux_link *link, struct osmux_circuit *circuit) { - struct msgb *cur, *tmp; - llist_for_each_entry_safe(cur, tmp, &circuit->msg_list, list) { + struct msgb *cur; + while ((cur = llist_first_entry_or_null(&circuit->msg_list, struct msgb, list))) { osmux_circuit_dequeue(circuit, cur); msgb_free(cur); link->nmsgs--; @@ -687,9 +687,9 @@ static int osmux_xfrm_input_talloc_destructor(struct osmux_in_handle *h) { struct osmux_link *link = (struct osmux_link *)h->internal_data; - struct osmux_circuit *circuit, *next; + struct osmux_circuit *circuit; - llist_for_each_entry_safe(circuit, next, &link->circuit_list, head) + while ((circuit = llist_first_entry_or_null(&link->circuit_list, struct osmux_circuit, head))) osmux_link_del_circuit(link, circuit); osmo_timer_del(&link->timer); -- To view, visit https://gerrit.osmocom.org/c/libosmo-netif/+/40628?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-Change-Id: Id98619b1e91f12b0febf40118113bb53bd526702 Gerrit-Change-Number: 40628 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[XS] Change in libosmo-netif[master]: osmux: Use while loop to tear down entire llist
by pespin 10 Jul '25

10 Jul '25
pespin has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/libosmo-netif/+/40628?usp=email ) Change subject: osmux: Use while loop to tear down entire llist ...................................................................... Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/libosmo-netif/+/40628?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-Change-Id: Id98619b1e91f12b0febf40118113bb53bd526702 Gerrit-Change-Number: 40628 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Thu, 10 Jul 2025 13:37:03 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[XS] Change in osmo-hnbgw[master]: sccp: Avoid setting default local HNBGW PC as default remote PC
by pespin 10 Jul '25

10 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/40626?usp=email ) Change subject: sccp: Avoid setting default local HNBGW PC as default remote PC ...................................................................... sccp: Avoid setting default local HNBGW PC as default remote PC It makes no sense to set the remote PC of MSC/SGSN to the default local HNBGW PC. Instead, set it to the default remote PC of the pool (sgsn vs msc), as already done in "else" code path in hnbgw_cnlink_start_or_restart() calling osmo_sccp_make_addr_pc_ssn(). Change-Id: I43b9ab7a06bcaa8bea91f9f54fca0993a67340d7 --- M src/osmo-hnbgw/cnlink.c 1 file changed, 2 insertions(+), 2 deletions(-) Approvals: laforge: Looks good to me, approved osmith: Looks good to me, but someone else must approve Jenkins Builder: Verified diff --git a/src/osmo-hnbgw/cnlink.c b/src/osmo-hnbgw/cnlink.c index 0bd2b3d..ea53ee0 100644 --- a/src/osmo-hnbgw/cnlink.c +++ b/src/osmo-hnbgw/cnlink.c @@ -456,7 +456,7 @@ /* Instead of comparing whether the address book entry names are different, actually resolve the * resulting SCCP address, and only restart the cnlink if the resulting address changed. */ - resolve_addr_name(&remote_addr, &ss7, cnlink->vty.remote_addr_name, NULL, DEFAULT_PC_HNBGW); + resolve_addr_name(&remote_addr, &ss7, cnlink->vty.remote_addr_name, NULL, cnlink->pool->default_remote_pc); if (osmo_sccp_addr_cmp(&remote_addr, &cnlink->remote_addr, OSMO_SCCP_ADDR_T_PC | OSMO_SCCP_ADDR_T_SSN)) changed = true; } else if (cnlink->vty.remote_addr_name != cnlink->use.remote_addr_name) { @@ -509,7 +509,7 @@ * in a specific cs7 instance. If it is not set, leave ss7 == NULL to use cs7 instance 0. */ if (cnlink->use.remote_addr_name) { if (resolve_addr_name(&cnlink->remote_addr, &ss7, cnlink->use.remote_addr_name, cnlink->name, - DEFAULT_PC_HNBGW)) { + cnlink->pool->default_remote_pc)) { LOG_CNLINK(cnlink, DCN, LOGL_ERROR, "cannot initialize SCCP: there is no SCCP address named '%s'\n", cnlink->use.remote_addr_name); return -ENOENT; -- To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/40626?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: osmo-hnbgw Gerrit-Branch: master Gerrit-Change-Id: I43b9ab7a06bcaa8bea91f9f54fca0993a67340d7 Gerrit-Change-Number: 40626 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[S] Change in osmo-ttcn3-hacks[master]: hnbgw: Use static sigtran config between osmo-hnbgw and osmo-stp
by pespin 10 Jul '25

10 Jul '25
pespin has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40624?usp=email ) Change subject: hnbgw: Use static sigtran config between osmo-hnbgw and osmo-stp ...................................................................... Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40624?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Icbec561e28db8e0da19a284b3ba73636ea5c8210 Gerrit-Change-Number: 40624 Gerrit-PatchSet: 3 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Thu, 10 Jul 2025 11:42:19 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[M] Change in libosmo-sigtran[master]: Submit SCRC Routing Failure indications asynchronously
by pespin 10 Jul '25

10 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40615?usp=email ) Change subject: Submit SCRC Routing Failure indications asynchronously ...................................................................... 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(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve osmith: Looks good to me, but someone else must approve pespin: Looks good to me, approved diff --git a/src/sccp_instance.c b/src/sccp_instance.c index 08274a5..1a9e02c 100644 --- a/src/sccp_instance.c +++ b/src/sccp_instance.c @@ -207,6 +207,52 @@ return sccp_user_bind_pc(inst, name, prim_cb, ssn, OSMO_SS7_PC_INVALID); } +/* Timer cb used to transmit queued Routing Failures asynchronously up the stack */ +static void rout_fail_pending_cb(void *_inst) +{ + struct osmo_sccp_instance *inst = _inst; + struct sccp_pending_rout_fail *prf; + + while ((prf = llist_first_entry_or_null(&inst->rout_fail_pending.queue, struct sccp_pending_rout_fail, list))) { + struct xua_msg *xua = prf->xua; + uint32_t cause = prf->cause; + bool scoc = prf->scoc; + llist_del(&prf->list); + talloc_free(prf); + if (scoc) /* Routing Failure SCRC -> SCOC */ + sccp_scoc_rx_scrc_rout_fail(inst, xua, cause); + else /* Routing Failure SCRC -> SCLC */ + sccp_sclc_rx_scrc_rout_fail(inst, xua, cause); + xua_msg_free(xua); + } +} + +/* Enqueue Routing Failure to submit it asynchronously to upper layers. + * xua_msg is copied. + * scoc: true if it's for SCOC, false if it's for SCLC. */ +void sccp_rout_fail_enqueue(struct osmo_sccp_instance *inst, const struct xua_msg *xua, uint32_t cause, bool scoc) +{ + bool queue_was_empty = llist_empty(&inst->rout_fail_pending.queue); + struct sccp_pending_rout_fail *prf; + + LOGPSCI(inst, LOGL_DEBUG, "Enqueuing SCRC Routing Failure (%s) for %s message %s\n", + osmo_sccp_return_cause_name(cause), + scoc ? "CO" : "CL", + xua_hdr_dump(xua, &xua_dialect_sua)); + + prf = talloc(inst, struct sccp_pending_rout_fail); + OSMO_ASSERT(prf); + *prf = (struct sccp_pending_rout_fail){ + .xua = xua_msg_copy(xua), + .cause = cause, + .scoc = scoc, + }; + OSMO_ASSERT(prf->xua); + llist_add_tail(&prf->list, &inst->rout_fail_pending.queue); + + if (queue_was_empty) + osmo_timer_schedule(&inst->rout_fail_pending.timer, 0, 0); +} /* prim_cb handed to MTP code for incoming MTP-TRANSFER.ind */ static int mtp_user_prim_cb(struct osmo_prim_hdr *oph, void *ctx) @@ -268,6 +314,9 @@ sizeof(osmo_sccp_timer_defaults)); osmo_tdefs_reset(inst->tdefs); + osmo_timer_setup(&inst->rout_fail_pending.timer, rout_fail_pending_cb, inst); + INIT_LLIST_HEAD(&inst->rout_fail_pending.queue); + rc = sccp_scmg_init(inst); if (rc < 0) { talloc_free(inst); @@ -297,6 +346,10 @@ osmo_sccp_user_unbind(scu); } OSMO_ASSERT(RB_EMPTY_ROOT(&inst->connections)); /* assert is empty */ + + osmo_timer_del(&inst->rout_fail_pending.timer); + /* Note: All entries in inst->rout_fail_pending.queue are freed by talloc. */ + llist_del(&inst->list); talloc_free(inst); } diff --git a/src/sccp_instance.h b/src/sccp_instance.h index a3f6750..2005d7a 100644 --- a/src/sccp_instance.h +++ b/src/sccp_instance.h @@ -35,6 +35,14 @@ static inline const char *osmo_sccp_timer_name(enum osmo_sccp_timer val) { return get_value_string(osmo_sccp_timer_names, val); } +struct sccp_pending_rout_fail { + /* Item in inst->rout_fail_pending.queue: */ + struct llist_head list; + struct xua_msg *xua; + uint32_t cause; + bool scoc; /* true if it's for SCOC, false if it's for SCLC. */ +}; + /* an instance of the SCCP stack */ struct osmo_sccp_instance { /* entry in global list of ss7 instances */ @@ -55,6 +63,12 @@ struct osmo_tdef *tdefs; uint32_t max_optional_data; + + /* Queued Routing Failures to transmit asynchronously up the stack: */ + struct { + struct osmo_timer_list timer; + struct llist_head queue; + } rout_fail_pending; }; struct osmo_sccp_user * diff --git a/src/sccp_internal.h b/src/sccp_internal.h index 8a69e19..045e49b 100644 --- a/src/sccp_internal.h +++ b/src/sccp_internal.h @@ -58,6 +58,9 @@ void sccp_sclc_rx_scrc_rout_fail(struct osmo_sccp_instance *inst, struct xua_msg *xua, uint32_t cause); +/* Route Failure from SCRX -> SCOC or SCLC */ +void sccp_rout_fail_enqueue(struct osmo_sccp_instance *inst, const struct xua_msg *xua, uint32_t cause, bool scoc); + /* SCU -> SCLC */ int sccp_sclc_user_sap_down(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph); int sccp_sclc_user_sap_down_nofree(struct osmo_sccp_user *scu, struct osmo_prim_hdr *oph); diff --git a/src/sccp_scrc.c b/src/sccp_scrc.c index fdbfd3c..e28e584 100644 --- a/src/sccp_scrc.c +++ b/src/sccp_scrc.c @@ -262,16 +262,14 @@ if (!dpc_accessible(inst, called.pc)) { /* Error: MTP Failure */ /* Routing Failure SCRC -> SCOC */ - sccp_scoc_rx_scrc_rout_fail(inst, xua, - SCCP_RETURN_CAUSE_MTP_FAILURE); + sccp_rout_fail_enqueue(inst, xua, SCCP_RETURN_CAUSE_MTP_FAILURE, true); return 0; } /* Is SCCP available? */ if (!sccp_available(inst, &called)) { /* Error: SCCP Failure */ /* Routing Failure SCRC -> SCOC */ - sccp_scoc_rx_scrc_rout_fail(inst, xua, - SCCP_RETURN_CAUSE_SCCP_FAILURE); + sccp_rout_fail_enqueue(inst, xua, SCCP_RETURN_CAUSE_SCCP_FAILURE, true); return 0; } return scrc_node_12(inst, xua, &called); @@ -305,10 +303,10 @@ /* TODO: Routing Failure SCRC -> OMAP */ if (sua_is_connectionless(xua)) { /* Routing Failure SCRC -> SCLC */ - sccp_sclc_rx_scrc_rout_fail(inst, xua, return_cause); + sccp_rout_fail_enqueue(inst, xua, return_cause, false); } else { /* Routing Failure SCRC -> SCOC */ - sccp_scoc_rx_scrc_rout_fail(inst, xua, return_cause); + sccp_rout_fail_enqueue(inst, xua, return_cause, true); } return 0; } @@ -335,8 +333,7 @@ LOGPSCI(inst, LOGL_NOTICE, "GT Routing not implemented yet\n"); #if 1 /* Prevent endless recursion, see OS#2666. */ - sccp_sclc_rx_scrc_rout_fail(inst, xua, - SCCP_RETURN_CAUSE_SUBSYSTEM_FAILURE); + sccp_rout_fail_enqueue(inst, xua, SCCP_RETURN_CAUSE_SUBSYSTEM_FAILURE, false); return 0; #else /* Node 7 (Sheet 5) */ @@ -386,12 +383,10 @@ /* TODO: SCRC -> SSPC */ if (sua_is_connectionless(xua)) { /* Routing Failure SCRC -> SCLC */ - sccp_sclc_rx_scrc_rout_fail(inst, xua, - SCCP_RETURN_CAUSE_SUBSYSTEM_FAILURE); + sccp_rout_fail_enqueue(inst, xua, SCCP_RETURN_CAUSE_SUBSYSTEM_FAILURE, false); } else { /* Routing Failure SCRC -> SCOC */ - sccp_scoc_rx_scrc_rout_fail(inst, xua, - SCCP_RETURN_CAUSE_SUBSYSTEM_FAILURE); + sccp_rout_fail_enqueue(inst, xua, SCCP_RETURN_CAUSE_SUBSYSTEM_FAILURE, true); } return 0; } diff --git a/src/xua_msg.c b/src/xua_msg.c index bc2a4f7..0652277 100644 --- a/src/xua_msg.c +++ b/src/xua_msg.c @@ -58,6 +58,19 @@ talloc_free(msg); } +struct xua_msg *xua_msg_copy(const struct xua_msg *xua_in) +{ + struct xua_msg_part *part; + struct xua_msg *xua_cpy = xua_msg_alloc(); + + xua_cpy->hdr = xua_in->hdr; + xua_cpy->mtp = xua_in->mtp; + + llist_for_each_entry(part, &xua_in->headers, entry) + xua_msg_add_data(xua_cpy, part->tag, part->len, part->dat); + return xua_cpy; +} + int xua_msg_add_data(struct xua_msg *msg, uint16_t tag, uint16_t len, const uint8_t *dat) { diff --git a/src/xua_msg.h b/src/xua_msg.h index 8311d60..f5d5de4 100644 --- a/src/xua_msg.h +++ b/src/xua_msg.h @@ -74,6 +74,7 @@ struct xua_msg *xua_msg_alloc(void); void xua_msg_free(struct xua_msg *msg); +struct xua_msg *xua_msg_copy(const struct xua_msg *xua_in); int xua_msg_add_data(struct xua_msg *msg, uint16_t tag, uint16_t len, const uint8_t *dat); int xua_msg_add_u32_data(struct xua_msg *msg, uint16_t tag, uint16_t len, const uint8_t *dat); -- To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40615?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: libosmo-sigtran Gerrit-Branch: master Gerrit-Change-Id: I17ae7174f7ffee8c9a004435e522803a97d4fb7b Gerrit-Change-Number: 40615 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[M] Change in libosmo-sigtran[master]: Submit SCRC Routing Failure indications asynchronously
by pespin 10 Jul '25

10 Jul '25
Attention is currently required from: laforge. pespin has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40615?usp=email ) Change subject: Submit SCRC Routing Failure indications asynchronously ...................................................................... Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40615?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: libosmo-sigtran Gerrit-Branch: master Gerrit-Change-Id: I17ae7174f7ffee8c9a004435e522803a97d4fb7b Gerrit-Change-Number: 40615 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Attention: laforge <laforge(a)osmocom.org> Gerrit-Comment-Date: Thu, 10 Jul 2025 11:36:41 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • ...
  • 150
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.