aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@osmocom.org>2023-09-01 10:38:43 +0200
committerHarald Welte <laforge@osmocom.org>2023-09-01 10:39:20 +0200
commit4c1751ddca179035e6e76503956e5f794fa00639 (patch)
tree6db35f280ba91730c8d4f292ec12a68ad3725dea
parentb93e1d01205cdd7bd7a65e15945f664f31fb4bcb (diff)
m3ua: Add some TODO comments on where we fall short of our potential
-rw-r--r--src/m3ua.c6
-rw-r--r--src/xua_as_fsm.c2
2 files changed, 6 insertions, 2 deletions
diff --git a/src/m3ua.c b/src/m3ua.c
index 85ac974..f4dbf76 100644
--- a/src/m3ua.c
+++ b/src/m3ua.c
@@ -462,9 +462,11 @@ static struct msgb *m3ua_to_msg(struct xua_msg *xua)
return NULL;
}
- if (xua->hdr.msg_class == M3UA_MSGC_XFER)
+ if (xua->hdr.msg_class == M3UA_MSGC_XFER) {
+ /* TODO: M3UA RFC says that multiple different streams within the SCTP association
+ * *may* be used, for example, by using the SLS value. Not required but makes sense. */
msgb_sctp_stream(msg) = 1;
- else
+ } else
msgb_sctp_stream(msg) = 0;
msgb_sctp_ppid(msg) = M3UA_PPID;
diff --git a/src/xua_as_fsm.c b/src/xua_as_fsm.c
index 2b16139..e239c74 100644
--- a/src/xua_as_fsm.c
+++ b/src/xua_as_fsm.c
@@ -158,6 +158,8 @@ int xua_as_transmit_msg(struct osmo_ss7_as *as, struct msgb *msg)
asp = xua_as_select_asp_override(as);
break;
case OSMO_SS7_AS_TMOD_LOADSHARE:
+ /* TODO: actually use the SLS value to ensure same SLS goes through same ASP. Not
+ * strictly required by M3UA RFC, but would fit the overall principle. */
case OSMO_SS7_AS_TMOD_ROUNDROBIN:
asp = xua_as_select_asp_roundrobin(as);
break;