falconia has posted comments on this change by falconia. ( https://gerrit.osmocom.org/c/osmo-mgw/+/43969?usp=email )
Change subject: mgcp_client: add support for driving ThemWi transcoder MGW
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
The new MGW for which this patch adds support resides here:
https://gitea.osmocom.org/themwi/hera-tc-mgw
OsmoMSC patches that follow the present libosmo-mgcp-client patch can be found here:
https://osmo-mirror.usa2g.org/osmo-msc/?h=falconia/tc-candidate
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/43969?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: I713147d6567fb30de09b2272478d717093d6170e
Gerrit-Change-Number: 43969
Gerrit-PatchSet: 1
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Tue, 27 Oct 2026 02:19:59 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
falconia has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-mgw/+/43969?usp=email )
Change subject: mgcp_client: add support for driving ThemWi transcoder MGW
......................................................................
mgcp_client: add support for driving ThemWi transcoder MGW
Hera TC MGW is an alternative MGW implementation intended for use
with OsmoMSC. Unlike standard OsmoMGW, the new MGW incorporates
speech transcoder functionality, acting as a software equivalent
of a traditional GSM TRAU. Just like original TDM-based TRAUs,
Hera TC MGW is highly asymmetric: one side is meant to connect to
Ater-IP (AoIP compressed speech interface modified with ThemWi
RTP payload formats, providing functionality of classic TDM Ater
over IP), while the other side connects to further CN components
and carries uncompressed PCM speech (G.711) in normal operation.
The dialect of MGCP spoken by Hera TC MGW requires two additions
to libosmo-mgcp-client:
1) The endpoints are named transcoder/* instead of rtpbridge/*;
2) Each transcoder/* endpoint requires two CRCX commands for full
connection just like rtpbridge/*, but each of these CRCX
commands needs to indicate which side is being connected,
RAN or CN, via non-standard "X-Side:" parameter line.
Change-Id: I713147d6567fb30de09b2272478d717093d6170e
---
M TODO-RELEASE
M include/osmocom/mgcp/mgcp_common.h
M include/osmocom/mgcp_client/mgcp_client.h
M include/osmocom/mgcp_client/mgcp_client_fsm.h
M include/osmocom/mgcp_client/mgcp_client_internal.h
M src/libosmo-mgcp-client/mgcp_client.c
M src/libosmo-mgcp-client/mgcp_client_fsm.c
7 files changed, 48 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/69/43969/1
diff --git a/TODO-RELEASE b/TODO-RELEASE
index 0ed7189..ba7c676 100644
--- a/TODO-RELEASE
+++ b/TODO-RELEASE
@@ -7,3 +7,5 @@
# If any interfaces have been added since the last public release: c:r:a + 1.
# If any interfaces have been removed or changed since the last public release: c:r:0.
#library what description / commit summary line
+libosmo-mgcp-client API addition mgcp_client_transcoder_wildcard()
+libosmo-mgcp-client ABI break struct mgcp_conn_peer extended
diff --git a/include/osmocom/mgcp/mgcp_common.h b/include/osmocom/mgcp/mgcp_common.h
index 14b226f..0014eb5 100644
--- a/include/osmocom/mgcp/mgcp_common.h
+++ b/include/osmocom/mgcp/mgcp_common.h
@@ -113,4 +113,14 @@
* at once. */
#define MGCP_MAX_CODECS 10
+/* Themyscira Wireless MGW implementations are asymmetric: in the case of
+ * Hera TC MGW intended for use with OsmoMSC, one side is RAN while the other
+ * side is CN, and the MGW needs to know which side is which. There may be
+ * a future ThemWi MGW for use with OsmoBSC that will likewise need to know
+ * which side is AoIP and which side is Abis-IP. These MGWs require a
+ * non-standard X-Side parameter line to be included in CRCX command, e.g.,
+ * "X-Side: RAN" or "X-Side: CN". Define the maximum allowed length of
+ * side ID string, including the terminating NUL. */
+#define MGCP_SIDE_ID_MAXLEN 16
+
#endif
diff --git a/include/osmocom/mgcp_client/mgcp_client.h b/include/osmocom/mgcp_client/mgcp_client.h
index 2cddf00..16b9c6f 100644
--- a/include/osmocom/mgcp_client/mgcp_client.h
+++ b/include/osmocom/mgcp_client/mgcp_client.h
@@ -111,6 +111,7 @@
const char *mgcp_client_endpoint_domain(const struct mgcp_client *mgcp);
const char *mgcp_client_rtpbridge_wildcard(const struct mgcp_client *mgcp);
+const char *mgcp_client_transcoder_wildcard(const struct mgcp_client *mgcp);
const char *mgcp_client_e1_epname(void *ctx, const struct mgcp_client *mgcp, uint8_t trunk_id, uint8_t ts,
uint8_t rate, uint8_t offset);
diff --git a/include/osmocom/mgcp_client/mgcp_client_fsm.h b/include/osmocom/mgcp_client/mgcp_client_fsm.h
index 3e31e9c..d51f77a 100644
--- a/include/osmocom/mgcp_client/mgcp_client_fsm.h
+++ b/include/osmocom/mgcp_client/mgcp_client_fsm.h
@@ -62,6 +62,16 @@
* here, see also mgcp_common.h. The format parameters will be applied on all codecs where applicable. */
bool param_present OSMO_DEPRECATED_OUTSIDE_LIBOSMOMGCPCLIENT("use ptmap[].fmtp instead");
struct mgcp_codec_param param OSMO_DEPRECATED_OUTSIDE_LIBOSMOMGCPCLIENT("use ptmap[].fmtp instead");
+
+ /*! osmo-msc is being extended with an option to operate with a ThemWi
+ * asymmetric MGW that requires non-standard X-Side parameter line
+ * to be included in CRCX command, as in "X-Side: RAN" for RAN side
+ * or "X-Side: CN" for CN side. If an application such as osmo-msc or
+ * osmo-bsc needs to drive such MGW, put the side ID string to be
+ * emitted with CRCX into this char buffer. No X-Side parameter line
+ * will be emitted if this char buffer is empty.
+ */
+ char x_side[MGCP_SIDE_ID_MAXLEN];
};
struct osmo_fsm_inst *mgcp_conn_create(struct mgcp_client *mgcp, struct osmo_fsm_inst *parent_fi, uint32_t parent_term_evt,
diff --git a/include/osmocom/mgcp_client/mgcp_client_internal.h b/include/osmocom/mgcp_client/mgcp_client_internal.h
index ac55dfc..5251bd0 100644
--- a/include/osmocom/mgcp_client/mgcp_client_internal.h
+++ b/include/osmocom/mgcp_client/mgcp_client_internal.h
@@ -70,6 +70,7 @@
#define MGCP_MSG_PRESENCE_AUDIO_IP 0x0008
#define MGCP_MSG_PRESENCE_AUDIO_PORT 0x0010
#define MGCP_MSG_PRESENCE_CONN_MODE 0x0020
+#define MGCP_MSG_PRESENCE_X_SIDE 0x2000
#define MGCP_MSG_PRESENCE_X_OSMO_OSMUX_CID 0x4000
#define MGCP_MSG_PRESENCE_X_OSMO_IGN 0x8000
@@ -89,6 +90,7 @@
uint32_t x_osmo_ign;
bool x_osmo_osmux_use;
int x_osmo_osmux_cid; /* -1 is wildcard */
+ char x_side[MGCP_SIDE_ID_MAXLEN];
bool param_present;
struct mgcp_codec_param param;
};
diff --git a/src/libosmo-mgcp-client/mgcp_client.c b/src/libosmo-mgcp-client/mgcp_client.c
index 09c273c..162bebd 100644
--- a/src/libosmo-mgcp-client/mgcp_client.c
+++ b/src/libosmo-mgcp-client/mgcp_client.c
@@ -1103,6 +1103,15 @@
return _mgcp_client_name_append_domain(mgcp, "rtpbridge/*");
}
+/*! Compose endpoint name for a wildcarded request to ThemWi Ater-to-PCM
+ * transcoding MGW.
+ * \param[in] mgcp MGCP client descriptor.
+ * \returns string containing the endpoint name (e.g. transcoder\*@mgw) */
+const char *mgcp_client_transcoder_wildcard(const struct mgcp_client *mgcp)
+{
+ return _mgcp_client_name_append_domain(mgcp, "transcoder/*");
+}
+
/*! Compose endpoint name for an E1 endpoint.
* \param[in] ctx talloc context.
* \param[in] mgcp MGCP client descriptor.
@@ -1619,6 +1628,15 @@
mgcp_msg->x_osmo_osmux_cid == -1 ? " *" : buf);
}
+ /* Add X-Side for asymmetric MGWs */
+ if (mgcp_msg->presence & MGCP_MSG_PRESENCE_X_SIDE) {
+ if (strlen(mgcp_msg->x_side) <= 0) {
+ LOGPMGW(mgcp, LOGL_ERROR, "Empty side id, can not generate MGCP message\n");
+ goto exit_error;
+ }
+ MSGB_PRINTF_OR_RET("X-Side: %s\r\n", mgcp_msg->x_side);
+ }
+
/* Add session description protocol (SDP) */
if (use_sdp
diff --git a/src/libosmo-mgcp-client/mgcp_client_fsm.c b/src/libosmo-mgcp-client/mgcp_client_fsm.c
index 7a6fed8..156db05 100644
--- a/src/libosmo-mgcp-client/mgcp_client_fsm.c
+++ b/src/libosmo-mgcp-client/mgcp_client_fsm.c
@@ -131,6 +131,11 @@
mgcp_msg->x_osmo_osmux_cid = info->x_osmo_osmux_cid;
mgcp_msg->presence |= MGCP_MSG_PRESENCE_X_OSMO_OSMUX_CID;
}
+
+ if (info->x_side[0]) {
+ osmo_strlcpy(mgcp_msg->x_side, info->x_side, MGCP_SIDE_ID_MAXLEN);
+ mgcp_msg->presence |= MGCP_MSG_PRESENCE_X_SIDE;
+ }
}
static void add_audio(struct mgcp_msg *mgcp_msg, struct mgcp_conn_peer *info)
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/43969?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: I713147d6567fb30de09b2272478d717093d6170e
Gerrit-Change-Number: 43969
Gerrit-PatchSet: 1
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/43968?usp=email )
Change subject: gprs_sndcp_xid: double check buffer size after writing SAPIs
......................................................................
gprs_sndcp_xid: double check buffer size after writing SAPIs
The function encode_pcomp_applicable_sapis writes the applicable
SAPIs to the output buffer. For this it requires 2 bytes. After
that, each encoder funtion writes the remaining information to
the buffer. The check at the beginning of each encoder function
is sufficient to ensure that the buffer is large enough.
However, this remains only true in case the number of bytes
that encode_pcomp_applicable_sapis writes is 2. If there are
changes to the spec or similar, the function might write more
than 2 bytes. So let's place an additional length check to be
on the secure side.
Change-Id: I059c903885e21215ad1e6b835f34db2c5f70d87a
Related: OS#7095
---
M src/sgsn/gprs_sndcp_xid.c
1 file changed, 20 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-sgsn refs/changes/68/43968/1
diff --git a/src/sgsn/gprs_sndcp_xid.c b/src/sgsn/gprs_sndcp_xid.c
index 21b6030..67deaa9 100644
--- a/src/sgsn/gprs_sndcp_xid.c
+++ b/src/sgsn/gprs_sndcp_xid.c
@@ -115,6 +115,10 @@
dst += rc;
dst_counter += rc;
+ /* We still need to write 1 byte from here */
+ if (dst_maxlen - dst_counter < 1)
+ return -ENOMEM;
+
/* Encode s01 (see also: 3GPP TS 44.065, 6.5.2.1, Table 5) */
if (params->s01 < 0 || params->s01 > 255)
return -EINVAL;
@@ -154,6 +158,10 @@
dst += rc;
dst_counter += rc;
+ /* We still need to write 7 bytes from here */
+ if (dst_maxlen - dst_counter < 7)
+ return -ENOMEM;
+
/* Encode F_MAX_PERIOD (see also: 3GPP TS 44.065, 6.5.3.1, Table 6) */
if (params->f_max_period < 1 || params->f_max_period > 65535)
return -EINVAL;
@@ -233,6 +241,10 @@
dst += rc;
dst_counter += rc;
+ /* We still need to write 36 bytes from here */
+ if (dst_maxlen - dst_counter < 36)
+ return -ENOMEM;
+
/* Encode MAX_CID (see also: 3GPP TS 44.065, 6.5.4.1, Table 10) */
if (params->max_cid < 0 || params->max_cid > 16383)
return -EINVAL;
@@ -290,6 +302,10 @@
dst += rc;
dst_counter += rc;
+ /* We still need to write 4 bytes from here */
+ if (dst_maxlen - dst_counter < 4)
+ return -ENOMEM;
+
/* Encode P0 (see also: 3GPP TS 44.065, 6.6.2.1, Table 7a) */
if (params->p0 < 0 || params->p0 > 3)
return -EINVAL;
@@ -343,6 +359,10 @@
dst += rc;
dst_counter += rc;
+ /* We still need to write 10 bytes from here */
+ if (dst_maxlen - dst_counter < 10)
+ return -ENOMEM;
+
/* Encode C0 (see also: 3GPP TS 44.065, 6.6.3.1, Table 7c) */
if (params->c0 != 0x80 && params->c0 != 0xC0)
return -EINVAL;
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43968?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: I059c903885e21215ad1e6b835f34db2c5f70d87a
Gerrit-Change-Number: 43968
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Attention is currently required from: fixeria, lynxis lazus, pespin.
Hello Jenkins Builder, fixeria, lynxis lazus, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?usp=email
to look at the new patch set (#3).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: gprs_sndcp_xid: replace OSMO_ASSERT with if and return
......................................................................
gprs_sndcp_xid: replace OSMO_ASSERT with if and return
The code around the function gprs_sndcp_compile_xid was written
under the assumption that the caller always supplies correct
input parameters because the caller has 100% control over the
input. However, this is a high standard and depending on how
the input is obtained errors may happen. In case of an error,
the whole process will crash due to the usage of OSMO_ASSERT.
When looking at the callers of gprs_sndcp_compile_xid, we can
see that they already check the return code. Also the return
type of gprs_sndcp_compile_xid is already int. We also do not
have any dynamically allocated memory. There is nothing
that would speak against returning a negative error code.
Let's replace each occurrence of OSMO_ASSERT with an if and
return an error code to the caller, so that the caller can
handle the problem gracefully.
Related: OS#7095
Change-Id: Ia570b27a3670fed3aeb4779840292c5d216a1102
---
M src/sgsn/gprs_sndcp_xid.c
1 file changed, 104 insertions(+), 74 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-sgsn refs/changes/58/43958/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: Ia570b27a3670fed3aeb4779840292c5d216a1102
Gerrit-Change-Number: 43958
Gerrit-PatchSet: 3
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(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>
Attention is currently required from: fixeria, lynxis lazus, pespin.
dexter has posted comments on this change by dexter. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?usp=email )
Change subject: gprs_sndcp_xid: replace OSMO_ASSERT with if and return
......................................................................
Patch Set 3:
(4 comments)
File src/sgsn/gprs_sndcp_xid.c:
https://gerrit.osmocom.org/c/osmo-sgsn/+/43958/comment/4f557e59_cab00ecc?us… :
PS2, Line 293: /* Encode P0 (see also: 3GPP TS 44.065, 6.6.2.1, Table 7a) */
> For another commit: […]
Its covered by the check above, but I agree, its a bit difficult to see. I will add another check in a follow up patch, so that we are still safe in case encode_pcomp_applicable_sapis writes more than 2 bytes - maybe when the spec gets upgraded and we do not notice, its a real risk...
https://gerrit.osmocom.org/c/osmo-sgsn/+/43958/comment/d928c681_b10a4054?us… :
PS2, Line 379: if (params->p3t < 0 || params->p3t > 65535 || params->p3t < 2 * params->p1t)
> better enclose (2*params->p1t) into parenthesis? also below in line 388.
Done
https://gerrit.osmocom.org/c/osmo-sgsn/+/43958/comment/ed9dceee_e3ff9449?us… :
PS2, Line 623: } else if (rc > 0) {
> no need for "} else" here (early return), remove it.
But we still need the If then, because we do not want to do the tlv_put when the data length (rc) is 0.
https://gerrit.osmocom.org/c/osmo-sgsn/+/43958/comment/44aab306_22493fdd?us… :
PS2, Line 636: } else if (rc > 0) {
> no need for "} else" here (early return), remove it.
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?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: Ia570b27a3670fed3aeb4779840292c5d216a1102
Gerrit-Change-Number: 43958
Gerrit-PatchSet: 3
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(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: Mon, 26 Oct 2026 14:03:45 +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>
dexter has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-gprs/+/43963?usp=email )
(
1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
)Change subject: sndcp_xid: use reasonable static buffer size
......................................................................
sndcp_xid: use reasonable static buffer size
the output of gprs_sndcp_compile_xid is a buffer with TLV objects.
Each TLV object is generated into an internal buffer (comp_bytes)
before it is added to the output buffer using tlv_put. Since we
are using a TLV structure here, the fields cannot exceed a length
of 255. Using a buffer size of 512 is misleading.
This patch has been ported from:
osmo-sgsn.git If348e15a98fd6d28a1de08df57983bb710001d73
Related: OS#7095
Change-Id: Ic8e7719063d87e5328ebf503e9a43325bb07acf8
---
M src/sndcp/sndcp_xid.c
1 file changed, 1 insertion(+), 1 deletion(-)
Approvals:
pespin: Looks good to me, approved
Jenkins Builder: Verified
fixeria: Looks good to me, but someone else must approve
diff --git a/src/sndcp/sndcp_xid.c b/src/sndcp/sndcp_xid.c
index 28e8928..a380206 100644
--- a/src/sndcp/sndcp_xid.c
+++ b/src/sndcp/sndcp_xid.c
@@ -560,7 +560,7 @@
{
int rc;
int byte_counter = 0;
- uint8_t comp_bytes[512];
+ uint8_t comp_bytes[256];
uint8_t xid_version_number[1];
OSMO_ASSERT(comp_fields);
--
To view, visit https://gerrit.osmocom.org/c/libosmo-gprs/+/43963?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: Ic8e7719063d87e5328ebf503e9a43325bb07acf8
Gerrit-Change-Number: 43963
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/43957?usp=email )
Change subject: gprs_sndcp_xid: use reasonable static buffer size
......................................................................
gprs_sndcp_xid: use reasonable static buffer size
the output of gprs_sndcp_compile_xid is a buffer with TLV objects.
Each TLV object is generated into an internal buffer (comp_bytes)
before it is added to the output buffer using tlv_put. Since we
are using a TLV structure here, the fields cannot exceed a length
of 255. Using a buffer size of 512 is misleading.
Related: OS#7095
Change-Id: If348e15a98fd6d28a1de08df57983bb710001d73
---
M src/sgsn/gprs_sndcp_xid.c
1 file changed, 1 insertion(+), 1 deletion(-)
Approvals:
lynxis lazus: Looks good to me, approved
pespin: Looks good to me, approved
Jenkins Builder: Verified
fixeria: Looks good to me, but someone else must approve
diff --git a/src/sgsn/gprs_sndcp_xid.c b/src/sgsn/gprs_sndcp_xid.c
index 0b981b5..834d98a 100644
--- a/src/sgsn/gprs_sndcp_xid.c
+++ b/src/sgsn/gprs_sndcp_xid.c
@@ -566,7 +566,7 @@
{
int rc;
int byte_counter = 0;
- uint8_t comp_bytes[512];
+ uint8_t comp_bytes[256];
uint8_t xid_version_number[1];
OSMO_ASSERT(comp_fields);
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43957?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: If348e15a98fd6d28a1de08df57983bb710001d73
Gerrit-Change-Number: 43957
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Attention is currently required from: dexter, fixeria.
lynxis lazus has posted comments on this change by dexter. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?usp=email )
Change subject: gprs_sndcp_xid: replace OSMO_ASSERT with if and return
......................................................................
Patch Set 2:
(1 comment)
Patchset:
PS2:
> +1 here after Pau's minors. […]
I mean the dst_length should go into another commit.
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?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: Ia570b27a3670fed3aeb4779840292c5d216a1102
Gerrit-Change-Number: 43958
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 26 Oct 2026 11:55:28 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: lynxis lazus <lynxis(a)fe80.eu>
Attention is currently required from: dexter, fixeria.
lynxis lazus has posted comments on this change by dexter. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?usp=email )
Change subject: gprs_sndcp_xid: replace OSMO_ASSERT with if and return
......................................................................
Patch Set 2:
(2 comments)
Patchset:
PS2:
+1 here after Pau's minors.
But the functions don't check dst_length before writing to it.
File src/sgsn/gprs_sndcp_xid.c:
https://gerrit.osmocom.org/c/osmo-sgsn/+/43958/comment/d0ed9086_9680b23e?us… :
PS2, Line 293: /* Encode P0 (see also: 3GPP TS 44.065, 6.6.2.1, Table 7a) */
For another commit:
Check the dst_length before writing to dst.
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/43958?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: Ia570b27a3670fed3aeb4779840292c5d216a1102
Gerrit-Change-Number: 43958
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 26 Oct 2026 11:54:56 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No