Attention is currently required from: osmith, pespin, dexter.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/33571 )
Change subject: MME_Tests: add docker tests for MME
......................................................................
Patch Set 1:
(1 comment)
File ttcn3-mme-test-ogs/jenkins.sh:
https://gerrit.osmocom.org/c/docker-playground/+/33571/comment/c36c964d_472…
PS1, Line 27: --cap-add=NET_ADMIN \
: --device /dev/net/tun:/dev/net/tun \
: --sysctl net.ipv6.conf.all.disable_ipv6=0 \
> do you need these options, or are they just copied from other Dockerfiles and it works fine without […]
the MME is not involved in the user plane, so I don't understand why it would need /dev/net/tun access. the CAP_NET_ADMIN is apparently needed for SO_BINDTODEVICE. However, this is only used by the MME of the ogs_udp_server() is started with "so_bindtodevice" option. So the questions is whether or not our configs use that option, and whether they really need to. I personally currently don't know why the MME would need to hard-bind a socket to a specific net-device.
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/33571
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: Ic1ce1dace47353b0dcf321c923a78567e3ddefb9
Gerrit-Change-Number: 33571
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 05 Jul 2023 11:11:28 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: jolly.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33507 )
Change subject: ASCI: Add VGCS/VBS call control specific data to gsm_trans
......................................................................
Patch Set 9: Code-Review-1
(1 comment)
Patchset:
PS9:
Again another example: please put this commit together with the commit using those fields.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33507
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I37d68a89a101fa579680fd3cf170cd3dc5a148e4
Gerrit-Change-Number: 33507
Gerrit-PatchSet: 9
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Comment-Date: Wed, 05 Jul 2023 11:10:11 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: jolly, laforge, pespin.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/33548 )
Change subject: ASCI: Support conference briding with 1..n connections
......................................................................
Patch Set 2:
(4 comments)
File src/libosmo-mgcp/mgcp_protocol.c:
https://gerrit.osmocom.org/c/osmo-mgw/+/33548/comment/1644c627_12dda9ba
PS2, Line 970: if (llist_count(&endp->conns) >= endp->type->max_conns) {
It is not immediately obvious for me where you now check endp->type->max_conns. Can you give me a hint?
File src/libosmo-mgcp/mgcp_trunk.c:
https://gerrit.osmocom.org/c/osmo-mgw/+/33548/comment/f7e2e0e2_2fa37b02
PS2, Line 311: /* Interconnect payload of connections depending on their mode.
"Interconnect payload of connections" I wonder what this means. We probably do not interconnect payloads. Maybe you mean "Interconnect connections depending on their mode"?
https://gerrit.osmocom.org/c/osmo-mgw/+/33548/comment/f5a80d95_e72dbf3c
PS2, Line 352: *
For public functions we usually use doxygen syntax. For static functions we just have normal comments. Just have a look at the other C-files.
https://gerrit.osmocom.org/c/osmo-mgw/+/33548/comment/15a4c55e_aafe0282
PS2, Line 353: */
maybe the function should be called mgcp_trunk_connect_conn. This may sound a bit strange but as it is now it sounds like if this would refer the to the trunk but we actually connect connections on an endpoint. Maybe moving this function to mgcp_endp.c would make sense.
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/33548
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic99a55ab5a3a6170e940403fadd52697e99f2f3a
Gerrit-Change-Number: 33548
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 05 Jul 2023 11:02:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: jolly, neels, laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33500 )
Change subject: ASCI: Allow usage of rtp_stream with other FSM
......................................................................
Patch Set 6: Code-Review+1
(2 comments)
Commit Message:
https://gerrit.osmocom.org/c/osmo-msc/+/33500/comment/643c349b_9b784c00
PS6, Line 13: Drop the unused parent_call_leg member.
This is probably another patch.
File include/osmocom/msc/rtp_stream.h:
https://gerrit.osmocom.org/c/osmo-msc/+/33500/comment/cc460e46_de812f53
PS6, Line 29: uint32_t avail_event;
what about naming all of them ev_* or event_*. We usually use the prefix in all event enums, and it makes it easier to understand when reading it's an event imho.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33500
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I0991927b6d00da08dfd455980645e68281a73a9e
Gerrit-Change-Number: 33500
Gerrit-PatchSet: 6
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Wed, 05 Jul 2023 10:54:05 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin, dexter.
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/33571 )
Change subject: MME_Tests: add docker tests for MME
......................................................................
Patch Set 1:
(3 comments)
File debian-bullseye-titan/Dockerfile:
https://gerrit.osmocom.org/c/docker-playground/+/33571/comment/727c0608_f20…
PS1, Line 34: libgnutls28-dev \
move after inetutils-ping, so the list is still ordered alphabetically
File ttcn3-mme-test-ogs/jenkins.sh:
https://gerrit.osmocom.org/c/docker-playground/+/33571/comment/9d9c9cd1_d11…
PS1, Line 5: KERNEL_TEST="${KERNEL_TEST:-0}"
unused
https://gerrit.osmocom.org/c/docker-playground/+/33571/comment/6a2c223a_c91…
PS1, Line 27: --cap-add=NET_ADMIN \
: --device /dev/net/tun:/dev/net/tun \
: --sysctl net.ipv6.conf.all.disable_ipv6=0 \
do you need these options, or are they just copied from other Dockerfiles and it works fine without them? (but looking at mme.sh they are probably needed)
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/33571
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: Ic1ce1dace47353b0dcf321c923a78567e3ddefb9
Gerrit-Change-Number: 33571
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(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: Wed, 05 Jul 2023 10:53:37 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: jolly, laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33499 )
Change subject: ASCI: rtp_stream_commit(): Also update MGW on conn mode change
......................................................................
Patch Set 6:
(1 comment)
File src/libmsc/rtp_stream.c:
https://gerrit.osmocom.org/c/osmo-msc/+/33499/comment/1ea2c63b_af3ff28d
PS6, Line 441: rtps->mode_sent_to_mgw = false;
imho this should only be set if "rtps->crcx_conn_mode != mode", aka new mode different than old mode.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33499
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I7a5637d0a7f1df13133e522fc78ba75eeeb2873e
Gerrit-Change-Number: 33499
Gerrit-PatchSet: 6
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Wed, 05 Jul 2023 10:49:59 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: jolly, laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33509 )
Change subject: ASCI: Add log category for VGCS/VBS call and channel FSM
......................................................................
Patch Set 5: Code-Review+1
(1 comment)
Patchset:
PS5:
Same, this would be far better in the same commit where it is used.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33509
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Icebc855fdc3f6ca7034ad3576b1acb5aed6bc435
Gerrit-Change-Number: 33509
Gerrit-PatchSet: 5
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Wed, 05 Jul 2023 10:41:37 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: jolly, laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33508 )
Change subject: ASCI: Add log categories for GCC/BCC (call control)
......................................................................
Patch Set 5:
(1 comment)
Patchset:
PS5:
Please, as a general note, avoid submitting commits adding stuff which is not used in the same commit. It makes it harder for reviewers to understand it, as well as later on when searching history or reverting changes.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33508
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I4c5d002b5bb1c2ebf2fac777ab784559fc265e7c
Gerrit-Change-Number: 33508
Gerrit-PatchSet: 5
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Wed, 05 Jul 2023 10:41:03 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: dexter.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33540
to look at the new patch set (#5).
Change subject: PCU_Tests: test NACC procedure with UTRAN and E-UTRAN cell
......................................................................
PCU_Tests: test NACC procedure with UTRAN and E-UTRAN cell
When the PacketCellChangeNotification proposes an UTRAN or E-UTRAN cell,
then the PCU will not provide system information. Instead it will directly
conclude the NACC procedure with a PacketCellChangeContinue message.
Related: OS#6044
Change-Id: Idae86a458fd44ac81bab183ed1865b1c1bdbfd66
---
M library/RLCMAC_CSN1_Templates.ttcn
M pcu/PCU_Tests.ttcn
2 files changed, 205 insertions(+), 11 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/40/33540/5
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33540
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Idae86a458fd44ac81bab183ed1865b1c1bdbfd66
Gerrit-Change-Number: 33540
Gerrit-PatchSet: 5
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newpatchset
osmith has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/33572 )
Change subject: redmine: fix auto-scan of repositories
......................................................................
redmine: fix auto-scan of repositories
While inspecting the running docker container I found that the script
already runs as redmine user. I had assumed that it runs as root
earlier. Running 'su' as redmine user fails, therefore it currently does
not run the fetch_changesets command.
Related: OS#6083
Change-Id: I195311b93868eb5fd73ad6e3c165d48f3b7b53ce
---
M redmine/docker-entrypoint-osmo.sh
1 file changed, 16 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/72/33572/1
diff --git a/redmine/docker-entrypoint-osmo.sh b/redmine/docker-entrypoint-osmo.sh
index aff8183..8206d29 100755
--- a/redmine/docker-entrypoint-osmo.sh
+++ b/redmine/docker-entrypoint-osmo.sh
@@ -7,7 +7,7 @@
sleep 10m
echo
echo "=== Fetching git repositories (OS#5331) ==="
- su redmine -c 'rails runner "Repository.fetch_changesets" -e production'
+ rails runner "Repository.fetch_changesets" -e production
echo
done &) &
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/33572
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: I195311b93868eb5fd73ad6e3c165d48f3b7b53ce
Gerrit-Change-Number: 33572
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: newchange
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33539 )
Change subject: PCU_Tests: verify that PacketCellChangeContine contains an ARFCN and BSIC
......................................................................
PCU_Tests: verify that PacketCellChangeContine contains an ARFCN and BSIC
The testcase TC_nacc_outbound_success tests the NACC procedure. The cell
that is proposed in the PacketCellChangeNotification is a GERAN cell.
This means that the PCU should conclude the procedure with a
PacketCellChangeNotification that contains the ARFCN and BSIC of the
proposed cell. Let's make sure that this actually is the case.
Related: OS#6044
Change-Id: I4b8f3312088e3d2bc4b90702485e7c6a8d39f954
---
M pcu/PCU_Tests.ttcn
1 file changed, 26 insertions(+), 3 deletions(-)
Approvals:
laforge: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index a1da67b..440d133 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -5332,13 +5332,14 @@
}
}
-/* Start NACC from MS side */
+/* Start NACC from MS side, propose a GERAN cell */
private function f_outbound_nacc_success(inout GprsMS ms, PCUIF_info_ind info_ind,
boolean exp_rac_ci_query := true, boolean exp_si_query := true,
boolean skip_final_ctrl_ack := false,
boolean use_old_ctrl_iface := false)
runs on RAW_PCU_Test_CT {
var template (value) RlcmacUlCtrlMsg cell_chg_notif;
+ var template RlcmacDlCtrlMsg cell_chg_cont;
var RlcmacDlBlock dl_block;
var uint32_t sched_fn;
var GsmArfcn req_arfcn := 862;
@@ -5361,9 +5362,15 @@
/* Announce SI back to MS, continue NACC procedure */
f_ms_handle_pkt_neighbor_cell_data(ms, si_default);
- /* Obtain a Downlink block and make sure it is a Pkt Cell Chg Continue */
+ /* Obtain a Downlink block and make sure it is a PacketCellChangeContinue, also verify that
+ * the PacketCellChangeContinue message contains the ARFCN and BSIC which was proposed in
+ * the PacketCellChangeNotification before. */
f_rx_rlcmac_dl_block(dl_block, sched_fn);
- if (not match(dl_block, tr_RLCMAC_DL_CTRL(?, tr_RlcMacDlCtrl_PKT_CELL_CHG_CONTINUE))) {
+ cell_chg_cont := tr_RlcMacDlCtrl_PKT_CELL_CHG_CONTINUE
+ cell_chg_cont.u.cell_chg_continue.arfcn_bsic_presence := '1'B
+ cell_chg_cont.u.cell_chg_continue.arfcn := req_arfcn;
+ cell_chg_cont.u.cell_chg_continue.bsic := req_bsic;
+ if (not match(dl_block, tr_RLCMAC_DL_CTRL(?, cell_chg_cont))) {
setverdict(fail, "Rx unexpected DL block: ", dl_block);
f_shutdown(__BFILE__, __LINE__);
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33539
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I4b8f3312088e3d2bc4b90702485e7c6a8d39f954
Gerrit-Change-Number: 33539
Gerrit-PatchSet: 3
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33417 )
Change subject: PCUIF_Types: fix record PCUIF_pch_dt
......................................................................
PCUIF_Types: fix record PCUIF_pch_dt
The record PCUIF_pch_dt uses ALIGN(left) variants for imsi data. This is
not correct, since it would left-pad the data with zeros if it does not
fit the specified length. This is a problem with IMSIs shorter than 17
characters, because the left padded zeros would appear like a
null-string to the receiving end.
When the ALIGN(left) modifier is removed, the encoder will apply the
padding from the right. This will fill the unused space after the string
with zeros.
Related: OS#5927
Change-Id: I011eb2496b1422c49736b227dfa1e2a2d6096d67
---
M library/PCUIF_Types.ttcn
1 file changed, 22 insertions(+), 2 deletions(-)
Approvals:
fixeria: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn
index 5ddcc9e..8f5d4eb 100644
--- a/library/PCUIF_Types.ttcn
+++ b/library/PCUIF_Types.ttcn
@@ -320,8 +320,8 @@
octetstring data length(23)
} with {
variant (tlli) "BYTEORDER(last)"
- variant (imsi) "FIELDLENGTH(17), ALIGN(left)"
- variant (data) "FIELDLENGTH(23), ALIGN(left)"
+ variant (imsi) "FIELDLENGTH(17)"
+ variant (data) "FIELDLENGTH(23)"
};
type union PCUIF_MsgUnion {
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33417
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I011eb2496b1422c49736b227dfa1e2a2d6096d67
Gerrit-Change-Number: 33417
Gerrit-PatchSet: 3
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: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/33571 )
Change subject: MME_Tests: add docker tests for MME
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
When adding this, I have oriented myself on other test, (ttcn3-ggsn-test-ogs in particular). I did this the first time, so please have a critical look. Also I am not sure about freediameter.conf. I just copied it from ttcn3-ggsn-test-ogs and did not make any changes to it.
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/33571
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: Ic1ce1dace47353b0dcf321c923a78567e3ddefb9
Gerrit-Change-Number: 33571
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Wed, 05 Jul 2023 09:43:55 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: laforge, pespin, dexter.
jolly has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/33548 )
Change subject: ASCI: Support conference briding with 1..n connections
......................................................................
Patch Set 2:
(1 comment)
Patchset:
PS2:
> I agree with pau, I also thought that iterating over all connections of an endpoint would be the mos […]
My idea was to use pointers to increase performance. In most cases there is only one destination, so there is only one pointer to follow. Using a foreach-loop to check all connections for every packet produces much more overhead. OTOH, the code can be much more simplified it using a foreach-loop. The send/send_next pointers are obsolete then. What do you think?
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/33548
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic99a55ab5a3a6170e940403fadd52697e99f2f3a
Gerrit-Change-Number: 33548
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 05 Jul 2023 09:40:26 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/33571 )
Change subject: MME_Tests: add docker tests for MME
......................................................................
MME_Tests: add docker tests for MME
an MME testsuite exists in osmo-ttcn3-hacks but it is not executed in
docker yet.
Related: OS#5760
Change-Id: Ic1ce1dace47353b0dcf321c923a78567e3ddefb9
---
M debian-bullseye-titan/Dockerfile
A ttcn3-mme-test-ogs/Dockerfile
A ttcn3-mme-test-ogs/Makefile
A ttcn3-mme-test-ogs/jenkins.sh
A ttcn3-mme-test-ogs/ogs/MME_Tests.cfg
A ttcn3-mme-test-ogs/ogs/freediameter.conf
A ttcn3-mme-test-ogs/ogs/mme.sh
A ttcn3-mme-test-ogs/ogs/open5gs-mme.yaml
8 files changed, 919 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/71/33571/1
diff --git a/debian-bullseye-titan/Dockerfile b/debian-bullseye-titan/Dockerfile
index 7bf180f..594acbb 100644
--- a/debian-bullseye-titan/Dockerfile
+++ b/debian-bullseye-titan/Dockerfile
@@ -31,6 +31,7 @@
tcpdump \
vim \
wireshark-common \
+ libgnutls28-dev \
&& \
apt-get clean
diff --git a/ttcn3-mme-test-ogs/Dockerfile b/ttcn3-mme-test-ogs/Dockerfile
new file mode 100644
index 0000000..4d0032d
--- /dev/null
+++ b/ttcn3-mme-test-ogs/Dockerfile
@@ -0,0 +1,13 @@
+ARG REGISTRY
+ARG USER
+FROM $REGISTRY/$USER/debian-bullseye-titan
+ARG OSMO_TTCN3_BRANCH="master"
+
+ADD https://gerrit.osmocom.org/plugins/gitiles/osmo-ttcn3-hacks/+/$OSMO_TTCN3_B… /tmp/commit
+RUN ttcn3-docker-prepare "$OSMO_TTCN3_BRANCH" mme
+
+VOLUME /data
+
+COPY ogs/MME_Tests.cfg /data/MME_Tests.cfg
+
+CMD ttcn3-docker-run mme MME_Tests
diff --git a/ttcn3-mme-test-ogs/Makefile b/ttcn3-mme-test-ogs/Makefile
new file mode 100644
index 0000000..8d0e10b
--- /dev/null
+++ b/ttcn3-mme-test-ogs/Makefile
@@ -0,0 +1 @@
+include ../make/Makefile
diff --git a/ttcn3-mme-test-ogs/jenkins.sh b/ttcn3-mme-test-ogs/jenkins.sh
new file mode 100755
index 0000000..762a2b4
--- /dev/null
+++ b/ttcn3-mme-test-ogs/jenkins.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+. ../jenkins-common.sh
+
+KERNEL_TEST="${KERNEL_TEST:-0}"
+IMAGE_SUFFIX="${IMAGE_SUFFIX:-master}"
+docker_images_require \
+ "open5gs-$IMAGE_SUFFIX" \
+ "ttcn3-mme-test-ogs"
+
+set_clean_up_trap
+set -e
+
+mkdir $VOL_BASE_DIR/mme-tester
+cp ogs/MME_Tests.cfg $VOL_BASE_DIR/mme-tester/
+write_mp_osmo_repo "$VOL_BASE_DIR/mme-tester/MME_Tests.cfg"
+
+mkdir $VOL_BASE_DIR/mme
+cp ogs/open5gs-*.yaml $VOL_BASE_DIR/mme/
+cp ogs/freediameter.conf $VOL_BASE_DIR/mme/
+cp ogs/mme.sh $VOL_BASE_DIR/mme/
+
+network_create
+network_replace_subnet_in_configs
+
+# start container with mme in background
+docker run --cap-add=NET_ADMIN \
+ --device /dev/net/tun:/dev/net/tun \
+ --sysctl net.ipv6.conf.all.disable_ipv6=0 \
+ --rm \
+ --ulimit core=-1 \
+ -v $VOL_BASE_DIR/mme:/data \
+ --name ${BUILD_TAG}-ogs-mme -d \
+ $DOCKER_ARGS \
+ $(docker_network_params $SUBNET 201) \
+ $REPO_USER/open5gs-$IMAGE_SUFFIX \
+ /bin/sh -c "open5gs-mmed -c /data/open5gs-mme.yaml >/data/open5gs-mmed.out 2>&1"
+
+# start docker container with testsuite in foreground
+docker run --rm \
+ --sysctl net.ipv6.conf.all.disable_ipv6=0 \
+ $(docker_network_params $SUBNET 202) \
+ --ulimit core=-1 \
+ -v $VOL_BASE_DIR/mme-tester:/data \
+ -e "TTCN3_PCAP_PATH=/data" \
+ --name ${BUILD_TAG}-mme-test \
+ $DOCKER_ARGS \
+ $REPO_USER/ttcn3-mme-test-ogs
diff --git a/ttcn3-mme-test-ogs/ogs/MME_Tests.cfg b/ttcn3-mme-test-ogs/ogs/MME_Tests.cfg
new file mode 100644
index 0000000..59cf865
--- /dev/null
+++ b/ttcn3-mme-test-ogs/ogs/MME_Tests.cfg
@@ -0,0 +1,33 @@
+[ORDERED_INCLUDE]
+# Common configuration, shared between test suites
+"/osmo-ttcn3-hacks/Common.cfg"
+# testsuite specific configuration, not expected to change
+"/osmo-ttcn3-hacks/mme/MME_Tests.default"
+
+# Local configuration below
+
+[LOGGING]
+
+[TESTPORT_PARAMETERS]
+
+[MODULE_PARAMETERS]
+# S1 interface
+mp_mme_ip := "172.18.3.201";
+mp_mme_s1ap_port := 36412;
+mp_s1_local_ip := "172.18.3.202";
+mp_s1_local_port := 50000;
+
+# S6 interface
+mp_s6_local_ip := "172.18.3.202";
+mp_s6_local_port := 3868;
+
+# SGs interface
+mp_sgs_local_ip := "172.18.3.202";
+mp_sgs_local_port := 29118;
+mp_vlr_name := "vlr.example.net";
+mp_mme_name := "mmec01.mmegi0001.mme.epc.mnc070.mcc901.3gppnetwork.org";
+
+[MAIN_CONTROLLER]
+
+[EXECUTE]
+MME_Tests.control
diff --git a/ttcn3-mme-test-ogs/ogs/freediameter.conf b/ttcn3-mme-test-ogs/ogs/freediameter.conf
new file mode 100644
index 0000000..63d61e5
--- /dev/null
+++ b/ttcn3-mme-test-ogs/ogs/freediameter.conf
@@ -0,0 +1,266 @@
+# This is a sample configuration file for freeDiameter daemon.
+
+# Most of the options can be omitted, as they default to reasonable values.
+# Only TLS-related options must be configured properly in usual setups.
+
+# It is possible to use "include" keyword to import additional files
+# e.g.: include "/etc/freeDiameter.d/*.conf"
+# This is exactly equivalent as copy & paste the content of the included file(s)
+# where the "include" keyword is found.
+
+
+##############################################################
+## Peer identity and realm
+
+# The Diameter Identity of this daemon.
+# This must be a valid FQDN that resolves to the local host.
+# Default: hostname's FQDN
+#Identity = "aaa.koganei.freediameter.net";
+Identity = "smf.localdomain";
+
+# The Diameter Realm of this daemon.
+# Default: the domain part of Identity (after the first dot).
+#Realm = "koganei.freediameter.net";
+Realm = "localdomain";
+
+##############################################################
+## Transport protocol configuration
+
+# The port this peer is listening on for incoming connections (TCP and SCTP).
+# Default: 3868. Use 0 to disable.
+Port = 3868;
+
+# The port this peer is listening on for incoming TLS-protected connections (TCP and SCTP).
+# See TLS_old_method for more information about TLS flavours.
+# Note: we use TLS/SCTP instead of DTLS/SCTP at the moment. This will change in future version of freeDiameter.
+# Default: 5868. Use 0 to disable.
+SecPort = 0;
+
+# Use RFC3588 method for TLS protection, where TLS is negociated after CER/CEA exchange is completed
+# on the unsecure connection. The alternative is RFC6733 mechanism, where TLS protects also the
+# CER/CEA exchange on a dedicated secure port.
+# This parameter only affects outgoing connections.
+# The setting can be also defined per-peer (see Peers configuration section).
+# Default: use RFC6733 method with separate port for TLS.
+#TLS_old_method;
+
+# Disable use of TCP protocol (only listen and connect over SCTP)
+# Default : TCP enabled
+#No_TCP;
+
+# Disable use of SCTP protocol (only listen and connect over TCP)
+# Default : SCTP enabled
+#No_SCTP;
+# This option is ignored if freeDiameter is compiled with DISABLE_SCTP option.
+
+# Prefer TCP instead of SCTP for establishing new connections.
+# This setting may be overwritten per peer in peer configuration blocs.
+# Default : SCTP is attempted first.
+#Prefer_TCP;
+
+# Default number of streams per SCTP associations.
+# This setting may be overwritten per peer basis.
+# Default : 30 streams
+#SCTP_streams = 30;
+
+##############################################################
+## Endpoint configuration
+
+# Disable use of IP addresses (only IPv6)
+# Default : IP enabled
+#No_IP;
+
+# Disable use of IPv6 addresses (only IP)
+# Default : IPv6 enabled
+#No_IPv6;
+
+# Specify local addresses the server must bind to
+# Default : listen on all addresses available.
+#ListenOn = "202.249.37.5";
+#ListenOn = "2001:200:903:2::202:1";
+#ListenOn = "fe80::21c:5ff:fe98:7d62%eth0";
+ListenOn = "172.18.3.201";
+
+
+##############################################################
+## Server configuration
+
+# How many Diameter peers are allowed to be connecting at the same time ?
+# This parameter limits the number of incoming connections from the time
+# the connection is accepted until the first CER is received.
+# Default: 5 unidentified clients in paralel.
+#ThreadsPerServer = 5;
+
+##############################################################
+## TLS Configuration
+
+# TLS is managed by the GNUTLS library in the freeDiameter daemon.
+# You may find more information about parameters and special behaviors
+# in the relevant documentation.
+# http://www.gnu.org/software/gnutls/manual/
+
+# Credentials of the local peer
+# The X509 certificate and private key file to use for the local peer.
+# The files must contain PKCS-1 encoded RSA key, in PEM format.
+# (These parameters are passed to gnutls_certificate_set_x509_key_file function)
+# Default : NO DEFAULT
+#TLS_Cred = "<x509 certif file.PEM>" , "<x509 private key file.PEM>";
+#TLS_Cred = "/etc/ssl/certs/freeDiameter.pem", "/etc/ssl/private/freeDiameter.key";
+
+# Certificate authority / trust anchors
+# The file containing the list of trusted Certificate Authorities (PEM list)
+# (This parameter is passed to gnutls_certificate_set_x509_trust_file function)
+# The directive can appear several times to specify several files.
+# Default : GNUTLS default behavior
+#TLS_CA = "<file.PEM>";
+
+# Certificate Revocation List file
+# The information about revoked certificates.
+# The file contains a list of trusted CRLs in PEM format. They should have been verified before.
+# (This parameter is passed to gnutls_certificate_set_x509_crl_file function)
+# Note: openssl CRL format might have interoperability issue with GNUTLS format.
+# Default : GNUTLS default behavior
+#TLS_CRL = "<file.PEM>";
+
+# GNU TLS Priority string
+# This string allows to configure the behavior of GNUTLS key exchanges
+# algorithms. See gnutls_priority_init function documentation for information.
+# You should also refer to the Diameter required TLS support here:
+# http://tools.ietf.org/html/rfc6733#section-13.1
+# Default : "NORMAL"
+# Example: TLS_Prio = "NONE:+VERS-TLS1.1:+AES-128-CBC:+RSA:+SHA1:+COMP-NULL";
+#TLS_Prio = "NORMAL";
+
+# Diffie-Hellman parameters size
+# Set the number of bits for generated DH parameters
+# Valid value should be 768, 1024, 2048, 3072 or 4096.
+# (This parameter is passed to gnutls_dh_params_generate2 function,
+# it usually should match RSA key size)
+# Default : 1024
+#TLS_DH_Bits = 1024;
+
+# Alternatively, you can specify a file to load the PKCS#3 encoded
+# DH parameters directly from. This accelerates the daemon start
+# but is slightly less secure. If this file is provided, the
+# TLS_DH_Bits parameters has no effect.
+# Default : no default.
+#TLS_DH_File = "<file.PEM>";
+
+
+##############################################################
+## Timers configuration
+
+# The Tc timer of this peer.
+# It is the delay before a new attempt is made to reconnect a disconnected peer.
+# The value is expressed in seconds. The recommended value is 30 seconds.
+# Default: 30
+#TcTimer = 30;
+
+# The Tw timer of this peer.
+# It is the delay before a watchdog message is sent, as described in RFC 3539.
+# The value is expressed in seconds. The default value is 30 seconds. Value must
+# be greater or equal to 6 seconds. See details in the RFC.
+# Default: 30
+#TwTimer = 30;
+
+##############################################################
+## Applications configuration
+
+# Disable the relaying of Diameter messages?
+# For messages not handled locally, the default behavior is to forward the
+# message to another peer if any is available, according to the routing
+# algorithms. In addition the "0xffffff" application is advertised in CER/CEA
+# exchanges.
+# Default: Relaying is enabled.
+#NoRelay;
+NoRelay;
+
+# Number of server threads that can handle incoming messages at the same time.
+# Default: 4
+#AppServThreads = 4;
+
+# Other applications are configured by loaded extensions.
+
+##############################################################
+## Extensions configuration
+
+# The freeDiameter framework merely provides support for
+# Diameter Base Protocol. The specific application behaviors,
+# as well as advanced functions, are provided
+# by loadable extensions (plug-ins).
+# These extensions may in addition receive the name of a
+# configuration file, the format of which is extension-specific.
+#
+# Format:
+#LoadExtension = "/path/to/extension" [ : "/optional/configuration/file" ] ;
+#
+# Examples:
+#LoadExtension = "extensions/sample.fdx";
+#LoadExtension = "extensions/sample.fdx":"conf/sample.conf";
+
+# Extensions are named as follow:
+# dict_* for extensions that add content to the dictionary definitions.
+# dbg_* for extensions useful only to retrieve more information on the framework execution.
+# acl_* : Access control list, to control which peers are allowed to connect.
+# rt_* : routing extensions that impact how messages are forwarded to other peers.
+# app_* : applications, these extensions usually register callbacks to handle specific messages.
+# test_* : dummy extensions that are useful only in testing environments.
+
+
+# The dbg_msg_dump.fdx extension allows you to tweak the way freeDiameter displays some
+# information about some events. This extension does not actually use a configuration file
+# but receives directly a parameter in the string passed to the extension. Here are some examples:
+## LoadExtension = "dbg_msg_dumps.fdx" : "0x1111"; # Removes all default hooks, very quiet even in case of errors.
+## LoadExtension = "dbg_msg_dumps.fdx" : "0x2222"; # Display all events with few details.
+## LoadExtension = "dbg_msg_dumps.fdx" : "0x0080"; # Dump complete information about sent and received messages.
+# The four digits respectively control: connections, routing decisions, sent/received messages, errors.
+# The values for each digit are:
+# 0 - default - keep the default behavior
+# 1 - quiet - remove any specific log
+# 2 - compact - display only a summary of the information
+# 4 - full - display the complete information on a single long line
+# 8 - tree - display the complete information in an easier to read format spanning several lines.
+
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dbg_msg_dumps.fdx" : "0x8888";
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dict_rfc5777.fdx";
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dict_mip6i.fdx";
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dict_nasreq.fdx";
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dict_nas_mipv6.fdx";
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dict_dcca.fdx";
+LoadExtension = "/usr/lib/x86_64-linux-gnu/freeDiameter/dict_dcca_3gpp.fdx";
+
+
+##############################################################
+## Peers configuration
+
+# The local server listens for incoming connections. By default,
+# all unknown connecting peers are rejected. Extensions can override this behavior (e.g., acl_wl).
+#
+# In addition to incoming connections, the local peer can
+# be configured to establish and maintain connections to some
+# Diameter nodes and allow connections from these nodes.
+# This is achieved with the ConnectPeer directive described below.
+#
+# Note that the configured Diameter Identity MUST match
+# the information received inside CEA, or the connection will be aborted.
+#
+# Format:
+#ConnectPeer = "diameterid" [ { parameter1; parameter2; ...} ] ;
+# Parameters that can be specified in the peer's parameter list:
+# No_TCP; No_SCTP; No_IP; No_IPv6; Prefer_TCP; TLS_old_method;
+# No_TLS; # assume transparent security instead of TLS. DTLS is not supported yet (will change in future versions).
+# Port = 5868; # The port to connect to
+# TcTimer = 30;
+# TwTimer = 30;
+# ConnectTo = "202.249.37.5";
+# ConnectTo = "2001:200:903:2::202:1";
+# TLS_Prio = "NORMAL";
+# Realm = "realm.net"; # Reject the peer if it does not advertise this realm.
+# Examples:
+#ConnectPeer = "aaa.wide.ad.jp";
+#ConnectPeer = "old.diameter.serv" { TcTimer = 60; TLS_old_method; No_SCTP; Port=3868; } ;
+ConnectPeer = "pcrf.localdomain" { ConnectTo = "172.18.3.202"; Port = 3868; No_TLS; TcTimer = 2; };
+ConnectPeer = "ocs.localdomain" { ConnectTo = "172.18.3.202"; Port = 3869; No_TLS; TcTimer = 2; };
+
+
+##############################################################
diff --git a/ttcn3-mme-test-ogs/ogs/mme.sh b/ttcn3-mme-test-ogs/ogs/mme.sh
new file mode 100755
index 0000000..8b1d077
--- /dev/null
+++ b/ttcn3-mme-test-ogs/ogs/mme.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+set -e
+set -x
+/data/mmed-setup.sh
+mmed_bin="$(command -v open5gs-mmed)"
+# so_bindtodevice cfg requires CAP_NET_RAW:
+setcap cap_net_raw+ep "$mmed_bin"
+su - osmocom -c "$mmed_bin $*"
diff --git a/ttcn3-mme-test-ogs/ogs/open5gs-mme.yaml b/ttcn3-mme-test-ogs/ogs/open5gs-mme.yaml
new file mode 100644
index 0000000..9aa0e02
--- /dev/null
+++ b/ttcn3-mme-test-ogs/ogs/open5gs-mme.yaml
@@ -0,0 +1,536 @@
+#
+# o Set OGS_LOG_INFO to all domain level
+# - If `level` is omitted, the default level is OGS_LOG_INFO)
+# - If `domain` is omitted, the all domain level is set from 'level'
+# (Default values are used, so no configuration is required)
+#
+# o Set OGS_LOG_ERROR to all domain level
+# - `level` can be set with none, fatal, error, warn, info, debug, trace
+# logger:
+# level: error
+#
+# o Set OGS_LOG_DEBUG to mme/emm domain level
+# logger:
+# level: debug
+# domain: mme,emm
+#
+# o Set OGS_LOG_TRACE to all domain level
+# logger:
+# level: trace
+# domain: core,sbi,ausf,event,tlv,mem,sock
+#
+logger:
+ level: info
+
+#
+# <S1AP Server>>
+#
+# o S1AP Server(all address available)
+# mme:
+# s1ap:
+#
+# o S1AP Server(0.0.0.0:36412)
+# mme:
+# s1ap:
+# addr: 0.0.0.0
+#
+# o S1AP Server(127.0.0.2:36412, [::1]:36412)
+# mme:
+# s1ap:
+# - addr: 127.0.0.2
+# - addr: ::1
+#
+# o S1AP Server(different port)
+# mme:
+# s1ap:
+# - addr: 127.0.0.2
+# port: 36413
+#
+# o S1AP Server(address available in `eth0` interface)
+# mme:
+# s1ap:
+# dev: eth0
+#
+# o S1AP Option (Default)
+# - sctp_nodelay : true
+# - so_linger.l_onoff : false
+#
+# mme:
+# s1ap:
+# addr: 127.0.0.2
+# option:
+# stcp_nodelay: false
+# so_linger:
+# l_onoff: true
+# l_linger: 10
+#
+# o S1AP SCTP Option (Default)
+# - spp_hbinterval : 5000 (5secs)
+# - spp_sackdelay : 200 (200ms)
+# - srto_initial : 3000 (3secs)
+# - srto_min : 1000 (1sec)
+# - srto_max : 5000 (5secs)
+# - sinit_num_ostreams : 30
+# - sinit_max_instreams : 65535
+# - sinit_max_attempts : 4
+# - sinit_max_init_timeo : 8000(8secs)
+#
+# mme:
+# s1ap:
+# addr: 127.0.0.2
+# option:
+# sctp:
+# spp_hbinterval : 5000
+# spp_sackdelay : 200
+# srto_initial : 3000
+# srto_min : 1000
+# srto_max : 5000
+# sinit_num_ostreams : 30
+# sinit_max_instreams : 65535
+# sinit_max_attempts : 4
+# sinit_max_init_timeo : 8000
+#
+# <GTP-C Server>>
+#
+# o GTP-C Server(all address available)
+# mme:
+# gtpc:
+#
+# o GTP-C Server(127.0.0.2:2123, [::1]:2123)
+# mme:
+# gtpc:
+# - addr: 127.0.0.2
+# - addr: ::1
+#
+# <SGsAP>
+#
+# o Single MSC/VLR(127.0.0.2)
+# mme:
+# sgsap:
+# addr: 127.0.0.2
+# map:
+# tai:
+# plmn_id:
+# mcc: 001
+# mnc: 01
+# tac: 4130
+# lai:
+# plmn_id:
+# mcc: 001
+# mnc: 01
+# lac: 43690
+# map:
+# tai:
+# plmn_id:
+# mcc: 002
+# mnc: 02
+# tac: 4132
+# lai:
+# plmn_id:
+# mcc: 002
+# mnc: 02
+# lac: 43692
+#
+# o Multiple MSC/VLR
+# mme:
+# sgsap:
+# - addr: 127.0.0.2
+# port: 29119
+# map:
+# tai:
+# plmn_id:
+# mcc: 001
+# mnc: 01
+# tac: 4131
+# lai:
+# plmn_id:
+# mcc: 001
+# mnc: 01
+# lac: 43691
+# map:
+# tai:
+# plmn_id:
+# mcc: 002
+# mnc: 02
+# tac: 4132
+# lai:
+# plmn_id:
+# mcc: 002
+# mnc: 02
+# lac: 43692
+# - addr
+# - 127.0.0.4
+# - fd69:f21d:873c:fa::2
+# map:
+# tai:
+# plmn_id:
+# mcc: 001
+# mnc: 01
+# tac: 4132
+# lai:
+# plmn_id:
+# mcc: 002
+# mnc: 02
+# lac: 43692
+# - name: msc.open5gs.org
+# map:
+# tai:
+# plmn_id:
+# mcc: 001
+# mnc: 01
+# tac: 4133
+# lai:
+# plmn_id:
+# mcc: 002
+# mnc: 02
+# lac: 43693
+#
+# <Metrics Server>
+#
+# o Metrics Server(http://<any address>:9090)
+# mme:
+# metrics:
+# - addr: 0.0.0.0
+# port: 9090
+#
+# <GUMMEI>
+#
+# o Multiple GUMMEI
+# mme:
+# gummei:
+# - plmn_id:
+# mcc: 001
+# mnc: 01
+# mme_gid: 2
+# mme_code: 1
+# - plmn_id:
+# - mcc: 002
+# mnc: 02
+# - mcc: 003
+# mnc: 03
+# mme_gid: [3, 4]
+# mme_code:
+# - 2
+# - 3
+#
+#
+# <TAI>
+#
+# o Multiple TAI
+#
+# When multiple TAIs are configured as shown below,
+# the Served TAI is determined by comparing UserLocationInformation
+# of UplinkNASTransport sent from eNB.
+#
+# For example, if the eNB sends TAC with 30 to the MME,
+# the fourth TAI (TAC: 20, 28, 29-32, 36-38, 40-42, 50, 60, 70, 70)
+# is determined as the Served TAI. The result is transmitted to the eNB
+# as a Tracking Area identity List in Registration Accept.
+#
+# mme:
+# tai:
+# - plmn_id:
+# mcc: 001
+# mnc: 01
+# tac: [1, 3, 5]
+# tai:
+# - plmn_id:
+# mcc: 002
+# mnc: 02
+# tac: [6-10, 15-18]
+# tai:
+# - plmn_id:
+# mcc: 003
+# mnc: 03
+# tac: 20
+# - plmn_id:
+# mcc: 004
+# mnc: 04
+# tac: 21
+# tai:
+# - plmn_id:
+# mcc: 005
+# mnc: 05
+# tac: [22, 28]
+# - plmn_id:
+# mcc: 006
+# mnc: 06
+# tac: [30-32, 34, 36-38, 40-42, 44, 46, 48]
+# - plmn_id:
+# mcc: 007
+# mnc: 07
+# tac: 50
+# - plmn_id:
+# mcc: 008
+# mnc: 08
+# tac: 60
+# - plmn_id:
+# mcc: 009
+# mnc: 09
+# tac: [70, 80]
+#
+#
+# <Access Control>
+#
+# If access_control is not specified, then all networks are allowed
+# If access_control is defined,
+# no other networks are allowed other than matching plmn_id.
+#
+# default_reject_cause may be used to overwrite the default error cause #11
+# for non matching plmn_id
+#
+# for matching plmn_id with reject_cause defined,
+# the MME rejects access with the reject_cause error cause
+#
+# for matching plmn_id without reject_cause defined,
+# the MME accepts the PLMN traffic
+#
+# o The example below only accepts 002/02 and 999/70 PLMNs.
+# 001/01 is rejected with cause 15,
+# and the rest of the PLMNs are rejected with default cause 13.
+#
+# mme:
+# access_control:
+# - default_reject_cause: 13
+# - plmn_id:
+# reject_cause: 15
+# mcc: 001
+# mnc: 01
+# - plmn_id:
+# mcc: 002
+# mnc: 02
+# - plmn_id:
+# mcc: 999
+# mnc: 70
+#
+#
+# <Network Name>
+# mme:
+# network_name:
+# full: Open5GS
+# short: Next
+#
+# <MME Name>
+# mme:
+# mme_name: open5gs-mme0
+#
+# <Relative Capacity> - Default(255)
+# mme:
+# relative_capacity: 100
+#
+mme:
+ freeDiameter: /data/freediameter.conf
+ s1ap:
+ - addr: 172.18.3.201
+ gtpc:
+ - addr: 172.18.3.201
+ metrics:
+ - addr: 172.18.3.201
+ port: 9090
+ gummei:
+ plmn_id:
+ mcc: 999
+ mnc: 70
+ mme_gid: 2
+ mme_code: 1
+ tai:
+ plmn_id:
+ mcc: 999
+ mnc: 70
+ tac: 1
+ security:
+ integrity_order : [ EIA2, EIA1, EIA0 ]
+ ciphering_order : [ EEA0, EEA1, EEA2 ]
+ network_name:
+ full: Open5GS
+ mme_name: open5gs-mme0
+
+#
+# <GTP-C Client>
+#
+# o Specify SGW addresses the GTP-C must connect to
+#
+# o One SGW is defined.
+# If prefer_ipv4 is not true, [fd69:f21d:873c:fa::2] is selected.
+# sgwc:
+# gtpc:
+# addr:
+# - 127.0.0.3
+# - fd69:f21d:873c:fa::2
+#
+# o Two SGW are defined. MME selects SGW with round-robin manner per UE
+# sgwc:
+# gtpc:
+# - addr: 127.0.0.3
+# - addr: fd69:f21d:873c:fa::2
+#
+# o Three SGW are defined. MME selects SGW with round-robin manner per UE
+# sgwc:
+# gtpc:
+# - addr
+# - 127.0.0.3
+# - fd69:f21d:873c:fa::2
+# - addr
+# - 127.0.0.22
+# - fd69:f21d:873c:fa::12
+# - name: sgw3.open5gs.org
+#
+# <SGW Selection Mode>
+#
+# o Round-Robin
+# sgwc:
+# gtpc:
+# addr: 127.0.0.3
+# addr: 127.0.2.2
+# addr: 127.0.4.2
+#
+# o SGW selection by eNodeB TAC
+# (either single TAC or multiple TACs, DECIMAL representation)
+#
+# sgwc:
+# gtpc:
+# - addr: 127.0.0.3
+# tac: 26000
+# - addr: 127.0.2.2
+# tac: [25000, 27000, 28000]
+#
+# o SGW selection by e_cell_id(28bit)
+# (either single or multiple e_cell_id, HEX representation)
+#
+# sgwc:
+# gtpc:
+# - addr: 127.0.0.3
+# e_cell_id: abcde01
+# - addr: 127.0.2.2
+# e_cell_id: [12345, a9413, 98765]
+#
+sgwc:
+ gtpc:
+ - addr: 172.18.3.202
+
+#
+# smf:
+#
+# <GTP-C Client>
+#
+# o By default, the SMF uses the first SMF node.
+# - To use a different APN for each SMF, specify gtpc.apn as the APN name.
+# - If the HSS uses WebUI to set the SMF IP for each UE,
+# you can use a specific SMF node for each UE.
+# (Default values are used, so no configuration is required)
+#
+# o Two SMF are defined. 127.0.0.4:2123 is used.
+# [fd69:f21d:873c:fa::3]:2123 is ignored.
+# smf:
+# gtpc:
+# - addr: 127.0.0.4
+# - addr: fd69:f21d:873c:fa::3
+#
+# o One SMF is defined. if prefer_ipv4 is not true,
+# [fd69:f21d:873c:fa::3] is selected.
+# smf:
+# gtpc:
+# - addr:
+# - 127.0.0.4
+# - fd69:f21d:873c:fa::3
+#
+# o Two SMF are defined with a different APN.
+# - Note that if SMF IP for UE is configured in HSS,
+# the following configurion for this UE is ignored.
+# smf:
+# gtpc:
+# - addr: 127.0.0.4
+# apn: internet
+# - addr: 127.0.0.5
+# apn: volte
+#
+# o If APN is omitted, the default APN uses the first SMF node.
+# smf:
+# gtpc:
+# - addr: 127.0.0.4
+# - addr: 127.0.0.5
+# apn: volte
+#
+# o SMF selection by eNodeB TAC
+# (either single TAC or multiple TACs, DECIMAL representation)
+#
+# gtpc:
+# - addr: 127.0.0.4
+# tac: 26000
+# - addr: 127.0.2.4
+# tac: [25000, 27000, 28000]
+#
+# o SMF selection by e_cell_id(28bit)
+# (either single or multiple e_cell_id, HEX representation)
+#
+# gtpc:
+# - addr: 127.0.0.4
+# e_cell_id: abcde01
+# - addr: 127.0.2.4
+# e_cell_id: [12345, a9413, 98765]
+smf:
+ gtpc:
+ - addr:
+ - 172.18.3.201
+ - ::1
+
+#
+# o Disable use of IPv4 addresses (only IPv6)
+# parameter:
+# no_ipv4: true
+#
+# o Disable use of IPv6 addresses (only IPv4)
+# parameter:
+# no_ipv6: true
+#
+# o Prefer IPv4 instead of IPv6 for estabishing new GTP connections.
+# parameter:
+# prefer_ipv4: true
+#
+parameter:
+
+#
+# o Maximum Number of UE
+# max:
+# ue: 1024
+#
+# o Maximum Number of Peer(S1AP/NGAP, DIAMETER, GTP, PFCP or SBI)
+# max:
+# peer: 64
+#
+max:
+
+#
+# usrsctp:
+# udp_port : 9899
+#
+usrsctp:
+
+#
+# o Message Wait Duration (Default : 10,000 ms = 10 seconds)
+# (Default values are used, so no configuration is required)
+#
+# o Message Wait Duration (3000 ms)
+# time:
+# message:
+# duration: 3000
+#
+# o Handover Wait Duration (Default : 300 ms)
+# Time to wait for MME to send UEContextReleaseCommand
+# to the source eNB after receiving HandoverNotify
+# (Default values are used, so no configuration is required)
+#
+# o Handover Wait Duration (500ms)
+# time:
+# handover:
+# duration: 500
+#
+# o Timers of EPS mobility/session management
+# time:
+# t3402:
+# value: 720 # 12 minutes * 60 = 720 seconds
+# t3412:
+# value: 3240 # 54 minutes * 60 = 3240 seconds
+# t3423:
+# value: 720 # 12 minutes * 60 = 720 seconds
+time:
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/33571
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: Ic1ce1dace47353b0dcf321c923a78567e3ddefb9
Gerrit-Change-Number: 33571
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: fixeria.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hlr/+/33528 )
Change subject: USSD: fix handling of ussd-DataCodingScheme != 0x0f
......................................................................
Patch Set 2: Code-Review+1
(2 comments)
File src/hlr_ussd.c:
https://gerrit.osmocom.org/c/osmo-hlr/+/33528/comment/383df59c_82e476c0
PS2, Line 146: /* do not abort, attempt to decode as if it was '1111'B */
I guess here we should rather fail?
Allowing lang != 0xf comes from me, during testing, failing to issue the proper modem AT command to initiate a USSD request.
I thought that this command is sufficient:
AT+CUSD=1,"*0#"
But I should also pass the 'dcs' parameter as 15 (==0xf) like this:
AT+CUSD=1,"*0#",15
That's how this special case came into existence. Should we really allow it?
https://gerrit.osmocom.org/c/osmo-hlr/+/33528/comment/a5db6934_af6d1255
PS2, Line 150: req->ussd_data, (req->ussd_data_len * 8) / 7);
Could you help me understand plz:
this gsm_7bit_decode_n_ussd() seems to be the main fix, is that accurate?
There was no proper USSD decoding before this patch?
How could USSD work at all before this?
--
To view, visit https://gerrit.osmocom.org/c/osmo-hlr/+/33528
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hlr
Gerrit-Branch: master
Gerrit-Change-Id: Ib7bac660b1a7942adcfbe7b14f162c95061a25db
Gerrit-Change-Number: 33528
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 04 Jul 2023 21:15:47 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/33569 )
Change subject: pySim-shell: Support USIM specific methods/commands on unknown UICC
......................................................................
pySim-shell: Support USIM specific methods/commands on unknown UICC
So far, if no known programmable card (like sysmoISIM) has been found,
we were using the SimCard base class. However, once we detect an UICC,
we should have switched to the UsimCard class, as otherwise the various
methods called by USIM/ISIM specific commands don't exist and we get
weird 'SimCard' object has no attribute 'update_ust' execptions.
The entire auto-detection and the legacy SimCard / UsimCard classes
are showing the legacy of the code base and should probably be
re-architected. However, let's fix the apparent bug for now.
Change-Id: I5a863198084250458693f060ca10b268a58550a1
Closes: OS#6055
---
M pySim-shell.py
1 file changed, 27 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/69/33569/1
diff --git a/pySim-shell.py b/pySim-shell.py
index e5cc0c3..3161844 100755
--- a/pySim-shell.py
+++ b/pySim-shell.py
@@ -49,7 +49,7 @@
from pySim.exceptions import *
from pySim.commands import SimCardCommands
from pySim.transport import init_reader, ApduTracer, argparse_add_reader_args, ProactiveHandler
-from pySim.cards import card_detect, SimCard
+from pySim.cards import card_detect, SimCard, UsimCard
from pySim.utils import h2b, b2h, i2h, swap_nibbles, rpad, JsonEncoder, bertlv_parse_one, sw_match
from pySim.utils import sanitize_pin_adm, tabulate_str_list, boxed_heading_str, Hexstr
from pySim.card_handler import CardHandler, CardHandlerAuto
@@ -127,6 +127,12 @@
profile.add_application(CardApplicationHPSIM())
profile.add_application(CardApplicationARAM())
profile.add_application(CardApplicationISD())
+ # We have chosen SimCard() above, but we now know it actually is an UICC
+ # so it's safe to assume it supports USIM application (which we're adding above).
+ # IF we don't do this, we will have a SimCard but try USIM specific commands like
+ # the update_ust method (see https://osmocom.org/issues/6055)
+ if generic_card:
+ card = UsimCard(scc)
# Create runtime state with card profile
rs = RuntimeState(card, profile)
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/33569
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I5a863198084250458693f060ca10b268a58550a1
Gerrit-Change-Number: 33569
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newchange
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hlr/+/33528 )
Change subject: USSD: fix handling of ussd-DataCodingScheme != 0x0f
......................................................................
Set Ready For Review
--
To view, visit https://gerrit.osmocom.org/c/osmo-hlr/+/33528
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hlr
Gerrit-Branch: master
Gerrit-Change-Id: Ib7bac660b1a7942adcfbe7b14f162c95061a25db
Gerrit-Change-Number: 33528
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Tue, 04 Jul 2023 18:47:34 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-hlr/+/33567 )
Change subject: gsup_server: fix msgb memleak in osmo_gsup_server_read_cb()
......................................................................
gsup_server: fix msgb memleak in osmo_gsup_server_read_cb()
I noticed that inability to send IPA PONG in response to IPA PING
from osmo-{msc,sgsn} results in an "IPA Multiplex" chunk being leaked.
No matter what's returned from ipa_server_conn_ccm(), we need to free
the msgb containing the incoming IPA message.
Change-Id: I5c5acbffc2913f78db4894ae3633b5eca9c2e8d6
---
M src/gsup_server.c
1 file changed, 17 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hlr refs/changes/67/33567/1
diff --git a/src/gsup_server.c b/src/gsup_server.c
index 097a854..91110eb 100644
--- a/src/gsup_server.c
+++ b/src/gsup_server.c
@@ -179,11 +179,9 @@
if (hh->proto == IPAC_PROTO_IPACCESS) {
rc = ipa_server_conn_ccm(conn, msg);
- if (rc < 0) {
- /* conn is already invalid here! */
- return -1;
- }
msgb_free(msg);
+ if (rc < 0) /* conn is already invalid here! */
+ return -1;
return 0;
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-hlr/+/33567
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hlr
Gerrit-Branch: master
Gerrit-Change-Id: I5c5acbffc2913f78db4894ae3633b5eca9c2e8d6
Gerrit-Change-Number: 33567
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-hlr/+/33565 )
Change subject: ussd: fix GSUP memleaks in rx_proc_ss_{req,error}()
......................................................................
ussd: fix GSUP memleaks in rx_proc_ss_{req,error}()
Also take a chance to use a more suitable error cause value.
Change-Id: I22ba5ad470989b7e8ba8fe2be170eac4adcb48c5
---
M src/hlr_ussd.c
1 file changed, 16 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hlr refs/changes/65/33565/1
diff --git a/src/hlr_ussd.c b/src/hlr_ussd.c
index 35b74b6..8d5237f 100644
--- a/src/hlr_ussd.c
+++ b/src/hlr_ussd.c
@@ -631,7 +631,8 @@
if (!ss) {
LOGP(DSS, LOGL_ERROR, "%s/0x%08x: CONTINUE for unknown SS session\n",
gsup->imsi, gsup->session_id);
- osmo_gsup_req_respond_err(gsup_req, GMM_CAUSE_INV_MAND_INFO, "CONTINUE for unknown SS session");
+ osmo_gsup_req_respond_err(gsup_req, GMM_CAUSE_MSGT_INCOMP_P_STATE,
+ "CONTINUE for unknown SS session");
return;
}
@@ -652,6 +653,8 @@
if (!ss) {
LOGP(DSS, LOGL_ERROR, "%s/0x%08x: END for unknown SS session\n",
gsup->imsi, gsup->session_id);
+ osmo_gsup_req_respond_err(gsup_req, GMM_CAUSE_MSGT_INCOMP_P_STATE,
+ "END for unknown SS session");
return;
}
@@ -682,4 +685,5 @@
{
LOGP(DSS, LOGL_NOTICE, "%s/0x%08x: Process SS ERROR (%s)\n", req->gsup.imsi, req->gsup.session_id,
osmo_gsup_session_state_name(req->gsup.session_state));
+ osmo_gsup_req_free(req);
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-hlr/+/33565
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hlr
Gerrit-Branch: master
Gerrit-Change-Id: I22ba5ad470989b7e8ba8fe2be170eac4adcb48c5
Gerrit-Change-Number: 33565
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: jolly.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33511 )
Change subject: ASCI: Add call control for VGCS/VBS
......................................................................
Patch Set 10:
(5 comments)
Patchset:
PS10:
I had a quick look. I only have a few cosmetic hints yet.
File include/osmocom/msc/Makefile.am:
https://gerrit.osmocom.org/c/osmo-msc/+/33511/comment/8fd36414_f95c638e
PS10, Line 28: vgcs_fsm.h \
maybe rename this to "msc_vgcs" (not critical, but i see all the msc_ prefixes and msc_ho.h presumably has the FSM for handover)
File include/osmocom/msc/vgcs_fsm.h:
https://gerrit.osmocom.org/c/osmo-msc/+/33511/comment/69715b20_3dfd73fe
PS10, Line 210: void _gsm44068_bcc_gcc_trans_free(struct gsm_trans *trans);
why does this function begin with an underscore? To me this looks like a function that is not really public but needs to be called by a unittest, but I see you use this function in transaction.c
File src/libmsc/vgcs_fsm.c:
https://gerrit.osmocom.org/c/osmo-msc/+/33511/comment/141f40c0_335bdc3d
PS10, Line 559: { VGCS_GCC_EV_TIMEOUT, "Timeout due to inactiviy" },
It probably makes more sense to stringify the constant names using OSMO_VALUE_STRING(). The reason for this is that it is then easier to grep for an event name in the code when it appears in the log. Just look at the other FSMs (e.g. handover_fsm.c from osmo-bsc)
https://gerrit.osmocom.org/c/osmo-msc/+/33511/comment/66797acd_66cb0865
PS10, Line 951: #define connect_option false
maybe use capital letters, so that it is immediately clear, that this is a define constant?
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33511
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I9947403fde8212b66758104443c60aaacc8b1e7b
Gerrit-Change-Number: 33511
Gerrit-PatchSet: 10
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: dexter <pmaier(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Comment-Date: Tue, 04 Jul 2023 15:59:57 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment