pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40696?usp=email )
Change subject: xua_asp_fsm: Move helper function to ss7_asp internal API
......................................................................
xua_asp_fsm: Move helper function to ss7_asp internal API
This function will be used in other files in follow-up commit.
Change-Id: I3eb57c3fb690e7486b52b2c433b25930d16599e5
---
M src/ss7_asp.c
M src/ss7_asp.h
M src/xua_asp_fsm.c
3 files changed, 30 insertions(+), 28 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-sigtran refs/changes/96/40696/1
diff --git a/src/ss7_asp.c b/src/ss7_asp.c
index 0fea556..86de153 100644
--- a/src/ss7_asp.c
+++ b/src/ss7_asp.c
@@ -1549,3 +1549,30 @@
{
return _ss7_asp_get_all_rctx(asp, rctx, rctx_size, excl_as, false);
}
+
+/* determine the osmo_ss7_as_traffic_mode to be used by this ASP; will
+ * iterate over all AS configured for this ASP. If they're compatible,
+ * a single traffic mode is returned as enum osmo_ss7_as_traffic_mode.
+ * If they're incompatible, -EINVAL is returned. If there is none
+ * configured, -1 is returned */
+int ss7_asp_determine_traf_mode(const struct osmo_ss7_asp *asp)
+{
+ struct osmo_ss7_as *as;
+ int tmode = -1;
+
+ llist_for_each_entry(as, &asp->inst->as_list, list) {
+ if (!osmo_ss7_as_has_asp(as, asp))
+ continue;
+ /* we only care about traffic modes explicitly set */
+ if (!as->cfg.mode_set_by_vty)
+ continue;
+ if (tmode == -1) {
+ /* this is the first AS; we use this traffic mode */
+ tmode = as->cfg.mode;
+ } else {
+ if (tmode != as->cfg.mode)
+ return -EINVAL;
+ }
+ }
+ return tmode;
+}
diff --git a/src/ss7_asp.h b/src/ss7_asp.h
index ec74e82..e25c85c 100644
--- a/src/ss7_asp.h
+++ b/src/ss7_asp.h
@@ -172,5 +172,7 @@
unsigned int ss7_asp_get_all_rctx_be(const struct osmo_ss7_asp *asp, uint32_t *rctx, unsigned int rctx_size,
const struct osmo_ss7_as *excl_as);
+int ss7_asp_determine_traf_mode(const struct osmo_ss7_asp *asp);
+
#define LOGPASP(asp, subsys, level, fmt, args ...) \
_LOGSS7((asp)->inst, subsys, level, "ASP(%s) " fmt, (asp)->cfg.name, ## args)
diff --git a/src/xua_asp_fsm.c b/src/xua_asp_fsm.c
index 06d4a86..730b97a 100644
--- a/src/xua_asp_fsm.c
+++ b/src/xua_asp_fsm.c
@@ -194,33 +194,6 @@
talloc_free(aff_pc);
}
-/* determine the osmo_ss7_as_traffic_mode to be used by this ASP; will
- * iterate over all AS configured for this ASP. If they're compatible,
- * a single traffic mode is returned as enum osmo_ss7_as_traffic_mode.
- * If they're incompatible, -EINVAL is returned. If there is none
- * configured, -1 is returned */
-static int determine_traf_mode(struct osmo_ss7_asp *asp)
-{
- struct osmo_ss7_as *as;
- int tmode = -1;
-
- llist_for_each_entry(as, &asp->inst->as_list, list) {
- if (!osmo_ss7_as_has_asp(as, asp))
- continue;
- /* we only care about traffic modes explicitly set */
- if (!as->cfg.mode_set_by_vty)
- continue;
- if (tmode == -1) {
- /* this is the first AS; we use this traffic mode */
- tmode = as->cfg.mode;
- } else {
- if (tmode != as->cfg.mode)
- return -EINVAL;
- }
- }
- return tmode;
-}
-
/* add M3UA_IEI_ROUTE_CTX to xua_msg containig all routing keys of ASs within ASP */
static int xua_msg_add_asp_rctx(struct xua_msg *xua, struct osmo_ss7_asp *asp)
{
@@ -302,7 +275,7 @@
/* RFC3868 Ch. 3.6.1 */
xua->hdr = XUA_HDR(SUA_MSGC_ASPTM, SUA_ASPTM_ACTIVE);
/* Optional: Traffic Mode Type */
- rc = determine_traf_mode(asp);
+ rc = ss7_asp_determine_traf_mode(asp);
if (rc >= 0)
xua_msg_add_u32(xua, M3UA_IEI_TRAF_MODE_TYP, osmo_ss7_tmode_to_xua(rc));
/* Optional: Routing Context */
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40696?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: I3eb57c3fb690e7486b52b2c433b25930d16599e5
Gerrit-Change-Number: 40696
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40694?usp=email )
Change subject: sccp: MTP-TRANSFER.req: Set OPC before route lookup
......................................................................
sccp: MTP-TRANSFER.req: Set OPC before route lookup
Before this commit, all SCCP UNIT-DATA.req came with unset xua->mtp.opc
and hence route lookup was done with opc=0 in mtp route label.
Since loadsharing may take into account some OPC bits to distribute
traffic, set the OPC properly before route lookup.
Change-Id: I85e1d6c48f3c9082dcfaaeaa97a805cc0a372463
---
M src/sccp_scrc.c
1 file changed, 6 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-sigtran refs/changes/94/40694/1
diff --git a/src/sccp_scrc.c b/src/sccp_scrc.c
index e28e584..d8239e3 100644
--- a/src/sccp_scrc.c
+++ b/src/sccp_scrc.c
@@ -142,6 +142,7 @@
struct xua_msg *xua,
const struct osmo_sccp_addr *called)
{
+ struct osmo_sccp_addr calling;
struct osmo_ss7_route *rt;
struct osmo_ss7_route_label rtlabel;
@@ -159,6 +160,11 @@
* primitive and send it via link
*/
+ if (sua_addr_parse(&calling, xua, SUA_IEI_SRC_ADDR) == 0 &&
+ (calling.presence & OSMO_SCCP_ADDR_T_PC))
+ xua->mtp.opc = calling.pc;
+
+
if (called->presence & OSMO_SCCP_ADDR_T_PC)
xua->mtp.dpc = called->pc;
if (!xua->mtp.dpc) {
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40694?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: I85e1d6c48f3c9082dcfaaeaa97a805cc0a372463
Gerrit-Change-Number: 40694
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/40697?usp=email )
Change subject: xua_default_lm_fsm: Activate all ASPs in tmode broadcast/loadshare/roundrobin
......................................................................
xua_default_lm_fsm: Activate all ASPs in tmode broadcast/loadshare/roundrobin
If an ASP in an AS in tmode != override went down and up again, the LM
FSM was not re-activating it. This commit fixes it.
In tmode Override we don't want to swap the already active ASP, but in
other tmodes we want to have all of them activated.
This bug didn't affect during initial startup because usually all ASPs
were being activated while the AS wasn't yet active.
Change-Id: I548b88fa70b308033cb225623e803b731755651e
---
M src/xua_default_lm_fsm.c
1 file changed, 12 insertions(+), 6 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-sigtran refs/changes/97/40697/1
diff --git a/src/xua_default_lm_fsm.c b/src/xua_default_lm_fsm.c
index 2cf2010..dff5421 100644
--- a/src/xua_default_lm_fsm.c
+++ b/src/xua_default_lm_fsm.c
@@ -245,12 +245,18 @@
case LM_E_NOTIFY_IND:
OSMO_ASSERT(oxp->oph.primitive == OSMO_XLM_PRIM_M_NOTIFY);
OSMO_ASSERT(oxp->oph.operation == PRIM_OP_INDICATION);
- if (oxp->u.notify.status_type == M3UA_NOTIFY_T_STATCHG &&
- (oxp->u.notify.status_info == M3UA_NOTIFY_I_AS_INACT ||
- oxp->u.notify.status_info == M3UA_NOTIFY_I_AS_PEND)) {
- lm_fsm_state_chg(fi, S_ACTIVE);
- osmo_fsm_inst_dispatch(lmp->asp->fi, XUA_ASP_E_M_ASP_ACTIVE_REQ, NULL);
- }
+
+ /* Not handling/interested in other status changes for now. */
+ if (oxp->u.notify.status_type != M3UA_NOTIFY_T_STATCHG)
+ break;
+
+ /* Don't change active ASP if there's alreasy one active. */
+ if (ss7_asp_determine_traf_mode(lmp->asp) == OSMO_SS7_AS_TMOD_OVERRIDE &&
+ oxp->u.notify.status_info == M3UA_NOTIFY_I_AS_ACT)
+ break;
+
+ lm_fsm_state_chg(fi, S_ACTIVE);
+ osmo_fsm_inst_dispatch(lmp->asp->fi, XUA_ASP_E_M_ASP_ACTIVE_REQ, NULL);
break;
case LM_E_AS_INACTIVE_IND:
/* we now know that an AS is associated with this ASP at
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/40697?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: I548b88fa70b308033cb225623e803b731755651e
Gerrit-Change-Number: 40697
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Attention is currently required from: lynxis lazus.
daniel has posted comments on this change by lynxis lazus. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/40689?usp=email )
Change subject: use variable name rai for `struct osmo_routing_area_id`
......................................................................
Patch Set 2: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/40689?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: I946983d4857035e06c68af378654466b35025014
Gerrit-Change-Number: 40689
Gerrit-PatchSet: 2
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Comment-Date: Tue, 15 Jul 2025 16:06:27 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Attention is currently required from: lynxis lazus.
daniel has posted comments on this change by lynxis lazus. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/40688?usp=email )
Change subject: routing area: introduce ran_type on the RA
......................................................................
Patch Set 2: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/40688?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: I59c35f1a4912ff11574bb31e4fe424816993548c
Gerrit-Change-Number: 40688
Gerrit-PatchSet: 2
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Comment-Date: Tue, 15 Jul 2025 16:06:11 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
lynxis lazus has posted comments on this change by lynxis lazus. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40649?usp=email )
Change subject: SGSN: Iu: use correct service request type
......................................................................
Patch Set 4:
(1 comment)
File sgsn/SGSN_Tests_Iu.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40649/comment/d20e3c34_adb2… :
PS3, Line 213: SERVICE_TYPE_Signalling
> to make it more clear.
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40649?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: Ia47edd8ca916cf377da875583a3c4eb6ff5f1f52
Gerrit-Change-Number: 40649
Gerrit-PatchSet: 4
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 15 Jul 2025 16:03:39 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: daniel <dwillmann(a)sysmocom.de>
Comment-In-Reply-To: lynxis lazus <lynxis(a)fe80.eu>
Attention is currently required from: pespin.
lynxis lazus has posted comments on this change by lynxis lazus. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40651?usp=email )
Change subject: BSSGP_ConnHdlr: f_service_request: allow to define if a Service Accept is expected
......................................................................
Patch Set 6:
(1 comment)
File sgsn/BSSGP_ConnHdlr.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40651/comment/5ed59f8f_4ad1… :
PS2, Line 760: boolean expect_service_acc := true,
> Oh. Sorry, this was a rebase accident.
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40651?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: I5c190db28263c530a8eea188bf570a58eaffdd4d
Gerrit-Change-Number: 40651
Gerrit-PatchSet: 6
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 15 Jul 2025 16:03:16 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: lynxis lazus <lynxis(a)fe80.eu>
Attention is currently required from: pespin.
Hello Jenkins Builder, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40651?usp=email
to look at the new patch set (#6).
The following approvals got outdated and were removed:
Code-Review-1 by pespin, Verified+1 by Jenkins Builder
Change subject: BSSGP_ConnHdlr: f_service_request: allow to define if a Service Accept is expected
......................................................................
BSSGP_ConnHdlr: f_service_request: allow to define if a Service Accept is expected
A SecurityModeCommand is defined as an implicit Service Accept when the UE
is in PMM_IDLE (meaning, having no Iu signalling connection)
Change-Id: I5c190db28263c530a8eea188bf570a58eaffdd4d
---
M sgsn/BSSGP_ConnHdlr.ttcn
M sgsn/SGSN_Tests_Iu.ttcn
2 files changed, 3 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/51/40651/6
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40651?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I5c190db28263c530a8eea188bf570a58eaffdd4d
Gerrit-Change-Number: 40651
Gerrit-PatchSet: 6
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>