Attention is currently required from: pespin.
laforge has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40614?usp=email )
Change subject: Use xua_msg_free() everywhere to free xua_msg
......................................................................
Patch Set 1: Code-Review+1
(1 comment)
Patchset:
PS1:
we could probably also introduce a (rarely used in osmocom) talloc destructor to solve the problem of accidential users calling talloc_free ?
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40614?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: I1d43478a5c430e92f1bd5a0b3d3606a39f378e44
Gerrit-Change-Number: 40614
Gerrit-PatchSet: 1
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-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 07 Jul 2025 19:56:27 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Attention is currently required from: osmith, pespin.
laforge 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+1
(1 comment)
Patchset:
PS2:
does it really make sense to patch those specific error messages rather than introducing some generic async queue between the layers?
--
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-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 07 Jul 2025 19:55:23 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Attention is currently required from: Hoernchen, lynxis lazus.
laforge has posted comments on this change by lynxis lazus. ( https://gerrit.osmocom.org/c/osmo-remsim/+/40570?usp=email )
Change subject: bankd: implicit remove a client mapping when creating a new mapping
......................................................................
Patch Set 4: Code-Review+1
(1 comment)
Commit Message:
https://gerrit.osmocom.org/c/osmo-remsim/+/40570/comment/c16140ee_5d0627e9?… :
PS3, Line 9: After a desynchronisation between the server and bankd happen (e.g. restart the server),
> What tool are you using?
I'm also just using git, but I guess there might be some different configuration at play. My current setup doesn't warn me anymore, according to tests performed today. weird.
--
To view, visit https://gerrit.osmocom.org/c/osmo-remsim/+/40570?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-remsim
Gerrit-Branch: master
Gerrit-Change-Id: Iae3f86a6e695e2d6580151b203df1dd0e2db625b
Gerrit-Change-Number: 40570
Gerrit-PatchSet: 4
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Comment-Date: Mon, 07 Jul 2025 19:46:59 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Comment-In-Reply-To: lynxis lazus <lynxis(a)fe80.eu>
Attention is currently required from: pespin.
laforge has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40617?usp=email )
Change subject: RAN_Emulation.ttcnpp: Log ignored rx RANAP msg when no cb set
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40617?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: I15b6fea2d44ab9607db020e1152ee1fd79839a52
Gerrit-Change-Number: 40617
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 07 Jul 2025 19:38:31 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40579?usp=email )
Change subject: ss7_vty: Avoid adding route to local PC in role ASP
......................................................................
ss7_vty: Avoid adding route to local PC in role ASP
This commit basically reverts b4f1b2cb8bd404f08601dc8ca700b672a455846c
from ~4 years ago.
In ASP role, the routing-key is configured with a local PC, since that's
what's announced during RKM towards the SG.
Hence, it makes no sense adding a route pointing to a local PCm because
the M3UA routing decisions first check if the DPC is local, and only then
otherwise tries to route it.
Change-Id: Ic602de42e37c4579f530823bb41e0a8193ce73bb
---
M src/ss7_as_vty.c
M src/ss7_vty.c
M src/ss7_vty.h
3 files changed, 1 insertion(+), 25 deletions(-)
Approvals:
laforge: Looks good to me, but someone else must approve
Jenkins Builder: Verified
osmith: Looks good to me, but someone else must approve
daniel: Looks good to me, but someone else must approve
pespin: Looks good to me, approved
diff --git a/src/ss7_as_vty.c b/src/ss7_as_vty.c
index 6ea170e..0b0ddc1 100644
--- a/src/ss7_as_vty.c
+++ b/src/ss7_as_vty.c
@@ -288,7 +288,6 @@
{
struct osmo_ss7_as *as = vty->index;
struct osmo_ss7_routing_key *rkey = &as->cfg.routing_key;
- struct osmo_ss7_route *rt;
int pc;
if (as->cfg.proto == OSMO_SS7_ASP_PROT_IPA && atoi(rcontext) != 0) {
@@ -303,34 +302,12 @@
return CMD_WARNING;
}
- /* When libosmo-sigtran is used in ASP role, the VTY routing table node
- * (config-cs7-rt) is not available. However, when we add a routing key
- * to an AS we still have to put a matching dynamic route into the routing
- * table. This is done automatically by first removing the old dynamic route
- * (users may change the routing key via VTY during runtime) and then
- * putting a new dynamic route (see below). */
- if (cs7_role == CS7_ROLE_ASP) {
- rt = ss7_route_table_find_route_by_dpc_mask(as->inst->rtable_system,
- rkey->pc, 0xffffff,
- true);
- if (rt)
- ss7_route_destroy(rt);
- }
-
rkey->pc = pc;
rkey->context = atoi(rcontext); /* FIXME: input validation */
rkey->si = si ? get_string_value(mtp_si_vals, si) : 0; /* FIXME: input validation */
rkey->ssn = ssn ? atoi(ssn) : 0; /* FIXME: input validation */
- /* automatically add new dynamic route (see also comment above) */
- if (cs7_role == CS7_ROLE_ASP) {
- if (!ss7_route_create(as->inst->rtable_system, rkey->pc, 0xffffff, true, as->cfg.name)) {
- vty_out(vty, "Cannot create route (pc=%s, linkset=%s) to AS %s", dpc, as->cfg.name, VTY_NEWLINE);
- return CMD_WARNING;
- }
- }
-
return CMD_SUCCESS;
}
diff --git a/src/ss7_vty.c b/src/ss7_vty.c
index 9916185..a8869d4 100644
--- a/src/ss7_vty.c
+++ b/src/ss7_vty.c
@@ -75,7 +75,7 @@
* Core CS7 Configuration
***********************************************************************/
-enum cs7_role_t cs7_role;
+static enum cs7_role_t cs7_role;
void *g_ctx;
static struct cmd_node cs7_node = {
diff --git a/src/ss7_vty.h b/src/ss7_vty.h
index 18dc5a6..3bafffd 100644
--- a/src/ss7_vty.h
+++ b/src/ss7_vty.h
@@ -18,7 +18,6 @@
};
extern void *g_ctx;
-extern enum cs7_role_t cs7_role;
extern const struct value_string ipproto_vals[];
#define CS7_STR "ITU-T Signaling System 7\n"
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40579?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: Ic602de42e37c4579f530823bb41e0a8193ce73bb
Gerrit-Change-Number: 40579
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40580?usp=email )
Change subject: as: Avoid adding dyn route when IPA AS becomes active
......................................................................
as: Avoid adding dyn route when IPA AS becomes active
It makes no sense to do so nowadays:
* ASP role: the routing-key PC points to a local PC, and hence it's not
really used during routing.
* SG role: This would only make sense if we somehow supported dynamic IP
AS, which we don't support (only IPA ASP). Hence, the AS is always
configured and hence the user is responsible of filling the routing
table with an appropriate entry towards the peer's DPC.
Change-Id: I8997d40f2a779734432b40d27f9345d9a739d36f
---
M src/xua_as_fsm.c
1 file changed, 0 insertions(+), 78 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, approved
laforge: Looks good to me, but someone else must approve
osmith: Looks good to me, but someone else must approve
diff --git a/src/xua_as_fsm.c b/src/xua_as_fsm.c
index 71049d5..7d8e302 100644
--- a/src/xua_as_fsm.c
+++ b/src/xua_as_fsm.c
@@ -265,7 +265,6 @@
struct osmo_timer_list t_r;
struct llist_head queued_xua_msgs;
} recovery;
- bool ipa_route_created;
};
static void fill_notify_statchg_pars(const struct osmo_fsm_inst *fi, struct osmo_xlm_prim_notify *npar)
@@ -291,79 +290,6 @@
}
}
-/* is the given AS one with a single ASP of IPA type? */
-static bool is_single_ipa_asp(struct osmo_ss7_as *as)
-{
- unsigned int asp_count = 0;
- int i;
-
- for (i = 0; i < ARRAY_SIZE(as->cfg.asps); i++) {
- struct osmo_ss7_asp *asp = as->cfg.asps[i];
- if (!asp)
- continue;
- asp_count++;
- if (asp->cfg.proto != OSMO_SS7_ASP_PROT_IPA)
- return false;
- }
- if (asp_count == 1)
- return true;
- return false;
-}
-
-static void ipa_add_route(struct osmo_fsm_inst *fi)
-{
- struct xua_as_fsm_priv *xafp = (struct xua_as_fsm_priv *) fi->priv;
- struct osmo_ss7_as *as = xafp->as;
- struct osmo_ss7_instance *inst = as->inst;
-
- if (ss7_route_table_find_route_by_dpc_mask(inst->rtable_system,
- as->cfg.routing_key.pc, 0xffffff,
- true))
- return;
-
- /* As opposed to M3UA, there is no RKM and we have to implicitly
- * automatically add a dynamic route once an IPA connection has come up */
- if (ss7_route_create(inst->rtable_system, as->cfg.routing_key.pc, 0xffffff, true, as->cfg.name))
- xafp->ipa_route_created = true;
-}
-
-static void ipa_del_route(struct osmo_fsm_inst *fi)
-{
- struct xua_as_fsm_priv *xafp = (struct xua_as_fsm_priv *) fi->priv;
- struct osmo_ss7_as *as = xafp->as;
- struct osmo_ss7_instance *inst = as->inst;
- struct osmo_ss7_route *rt;
-
- /* don't delete a route if we added none */
- if (!xafp->ipa_route_created)
- return;
-
- /* find the route which we have created if we ever reached ipa_asp_fsm_wait_id_ack2 */
- rt = ss7_route_table_find_route_by_dpc_mask(inst->rtable_system,
- as->cfg.routing_key.pc, 0xffffff,
- true);
- /* no route found, bail out */
- if (!rt) {
- LOGPFSML(fi, LOGL_NOTICE, "Attempting to delete route for this IPA AS, but cannot "
- "find route for DPC %s. Did you manually delete it?\n",
- osmo_ss7_pointcode_print(inst, as->cfg.routing_key.pc));
- return;
- }
-
- /* route points to different AS, bail out */
- if (rt->dest.as != as) {
- LOGPFSML(fi, LOGL_NOTICE, "Attempting to delete route for this IPA ASP, but found "
- "route for DPC %s points to different AS (%s)\n",
- osmo_ss7_pointcode_print(inst, as->cfg.routing_key.pc), rt->dest.as->cfg.name);
- return;
- }
-
- ss7_route_destroy(rt);
- xafp->ipa_route_created = false;
-}
-
-
-
/* is any other ASP in this AS in state != DOWN? */
static bool check_any_other_asp_not_down(struct osmo_ss7_as *as, struct osmo_ss7_asp *asp_cmp)
{
@@ -583,16 +509,12 @@
/* continue below */
break;
case XUA_AS_S_ACTIVE:
- if (is_single_ipa_asp(as))
- ipa_add_route(fi);
/* continue below */
break;
case XUA_AS_S_PENDING:
/* continue below */
break;
case XUA_AS_S_DOWN:
- if (is_single_ipa_asp(as))
- ipa_del_route(fi);
/* RFC4666 sec 4.3.2 AS States:
If we end up here, it means no ASP is ACTIVE or INACTIVE,
meaning no ASP can have already configured the traffic mode
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40580?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: I8997d40f2a779734432b40d27f9345d9a739d36f
Gerrit-Change-Number: 40580
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>