Attention is currently required from: iedemam, pespin, daniel.
Hello Jenkins Builder, neels, fixeria, daniel, lynxis lazus,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/27137
to look at the new patch set (#3).
Change subject: stats: use tcp stat names as provided
......................................................................
stats: use tcp stat names as provided
If an API user has defined a name for this particular
stat, we should consider it unique and not append ip and
port information from the connection.
By appending ip and port information to all tcp stat
names, we end up creating unique stat names every
time a reconnection occurs and the source port changes.
This makes the statistic impossible to track over time
as it is continually using a different name.
A quick example from the field over the course of a
day:
tcp.ipa-rsl-0,r=192.168.55.88.33056<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.33311<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.35510<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.35958<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.36110<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.39269<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.40394<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.40397<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.42920<->l=192.168.0.1.3003.tcp.rtt
tcp.ipa-rsl-0,r=192.168.55.88.43839<->l=192.168.0.1.3003.tcp.rtt
This change would treat tcp stats like other stats
around the system. A unique name must be set by the
API user. This would let us set a unique name like
the following to avoid the situation above:
bts.0.rsl.0.tcp.rtt
Matching the existing rsl related stats:
bts.0.rsl.delete_ind
bts.0.rsl.ipa_nack
bts.0.rsl.unknown
...they retain a constant name regardless of the underlying
connectivity situation.
Change-Id: Ib04c2f5bfcbd6c19dd87debf1fc053abf0b9bef2
---
M src/stats_tcp.c
1 file changed, 1 insertion(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/37/27137/3
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/27137
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ib04c2f5bfcbd6c19dd87debf1fc053abf0b9bef2
Gerrit-Change-Number: 27137
Gerrit-PatchSet: 3
Gerrit-Owner: iedemam <michael(a)kapsulate.com>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: iedemam <michael(a)kapsulate.com>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: osmith, daniel.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319 )
Change subject: jenkins-build-osmo-hnbgw: Build osmo-mgw as dependency
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Change-Id: Ic32160c8e1a00ae299344e029f3909a8e24c7291
Gerrit-Change-Number: 27319
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 24 Feb 2022 15:21:50 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: osmith, pespin.
pespin has removed a vote from this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319 )
Change subject: jenkins-build-osmo-hnbgw: Build osmo-mgw as dependency
......................................................................
Removed Verified-1 by Jenkins Builder (1000002)
--
To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Change-Id: Ic32160c8e1a00ae299344e029f3909a8e24c7291
Gerrit-Change-Number: 27319
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: deleteVote
Attention is currently required from: pespin, daniel.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320 )
Change subject: mgw_fsm: release call when FSM is not created
......................................................................
Patch Set 1:
(1 comment)
File src/osmo-hnbgw/mgw_fsm.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320/comment/206b7d3e_281d0509
PS1, Line 724: tx_release_req(map);
> Shouldn't we instead return a RAB assignment response with a failed list?
We could, but then the formatting of the message would be more difficult. If we would have gone for multiple-rab support I would say we definitely do that, but here I think its better to kill everything with by sending an IuRelease. (I don't think this is a spec violation.)
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: I1904f7e95d86bbcecee14f8721bd4075d0e33ab4
Gerrit-Change-Number: 27320
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 24 Feb 2022 14:37:00 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: osmith, pespin.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319 )
Change subject: jenkins-build-osmo-hnbgw: Build osmo-mgw as dependency
......................................................................
Patch Set 1: Verified+1
(1 comment)
Patchset:
PS1:
The jenkins failure seems unrelated. I ran jenkins-build-osmo-hnbgw.sh locally and it built everything without issue.
--
To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gsm-tester
Gerrit-Branch: master
Gerrit-Change-Id: Ic32160c8e1a00ae299344e029f3909a8e24c7291
Gerrit-Change-Number: 27319
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 24 Feb 2022 14:17:24 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin, dexter.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320 )
Change subject: mgw_fsm: release call when FSM is not created
......................................................................
Patch Set 1:
(1 comment)
File src/osmo-hnbgw/mgw_fsm.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320/comment/485bcd2e_bd5d67b3
PS1, Line 724: tx_release_req(map);
Shouldn't we instead return a RAB assignment response with a failed list?
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: I1904f7e95d86bbcecee14f8721bd4075d0e33ab4
Gerrit-Change-Number: 27320
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 24 Feb 2022 14:11:45 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320 )
Change subject: mgw_fsm: release call when FSM is not created
......................................................................
mgw_fsm: release call when FSM is not created
While the FSM is created the RAB Assignment Requests is checked and
parsed. In case of failure the context is freed, but the CN is not
informed about the problem. The RAB AssignmentRequest will then most
likely time out. However, lets make sure the call is released by re
requesting an IU Release.
Change-Id: I1904f7e95d86bbcecee14f8721bd4075d0e33ab4
Related: OS#5152
---
M src/osmo-hnbgw/mgw_fsm.c
1 file changed, 2 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hnbgw refs/changes/20/27320/1
diff --git a/src/osmo-hnbgw/mgw_fsm.c b/src/osmo-hnbgw/mgw_fsm.c
index d4ef800..3da2b60 100644
--- a/src/osmo-hnbgw/mgw_fsm.c
+++ b/src/osmo-hnbgw/mgw_fsm.c
@@ -719,9 +719,9 @@
return 0;
error:
- /* TODO: If we fail in this early stage, we should generate an appropriate RAB AssignmentResponse to inform
- * the core network about the failure. */
+ /* Cleanup context and make sure that the call is cleared. */
mgw_fsm_priv_cleanup(mgw_fsm_priv);
+ tx_release_req(map);
return -EINVAL;
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/27320
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: I1904f7e95d86bbcecee14f8721bd4075d0e33ab4
Gerrit-Change-Number: 27320
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newchange
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/27321 )
Change subject: ranap_rab_ass: check for more than one RAB assignment req
......................................................................
ranap_rab_ass: check for more than one RAB assignment req
The spec permits RAB AssignmentRequests with multiple RABs at a time.
Even though one voice call is assigned only one RAB in practice. Since
the current FSM implementation only supports a 1:1 scenario, lets check
if the MSC really assigns only one RAB and block RAB Assignments that do
not fit in this scheme.
Change-Id: I0f1d868fd0b4dc413533d6fcc5482862825181be
Related: OS#5152
---
M include/osmocom/hnbgw/ranap_rab_ass.h
M src/osmo-hnbgw/mgw_fsm.c
M src/osmo-hnbgw/ranap_rab_ass.c
M tests/ranap_rab_ass/ranap_rab_ass_test.c
M tests/ranap_rab_ass/ranap_rab_ass_test.ok
5 files changed, 56 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hnbgw refs/changes/21/27321/1
diff --git a/include/osmocom/hnbgw/ranap_rab_ass.h b/include/osmocom/hnbgw/ranap_rab_ass.h
index eb18de8..13fd2df 100644
--- a/include/osmocom/hnbgw/ranap_rab_ass.h
+++ b/include/osmocom/hnbgw/ranap_rab_ass.h
@@ -17,3 +17,5 @@
bool ranap_rab_ass_req_ies_check_release(RANAP_RAB_AssignmentRequestIEs_t *ies, uint8_t rab_id);
bool ranap_rab_ass_resp_ies_check_failure(RANAP_RAB_AssignmentResponseIEs_t *ies, uint8_t rab_id);
+
+int ranap_rab_ass_req_ies_get_count(RANAP_RAB_AssignmentRequestIEs_t *ies);
diff --git a/src/osmo-hnbgw/mgw_fsm.c b/src/osmo-hnbgw/mgw_fsm.c
index 3da2b60..b777ef7 100644
--- a/src/osmo-hnbgw/mgw_fsm.c
+++ b/src/osmo-hnbgw/mgw_fsm.c
@@ -689,6 +689,16 @@
mgw_fsm_priv = talloc_zero(map, struct mgw_fsm_priv);
mgw_fsm_priv->ranap_rab_ass_req_message = message;
+ /* This FSM only supports RAB assignments with a single RAB assignment only. This limitation has been taken
+ * into account under the assumption that voice calls typically require a single RAB only. Nevertheless, we
+ * will block all incoming RAB assignments that try to assign more (or less) then one RAB. */
+ if (ranap_rab_ass_req_ies_get_count(&message->msg.raB_AssignmentRequestIEs) != 1) {
+ LOGP(DMGW, LOGL_ERROR,
+ "mgw_fsm_alloc_and_handle_rab_ass_req() rua_ctx_id=%d, RAB-AssignmentRequest with more than one RAB assignment -- abort!\n",
+ map->rua_ctx_id);
+ goto error;
+ }
+
/* Parse the RAB Assignment Request now, if it is bad for some reason we will exit early and not bother with
* creating an FSM etc. */
ies = &mgw_fsm_priv->ranap_rab_ass_req_message->msg.raB_AssignmentRequestIEs;
diff --git a/src/osmo-hnbgw/ranap_rab_ass.c b/src/osmo-hnbgw/ranap_rab_ass.c
index 56886c7..5930451 100644
--- a/src/osmo-hnbgw/ranap_rab_ass.c
+++ b/src/osmo-hnbgw/ranap_rab_ass.c
@@ -620,3 +620,18 @@
return result;
}
+
+/*! Find out how many RAB items are present in a RAB-SetupOrModifyList inside RANAP_RAB_AssignmentRequestIEs.
+ * \ptmap[in] ies user provided memory with RANAP_RAB_AssignmentRequestIEs.
+ * \returns number of RAB items, -1 on failure. */
+int ranap_rab_ass_req_ies_get_count(RANAP_RAB_AssignmentRequestIEs_t *ies)
+{
+ /* Make sure we indeed deal with a setup-or-modify list */
+ if (!(ies->presenceMask & RAB_ASSIGNMENTREQUESTIES_RANAP_RAB_SETUPORMODIFYLIST_PRESENT)) {
+ RANAP_DEBUG
+ ("Decoding failed, the RANAP RAB AssignmentRequest did not contain a setup-or-modify list!\n");
+ return -1;
+ }
+
+ return ies->raB_SetupOrModifyList.list.count;
+}
diff --git a/tests/ranap_rab_ass/ranap_rab_ass_test.c b/tests/ranap_rab_ass/ranap_rab_ass_test.c
index 052549e..9a98cf8 100644
--- a/tests/ranap_rab_ass/ranap_rab_ass_test.c
+++ b/tests/ranap_rab_ass/ranap_rab_ass_test.c
@@ -320,6 +320,33 @@
ranap_ran_rx_co_free(&message);
}
+void test_ranap_rab_ass_req_ies_get_count(void)
+{
+ int rc;
+ ranap_message message;
+ uint8_t testvec[] = {
+ 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x01, 0x00,
+ 0x36, 0x40, 0x52, 0x00, 0x00, 0x01, 0x00, 0x35,
+ 0x00, 0x48, 0x78, 0x22, 0xcd, 0x80, 0x10, 0x2f,
+ 0xa7, 0x20, 0x1a, 0x2c, 0x00, 0x00, 0xf4, 0x4c,
+ 0x08, 0x0a, 0x02, 0x80, 0x00, 0x51, 0x40, 0x00,
+ 0x27, 0x20, 0x28, 0x14, 0x00, 0x67, 0x40, 0x00,
+ 0x00, 0x22, 0x28, 0x14, 0x00, 0x3c, 0x40, 0x00,
+ 0x00, 0x00, 0x50, 0x3d, 0x02, 0x00, 0x02, 0x27,
+ 0xc0, 0x35, 0x00, 0x01, 0x0a, 0x09, 0x01, 0xa2,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x1f, 0x76,
+ 0x00, 0x00, 0x40, 0x01, 0x00, 0x00
+ };
+
+ rc = ranap_ran_rx_co_decode(talloc_asn1_ctx, &message, testvec, sizeof(testvec));
+ OSMO_ASSERT(rc == 0);
+
+ rc = ranap_rab_ass_req_ies_get_count(&message.msg.raB_AssignmentRequestIEs);
+ printf("ranap_rab_ass_req_ies_get_count rc=%d\n", rc);
+ ranap_ran_rx_co_free(&message);
+}
+
static const struct log_info_cat log_cat[] = {
[DRANAP] = {
.name = "RANAP", .loglevel = LOGL_DEBUG, .enabled = 1,
@@ -382,6 +409,7 @@
test_ranap_rab_ass_resp_ies_replace_inet_addr();
test_ranap_rab_ass_resp_ies_check_failure();
test_ranap_rab_ass_req_ies_check_release();
+ test_ranap_rab_ass_req_ies_get_count();
test_cleanup();
return 0;
diff --git a/tests/ranap_rab_ass/ranap_rab_ass_test.ok b/tests/ranap_rab_ass/ranap_rab_ass_test.ok
index 688925c..aca4ff3 100644
--- a/tests/ranap_rab_ass/ranap_rab_ass_test.ok
+++ b/tests/ranap_rab_ass/ranap_rab_ass_test.ok
@@ -18,3 +18,4 @@
ranap_rab_ass_resp_ies_check_failure rab_failed_at_hnb=0 (RAB ID 44, which is not in the message)
ranap_rab_ass_req_ies_check_release rab_release_req=1 (RAB ID 23)
ranap_rab_ass_req_ies_check_release rab_release_req=0 (RAB ID 44, which is not in the message)
+ranap_rab_ass_req_ies_get_count rc=1
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/27321
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: I0f1d868fd0b4dc413533d6fcc5482862825181be
Gerrit-Change-Number: 27321
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: osmith, dexter.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/27318 )
Change subject: Reenable ttcn3-hnbgw-test
......................................................................
Patch Set 2:
(1 comment)
Patchset:
PS2:
> That's about osmo-gsm-tester building(?) osmo-hnbgw and it seems to complain about missing dependenc […]
Fix for osmo-gsm-tester_build-osmo-hnbgw here: https://gerrit.osmocom.org/c/osmo-gsm-tester/+/27319
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/27318
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: I4c7d1ee876e90d52827b2d8cc57342298dd44061
Gerrit-Change-Number: 27318
Gerrit-PatchSet: 2
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 24 Feb 2022 13:43:38 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Comment-In-Reply-To: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: comment