[M] Change in libosmocore[master]: ecu: fix alignment of fr_ecu_state
Attention is currently required from: laforge, neels, pespin. Hello Jenkins Builder, laforge, neels, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email to look at the new patch set (#7). The following approvals got outdated and were removed: Code-Review-1 by pespin, Verified-1 by Jenkins Builder Change subject: ecu: fix alignment of fr_ecu_state .. ecu: fix alignment of fr_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this enclosing the public struct osmo_ecu_state into our private struct fr_ecu_state. Then we can use container_of to cast from osmo_ecu_state to fr_ecu_state and correct alignment is ensured as well. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M src/codec/ecu_fr.c 1 file changed, 37 insertions(+), 13 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/7 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 7 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. Hello Jenkins Builder, laforge, neels, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email to look at the new patch set (#6). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. ecu: force alignment of member data in struct osmo_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this enclosing the public struct osmo_ecu_state into our private struct fr_ecu_state. Then we can simply cast from osmo_ecu_state to fr_ecu_state and correct alignment is ensured as well. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M src/codec/ecu_fr.c 1 file changed, 36 insertions(+), 13 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/6 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 6 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email ) Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. Patch Set 6: (1 comment) File src/codec/ecu_fr.c: https://gerrit.osmocom.org/c/libosmocore/+/35212/comment/204ef9d4_51209530 PS5, Line 315: struct fr_ecu_state *fr = (struct fr_ecu_state *) st; > Here and in the function below is where you need container_of: […] Thanks. I have added this now as suggested, but I still do not understand where the advantage is. container_of gets st, which is of type osmo_ecu_state but when calling container_of we specify it as struct fr_ecu_state. And we request the container address of the member ecu_state, which is struct fr_ecu_state. I see that this works but I do not see any practical advantage. We still need to have the ecu_state member in struct fr_ecu_state. -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 6 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Comment-Date: Tue, 02 Jan 2024 11:27:33 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
[M] Change in pysim[master]: tlv: improve flatten_dict_lists for multiple keys
dexter has abandoned this change. ( https://gerrit.osmocom.org/c/pysim/+/35254?usp=email ) Change subject: tlv: improve flatten_dict_lists for multiple keys .. Abandoned There are problems with this (see last post from @laforge) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35254?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ie3b418ca3965b0221bbf5f85d7d0e0fbb39d9d87 Gerrit-Change-Number: 35254 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-MessageType: abandon
[S] Change in osmo-pcu[master]: Bump version: 1.3.1.13-8a4c → 1.4.0
Attention is currently required from: osmith. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35337?usp=email ) Change subject: Bump version: 1.3.1.13-8a4c → 1.4.0 .. Patch Set 1: Verified+1 Code-Review+2 (1 comment) Patchset: PS1: I have tested this with an ericsson BTS, everything seems to work fine. -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35337?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I5b4efbffc6cf056a1e6865d077da4c7870a7e375 Gerrit-Change-Number: 35337 Gerrit-PatchSet: 1 Gerrit-Owner: osmith Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-Attention: osmith Gerrit-Comment-Date: Thu, 14 Dec 2023 16:38:09 + Gerrit-HasComments: Yes Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmo-bsc[osmith/1.11.1]: Bump version: 1.11.0.3-240b2 → 1.11.1
Attention is currently required from: fixeria, osmith. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/35342?usp=email ) Change subject: Bump version: 1.11.0.3-240b2 → 1.11.1 .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/35342?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: osmith/1.11.1 Gerrit-Change-Id: Ifd79073966bd945ce8c330b5dd94f5406b887bc7 Gerrit-Change-Number: 35342 Gerrit-PatchSet: 1 Gerrit-Owner: osmith Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-Attention: osmith Gerrit-Attention: fixeria Gerrit-Comment-Date: Thu, 14 Dec 2023 16:37:25 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmo-bsc[osmith/1.11.1]: Bump version: 1.11.0.3-240b2 → 1.11.1
Attention is currently required from: fixeria, osmith. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/35342?usp=email ) Change subject: Bump version: 1.11.0.3-240b2 → 1.11.1 .. Patch Set 1: Verified+1 (1 comment) Patchset: PS1: > I cannot test this one because I don't have an RBS BTS. Maybe > @pmaier@sysmocom. […] I have tested it with the bumped versions of OsmoBSC and also OsmoPCU. Everything seems to work fine. -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/35342?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: osmith/1.11.1 Gerrit-Change-Id: Ifd79073966bd945ce8c330b5dd94f5406b887bc7 Gerrit-Change-Number: 35342 Gerrit-PatchSet: 1 Gerrit-Owner: osmith Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-Attention: osmith Gerrit-Attention: fixeria Gerrit-Comment-Date: Thu, 14 Dec 2023 16:37:03 + Gerrit-HasComments: Yes Gerrit-Has-Labels: Yes Comment-In-Reply-To: osmith Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in pysim[master]: decode security attributes compact field in FCP
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35363?usp=email ) Change subject: decode security attributes compact field in FCP .. decode security attributes compact field in FCP When we select files, we currently display the security attributes compact field as raw bytes only. Let's decode this field using construct so that it gets displayed in human readable form. Change-Id: Iaa1167349027222e69a561d20a4c595fba2fdd2b Related: OS#6211 --- M pySim/ts_102_221.py 1 file changed, 26 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/63/35363/1 diff --git a/pySim/ts_102_221.py b/pySim/ts_102_221.py index ac0dc84..56da542 100644 --- a/pySim/ts_102_221.py +++ b/pySim/ts_102_221.py @@ -175,7 +175,18 @@ # ETSI TS 102 221 11.1.1.4.7.1 class SecurityAttribCompact(BER_TLV_IE, tag=0x8c): -_construct = GreedyBytes +# see also ISO/IEC 7816-4, section 5.4.3.1, table 16, 17 and 20 +F = Struct('delete_self'/Flag, 'terminate'/Flag, 'activate'/Flag, 'deactivate'/Flag) +FCNT = Struct('create_df|write,append_record'/Flag, + 'create_ef|update,erase'/Flag, + 'delete_file|read,search'/Flag) +_construct = Struct('access_mode'/Select(BitStruct(Const(1, Bit), 'propritary'/BitsInteger(4), 'file_contents'/FCNT), + BitStruct(Const(0, Bit), 'file'/F, 'file_contents'/FCNT)), +'security_conditions'/Array(this._.total_len - 1, Select(BitStruct('no_condition'/Const(0x00,BitsInteger(8))), + BitStruct('never'/Const(0xff, BitsInteger(8))), + BitStruct('match_all'/Flag, 'secure_msg'/Flag, + 'ext_auth'/Flag, 'user_auth'/Flag, + 'SEID'/BitsInteger(4) # ETSI TS 102 221 11.1.1.4.7.2 class SecurityAttribExpanded(BER_TLV_IE, tag=0xab): -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35363?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Iaa1167349027222e69a561d20a4c595fba2fdd2b Gerrit-Change-Number: 35363 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email ) Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. Patch Set 5: (1 comment) File src/codec/ecu_fr.c: https://gerrit.osmocom.org/c/libosmocore/+/35212/comment/5c265b1f_519cd1ac PS4, Line 294: return (struct osmo_ecu_state*) fr; > while the cast is fine, the container_of would probably be safer and would > allow this struct to be a […] As it seems I am having difficulties to understand your idea. I do not understand how container_of/offsetof can be used to find a simpler/safer solution. I could think of using offsetof on data[] to get its offset and then use that offset to calculate the next aligned address to place the private struct there. It would be great if you could point me to an example. -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 5 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Comment-Date: Thu, 14 Dec 2023 09:02:59 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: dexter, laforge, neels, pespin. Hello Jenkins Builder, laforge, neels, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email to look at the new patch set (#5). The following approvals got outdated and were removed: Verified-1 by Jenkins Builder Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. ecu: force alignment of member data in struct osmo_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this enclosing the public struct osmo_ecu_state into our private struct fr_ecu_state. Then we can simply cast from osmo_ecu_state to fr_ecu_state and correct alignment is ensured as well. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M src/codec/ecu_fr.c 1 file changed, 30 insertions(+), 13 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/5 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 5 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. Hello Jenkins Builder, laforge, neels, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email to look at the new patch set (#4). Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. ecu: force alignment of member data in struct osmo_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this enclosing the public struct osmo_ecu_state into our private struct fr_ecu_state. Then we can simply cast from osmo_ecu_state to fr_ecu_state and correct alignment is ensured as well. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M src/codec/ecu_fr.c 1 file changed, 30 insertions(+), 13 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/4 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. Hello Jenkins Builder, laforge, neels, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email to look at the new patch set (#3). The following approvals got outdated and were removed: Code-Review-1 by pespin, Verified+1 by Jenkins Builder Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. ecu: force alignment of member data in struct osmo_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this enclosing the public struct osmo_ecu_state into our private struct fr_ecu_state. Then we can simply cast from osmo_ecu_state to fr_ecu_state and correct alignment is ensured as well. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M TODO-RELEASE M src/codec/ecu_fr.c 2 files changed, 31 insertions(+), 13 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/3 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email ) Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. Patch Set 3: (1 comment) Patchset: PS2: > I think your comments are still not refuting my feedback on the fact that > using the data[] array to […] I have tried it now and it seems to work fine. I think we do not have to use offsetof and container_of, we just have to cast. -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Comment-Date: Wed, 13 Dec 2023 13:47:33 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
[S] Change in pysim[master]: filesystem: use sort path when selecting an application
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35351?usp=email ) Change subject: filesystem: use sort path when selecting an application .. filesystem: use sort path when selecting an application The method build_select_path_to uses the internal file system tree model to find the path to a given file. This works the same for applications (ADF) as it works for normal files (EF/DF). However, an application can be selected anytime from any location in the filesystem tree. There is no need to select a specific path leading to that application first. This means that if there is an ADF somewhere in the resulting inter_path, we may clip everything before that ADF. Related: OS#5418 Change-Id: I838a99bb47afc73b4274baecb04fff31abf7b2e2 --- M pySim/filesystem.py 1 file changed, 29 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/51/35351/1 diff --git a/pySim/filesystem.py b/pySim/filesystem.py index d39162c..35863a8 100644 --- a/pySim/filesystem.py +++ b/pySim/filesystem.py @@ -136,6 +136,16 @@ return ret def build_select_path_to(self, target: 'CardFile') -> Optional[List['CardFile']]: + +# special-case handling for applications. Applications may be selected +# any time from any location. If there is an ADF somewhere in the path, +# we may clip everything before that ADF. +def clip_path(inter_path): +for i in reversed(range(0, len(inter_path))): +if isinstance(inter_path[i], CardADF): +return inter_path[i:] +return inter_path + """Build the relative sequence of files we need to traverse to get from us to 'target'.""" # special-case handling for selecting MF while we MF is selected if target == target.get_mf(): @@ -152,7 +162,7 @@ for te2 in target_fqpath[i+1:]: inter_path.append(te2) # we found our common ancestor -return inter_path[1:] +return clip_path(inter_path[1:]) return None def get_mf(self) -> Optional['CardMF']: -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35351?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I838a99bb47afc73b4274baecb04fff31abf7b2e2 Gerrit-Change-Number: 35351 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: filesystem: fix typo
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35352?usp=email ) Change subject: filesystem: fix typo .. filesystem: fix typo Change-Id: I721875d302ab69340d56b33102297b56c070465f --- M pySim/filesystem.py 1 file changed, 10 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/52/35352/1 diff --git a/pySim/filesystem.py b/pySim/filesystem.py index 35863a8..0e72921 100644 --- a/pySim/filesystem.py +++ b/pySim/filesystem.py @@ -147,7 +147,7 @@ return inter_path """Build the relative sequence of files we need to traverse to get from us to 'target'.""" -# special-case handling for selecting MF while we MF is selected +# special-case handling for selecting MF while the MF is selected if target == target.get_mf(): return [target] cur_fqpath = self.fully_qualified_path_fobj() -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35352?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I721875d302ab69340d56b33102297b56c070465f Gerrit-Change-Number: 35352 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
Attention is currently required from: fixeria, laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34932?usp=email ) Change subject: runtime: refactor file selection methods select and select_file .. Patch Set 4: This change is ready for review. -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 Gerrit-Change-Number: 34932 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 13 Dec 2023 11:48:22 + Gerrit-HasComments: No Gerrit-Has-Labels: No Gerrit-MessageType: comment
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
Attention is currently required from: fixeria, laforge. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email to look at the new patch set (#4). The following approvals got outdated and were removed: Code-Review+1 by laforge, Verified+1 by Jenkins Builder Change subject: runtime: refactor file selection methods select and select_file .. runtime: refactor file selection methods select and select_file The implementation of the methods select and select_file of class RuntimeLchan is a bit complex. We access the card directly in several places which makes it difficult to track the state changes. We should clean this up so that we call self.rs.card.select_adf_by_aid/ self.scc.select_file from a single place only. This means that the method select uses the method select_file. This results in a much cleaner implementation. We also should take care that the important states that we track (selected_file, selected_adf, etc.) are updated by a single private method. Since the update always must happen after a select _select_post is a good place to do this. Related: OS#5418 Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 --- M pySim/runtime.py 1 file changed, 72 insertions(+), 40 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/32/34932/4 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 Gerrit-Change-Number: 34932 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
Attention is currently required from: fixeria, laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34932?usp=email ) Change subject: runtime: refactor file selection methods select and select_file .. Patch Set 4: (2 comments) File pySim/runtime.py: https://gerrit.osmocom.org/c/pysim/+/34932/comment/0ca99f6a_1263e04f PS3, Line 357: failes > fails (without 'e') Done https://gerrit.osmocom.org/c/pysim/+/34932/comment/68ed37cd_7fea7177 PS3, Line 383: f = sels[name] > unused? you're doing `sels[name]` below... Done -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 Gerrit-Change-Number: 34932 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 13 Dec 2023 09:08:48 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in pysim[master]: runtime: explain how file probing works
dexter has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/35251?usp=email ) Change subject: runtime: explain how file probing works .. runtime: explain how file probing works We use a trick to probe a file (that does not exist in the local file model yet). Let's explain further how that works, in particular why we do not have to upate any state if probing fails. Change-Id: I2a8af73654251d105af8de1c17da53dfa10dc669 Related: OS#5418 --- M pySim/runtime.py 1 file changed, 20 insertions(+), 0 deletions(-) Approvals: fixeria: Looks good to me, approved Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve diff --git a/pySim/runtime.py b/pySim/runtime.py index 028bef1..1155433 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -256,6 +256,12 @@ "Cannot select unknown file by name %s, only hexadecimal 4 digit FID is allowed" % fid) try: +# We access the card through the select_file method of the scc object. +# If we succeed, we know that the file exists on the card and we may +# proceed with creating a new CardEF object in the local file model at +# run time. In case the file does not exist on the card, we just abort. +# The state on the card (selected file/application) wont't be changed, +# so we do not have to update any state in that case. (data, sw) = self.scc.select_file(fid) except SwMatchError as swm: k = self.interpret_sw(swm.sw_actual) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35251?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I2a8af73654251d105af8de1c17da53dfa10dc669 Gerrit-Change-Number: 35251 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-MessageType: merged
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email ) Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. Patch Set 2: (2 comments) Commit Message: https://gerrit.osmocom.org/c/libosmocore/+/35212/comment/c30385d6_7a242485 PS1, Line 15: thsi > this Done Patchset: PS1: > I'm not sure this is entirely fixing the issue. […] As far as I understand the line struct {} __attribute__ ((aligned)); will force data[0] into an aligned position, relative to the beginning of the address where struct osmo_ecu_state is stored. This will be an aligned address since the compiler has knowledge about what is stored, but it can not know what we store in the memory beginning from data[0]. However since data[0] is now at an aligned position this is not a problem anymore. To make it look less ugly we can also just define a an uint8_t *data pointer followed by an uint8_t _data[0] array. The pointer member will automatically be in an aligned position and so _data[0] will also be aligned. (see also @lafo...@gnumonks.org comments in the referenced ticket.) -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-CC: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Comment-Date: Mon, 11 Dec 2023 14:40:10 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Comment-In-Reply-To: pespin Gerrit-MessageType: comment
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
Attention is currently required from: laforge, neels, pespin. Hello Jenkins Builder, laforge, neels, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. ecu: force alignment of member data in struct osmo_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this by ensuring that data[0] lands at an aligned memory location. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M TODO-RELEASE M include/osmocom/codec/ecu.h M src/codec/ecu_fr.c 3 files changed, 29 insertions(+), 5 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/2 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-CC: pespin Gerrit-Attention: neels Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[M] Change in pysim[master]: tlv: improve flatten_dict_lists for multiple keys
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35254?usp=email ) Change subject: tlv: improve flatten_dict_lists for multiple keys .. tlv: improve flatten_dict_lists for multiple keys when we flatten a list of dicts into a single dict we must make sure that duplicate key names are not swallowed. This may happen when there is an array of objects that share the same identifier. When those are stored all following objects are stored at the same key so that only the content of the last one survives. One prominent example where this bug is triggered is the key_reference in pin_status_template_do. When the MF is selected, there should be 4 key_reference values, but only the last appears. Change I7f6d03bf323a153f3172853a3ef171cbec8aece7 fixes the problem, but now the problematic dicts are no longer flattned, which results in a strange looking output. When append an index to the key, we can still flatten the dicts and the output looks compact again. Related: OS#6211 Change-Id: Ie3b418ca3965b0221bbf5f85d7d0e0fbb39d9d87 --- M pySim/tlv.py 1 file changed, 46 insertions(+), 5 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/54/35254/1 diff --git a/pySim/tlv.py b/pySim/tlv.py index c85d92b..d3c75e2 100644 --- a/pySim/tlv.py +++ b/pySim/tlv.py @@ -435,17 +435,33 @@ return False return True -def are_elements_unique(lod): -set_of_keys = set([list(x.keys())[0] for x in lod]) -return len(lod) == len(set_of_keys) +def add_element_to_newdict(newdict:dict, key:str, element) -> str: +newkey = key +count = 1 +while 1: +# Test if the new key (which is equal to key at the beginning) is +# already in the newdict. If this is a case we append an index +# number and try again. +if newkey not in newdict and newkey + "_0" not in newdict: +# Rename the already existing zeroth element to element_0, so +# that we maintain a consistent element counting. +if key in newdict and newkey != key: +newdict[key + "_0"] = newdict.pop(key) +# Store new element under the new key and leave +newdict[newkey] = element +return + +# Compute the next key to try +newkey = key + "_" + str(count) +count = count + 1 if isinstance(inp, list): -if are_all_elements_dict(inp) and are_elements_unique(inp): +if are_all_elements_dict(inp): # flatten into one shared dict newdict = {} for e in inp: key = list(e.keys())[0] -newdict[key] = e[key] +add_element_to_newdict(newdict, key, e[key]) inp = newdict # process result as any native dict return {k:flatten_dict_lists(inp[k]) for k in inp.keys()} -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35254?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ie3b418ca3965b0221bbf5f85d7d0e0fbb39d9d87 Gerrit-Change-Number: 35254 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: runtime: explain why we may access the card object directly
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35249?usp=email ) Change subject: runtime: explain why we may access the card object directly .. runtime: explain why we may access the card object directly When we are in the constructor of RuntimeState, we may/must access the card object directly. Let's explain why, since it may not be immediately obvious. Change-Id: I01f74d5f021d46679d1c9fa83fb8753382b0f88f Related: OS#5418 --- M pySim/runtime.py 1 file changed, 20 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/49/35249/1 diff --git a/pySim/runtime.py b/pySim/runtime.py index 2447222..670babc 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -110,6 +110,12 @@ # probe for those applications for f in sorted(set(apps_profile) - set(apps_taken), key=str): try: +# we can not use the lchan provided methods select, or select_file +# since those method work on an already finished file model. At +# this point we are still in the initialization process, so it is +# no problem when we access the card object directly without caring +# about updating other states. For normal selects at runtime, the +# caller must use the lchan provided methods select or select_file! data, sw = self.card.select_adf_by_aid(f.aid) self.selected_adf = f if sw == "9000": -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35249?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I01f74d5f021d46679d1c9fa83fb8753382b0f88f Gerrit-Change-Number: 35249 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: runtime: do not use the _scc object of the card object to select MF
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35248?usp=email ) Change subject: runtime: do not use the _scc object of the card object to select MF .. runtime: do not use the _scc object of the card object to select MF The constructor of the RuntimeState object selects the MF befor it does some other steps. However it does this through the _scc object of the card object. This method is before we had lchan abstraction, so we should now use the lchan object like in all other places. Related: OS#5418 Change-Id: I9a751c0228c77077e3fabb50a9a68e4489e7151c --- M pySim/runtime.py 1 file changed, 16 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/48/35248/1 diff --git a/pySim/runtime.py b/pySim/runtime.py index 58df22d..2447222 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -64,7 +64,7 @@ self.mf.add_file(f) # go back to MF before the next steps (addon probing might have changed DF) -self.card._scc.select_file('3F00') +self.lchan[0].select('MF') # add application ADFs + MF-files from profile apps = self._match_applications() -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35248?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9a751c0228c77077e3fabb50a9a68e4489e7151c Gerrit-Change-Number: 35248 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: runtime: cosmetic: prnounce file reference data
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35250?usp=email ) Change subject: runtime: cosmetic: prnounce file reference data .. runtime: cosmetic: prnounce file reference data One of the most important properties of the RuntimeLchan are the selected_file/adf properties. Let's reformat the code so that those properties are more pronounced. Change-Id: I4aa028f66879b7d6c2a1cd102cda8d8ca5ff48b1 Related: OS#5418 --- M pySim/runtime.py 1 file changed, 17 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/50/35250/1 diff --git a/pySim/runtime.py b/pySim/runtime.py index 670babc..028bef1 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -170,11 +170,13 @@ def __init__(self, lchan_nr: int, rs: RuntimeState): self.lchan_nr = lchan_nr self.rs = rs +self.scc = self.rs.card._scc.fork_lchan(lchan_nr) + +# File reference data self.selected_file = self.rs.mf self.selected_adf = None self.selected_file_fcp = None self.selected_file_fcp_hex = None -self.scc = self.rs.card._scc.fork_lchan(lchan_nr) def add_lchan(self, lchan_nr: int) -> 'RuntimeLchan': """Add a new logical channel from the current logical channel. Just affects -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35250?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I4aa028f66879b7d6c2a1cd102cda8d8ca5ff48b1 Gerrit-Change-Number: 35250 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: runtime: explain how file probing works
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35251?usp=email ) Change subject: runtime: explain how file probing works .. runtime: explain how file probing works We use a trick to probe a file (that does not exist in the local file model yet). Let's explain further how that works, in particular why we do not have to upate any state if probing fails. Change-Id: I2a8af73654251d105af8de1c17da53dfa10dc669 Related: OS#5418 --- M pySim/runtime.py 1 file changed, 20 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/51/35251/1 diff --git a/pySim/runtime.py b/pySim/runtime.py index 028bef1..1155433 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -256,6 +256,12 @@ "Cannot select unknown file by name %s, only hexadecimal 4 digit FID is allowed" % fid) try: +# We access the card through the select_file method of the scc object. +# If we succeed, we know that the file exists on the card and we may +# proceed with creating a new CardEF object in the local file model at +# run time. In case the file does not exist on the card, we just abort. +# The state on the card (selected file/application) wont't be changed, +# so we do not have to update any state in that case. (data, sw) = self.scc.select_file(fid) except SwMatchError as swm: k = self.interpret_sw(swm.sw_actual) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35251?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I2a8af73654251d105af8de1c17da53dfa10dc669 Gerrit-Change-Number: 35251 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
Attention is currently required from: dexter, fixeria, laforge. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email to look at the new patch set (#3). The following approvals got outdated and were removed: Code-Review+1 by fixeria, Code-Review+1 by laforge, Verified+1 by Jenkins Builder Change subject: runtime: refactor file selection methods select and select_file .. runtime: refactor file selection methods select and select_file The implementation of the methods select and select_file of class RuntimeLchan is a bit complex. We access the card directly in several places which makes it difficult to track the state changes. We should clean this up so that we call self.rs.card.select_adf_by_aid/ self.scc.select_file from a single place only. This means that the method select uses the method select_file. This results in a much cleaner implementation. We also should take care that the important states that we track (selected_file, selected_adf, etc.) are updated by a single private method. Since the update always must happen after a select _select_post is a good place to do this. Related: OS#5418 Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 --- M pySim/runtime.py 1 file changed, 73 insertions(+), 40 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/32/34932/3 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 Gerrit-Change-Number: 34932 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in osmo-pcu[master]: gprs_rlcmac_sched: rewrite logic around idle block skip
dexter has abandoned this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email ) Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip .. Abandoned after a discussion we noticed that this patch goes in the wrong direction. -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 Gerrit-Change-Number: 35151 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-CC: jolly Gerrit-MessageType: abandon
[S] Change in osmo-pcu[master]: bts: rename struct member gen_idle_blocks to gen_idle_blocks_C0
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35224?usp=email ) Change subject: bts: rename struct member gen_idle_blocks to gen_idle_blocks_C0 .. bts: rename struct member gen_idle_blocks to gen_idle_blocks_C0 The struct member gen_idle_blocks controls whether the the PCU has to generate dummy blocks to fill idle periods or if this task is left to the BTS hardware. Since idle dummy blocks only have to be transmitted on the C0 carrier, we should rename the gen_idle_blocks struct member to gen_idle_blocks_C0. Related: OS#6198 Change-Id: If9511ed911f9c5d6d463881a387a9e7d11a15465 --- M src/bts.h M src/gprs_rlcmac_sched.cpp M src/pcu_l1_if.cpp 3 files changed, 22 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/24/35224/1 diff --git a/src/bts.h b/src/bts.h index 86c161b..380c47c 100644 --- a/src/bts.h +++ b/src/bts.h @@ -282,7 +282,7 @@ /* When the PDCH is idle, the timeslot is expected to transmit dummy blocks. Some BTS models will generate * those dummy blocks automatically when no data is transmitted. In contrast, other BTS models may require a * continuous stream of PDCH blocks that already has the gaps filled with dummy blocks. */ - bool gen_idle_blocks; + bool gen_idle_blocks_C0; }; struct paging_req_cs { diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp index 12b9e50..ac58121 100644 --- a/src/gprs_rlcmac_sched.cpp +++ b/src/gprs_rlcmac_sched.cpp @@ -488,7 +488,7 @@ + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); bool skip_idle = (num_tbfs == 0); - if (bts->gen_idle_blocks) + if (bts->gen_idle_blocks_C0) skip_idle = skip_idle && trx != 0; if (!skip_idle && (msg = sched_dummy())) { diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp index 07082d3..fb44bd8 100644 --- a/src/pcu_l1_if.cpp +++ b/src/pcu_l1_if.cpp @@ -552,7 +552,7 @@ + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); bool skip_idle = (num_tbfs == 0); - if (bts->gen_idle_blocks) + if (bts->gen_idle_blocks_C0) skip_idle = skip_idle && trx != 0; if (skip_idle) { @@ -966,7 +966,7 @@ LOGP(DL1IF, LOGL_INFO, "BTS model: %s\n", get_value_string(gsm_pcuif_bts_model_names, info_ind->bts_model)); bts->bts_model = info_ind->bts_model; - bts->gen_idle_blocks = decide_gen_idle_blocks(bts); + bts->gen_idle_blocks_C0 = decide_gen_idle_blocks(bts); bts->active = true; return rc; -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35224?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: If9511ed911f9c5d6d463881a387a9e7d11a15465 Gerrit-Change-Number: 35224 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: pySim-shell: don't get trapped in applications without file system
Attention is currently required from: fixeria, laforge, lynxis lazus. Hello Jenkins Builder, laforge, lynxis lazus, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/34884?usp=email to look at the new patch set (#5). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: pySim-shell: don't get trapped in applications without file system .. pySim-shell: don't get trapped in applications without file system When we traverse the file system, we may also end up selecting applications (ADF), which do not support an USIM/ISIM like file system. This will leave us without the ability to select the MF (or any other file) again. The only way out is to select the ISIM or USIM application again to get the access to the file system again. Change-Id: Ia2fdd65f430c07acb1afdaf265d24c6928b654e0 Related: OS#5418 --- M pySim-shell.py 1 file changed, 43 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/84/34884/5 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34884?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ia2fdd65f430c07acb1afdaf265d24c6928b654e0 Gerrit-Change-Number: 34884 Gerrit-PatchSet: 5 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: lynxis lazus Gerrit-CC: fixeria Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: lynxis lazus Gerrit-MessageType: newpatchset
[S] Change in pysim[master]: pySim-shell: don't get trapped in applications without file system
Attention is currently required from: fixeria, laforge, lynxis lazus. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34884?usp=email ) Change subject: pySim-shell: don't get trapped in applications without file system .. Patch Set 5: (2 comments) File pySim-shell.py: https://gerrit.osmocom.org/c/pysim/+/34884/comment/59d91d78_7a62dabf PS4, Line 66: from pySim.ts_31_102 import ADF_USIM : from pySi > you're importing but not using these? Those are from my previous approach, they are indeed not used anymore. https://gerrit.osmocom.org/c/pysim/+/34884/comment/89fd61a3_4ad90555 PS4, Line 605: parent = self._cmd.lchan.selected_file.get_selectables()[".."] > may be worth moving this into a separate function, to improve readability We can just use the .parent property of the file (I didn't see that at first). -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34884?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ia2fdd65f430c07acb1afdaf265d24c6928b654e0 Gerrit-Change-Number: 34884 Gerrit-PatchSet: 5 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: lynxis lazus Gerrit-CC: fixeria Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: lynxis lazus Gerrit-Comment-Date: Mon, 04 Dec 2023 12:27:21 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in libosmocore[master]: ecu: force alignment of member data in struct osmo_ecu_state
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email ) Change subject: ecu: force alignment of member data in struct osmo_ecu_state .. ecu: force alignment of member data in struct osmo_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, thsi poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this by ensuring that data[0] lands at an aligned memory location. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 --- M include/osmocom/codec/ecu.h 1 file changed, 22 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/12/35212/1 diff --git a/include/osmocom/codec/ecu.h b/include/osmocom/codec/ecu.h index 6492860..7750540 100644 --- a/include/osmocom/codec/ecu.h +++ b/include/osmocom/codec/ecu.h @@ -46,6 +46,7 @@ /* Codec independent ECU state */ struct osmo_ecu_state { enum osmo_ecu_codec codec; + struct {} __attribute__ ((aligned)); uint8_t data[0]; }; -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35212?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7 Gerrit-Change-Number: 35212 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch)
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35159?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch) .. Patch Set 1: (1 comment) Patchset: PS1: > Suggestion: maybe we could agree on always having the latest PCUIF version > configured in `osmo-ttcn3 […] That makes sense I think. Unfortunately we cannot just append the module parameter to the file, it has to go in the [MODULE_PARAMETERS] section. We may still have a placeholder like "#PCUIF_Types.mp_pcuif_version := XX" and replace it with sed. -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35159?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I1f94a0459e35d7b5632c81d7f7e2e60eb0d0229f Gerrit-Change-Number: 35159 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Thu, 30 Nov 2023 09:22:16 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Comment-In-Reply-To: pespin Comment-In-Reply-To: dexter Gerrit-MessageType: comment
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
dexter has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/35161?usp=email ) Change subject: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. pySim-shell: Do not use self.lchan.scc when sending raw APDUs. When sending raw APDUs, we access the scc (SimCardCommands) object via the scc member in the lchan object. Unfortunately self.lchan will not be populated when the rs (RuntimeState) object is missing. This is in particular the case when no profile could be detected for the card, which is a common situation when we boostrap an unprovisioned card. So let's access the scc object through the card object. This is also more logical since when we send raw APDUs we work below the level of logical channels. Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Related: OS#6278 --- M pySim-shell.py 1 file changed, 29 insertions(+), 4 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve fixeria: Looks good to me, approved diff --git a/pySim-shell.py b/pySim-shell.py index 4e08eb7..3d8bd86 100755 --- a/pySim-shell.py +++ b/pySim-shell.py @@ -237,10 +237,15 @@ @cmd2.with_argparser(apdu_cmd_parser) def do_apdu(self, opts): """Send a raw APDU to the card, and print SW + Response. -DANGEROUS: pySim-shell will not know any card state changes, and -not continue to work as expected if you e.g. select a different -file.""" -data, sw = self.lchan.scc._tp.send_apdu(opts.APDU) +CAUTION: this command bypasses the logical channel handling of pySim-shell and card state changes are not +tracked. Dpending on the raw APDU sent, pySim-shell may not continue to work as expected if you e.g. select +a different file.""" + +# When sending raw APDUs we access the scc object through _scc member of the card object. It should also be +# noted that the apdu command plays an exceptional role since it is the only card accessing command that +# can be executed without the presence of a runtime state (self.rs) object. However, this also means that +# self.lchan is also not present (see method equip). +data, sw = self.card._scc._tp.send_apdu(opts.APDU) if data: self.poutput("SW: %s, RESP: %s" % (sw, data)) else: -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-MessageType: merged
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
Attention is currently required from: fixeria, laforge. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email to look at the new patch set (#4). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. pySim-shell: Do not use self.lchan.scc when sending raw APDUs. When sending raw APDUs, we access the scc (SimCardCommands) object via the scc member in the lchan object. Unfortunately self.lchan will not be populated when the rs (RuntimeState) object is missing. This is in particular the case when no profile could be detected for the card, which is a common situation when we boostrap an unprovisioned card. So let's access the scc object through the card object. This is also more logical since when we send raw APDUs we work below the level of logical channels. Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Related: OS#6278 --- M pySim-shell.py 1 file changed, 29 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/61/35161/4 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch)
Attention is currently required from: fixeria, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35159?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch) .. Patch Set 1: (1 comment) Patchset: PS1: > In general I'd prefer having v12 (newest version) configured everywhere and > sed it to 10 or 11 on th […] Let's address this is in a follow up patch. This patch makes jenkins-sns.sh, equal to jenkins.sh. I think this is an improvement. We then might consider to set the version to something like "XX" in the configs and put a comment next to it that the version number is set in the jenkins(-sns).sh scripts. And then we explicitly set the version number for each variant (master, latest, 2323q3 etc.) -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35159?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I1f94a0459e35d7b5632c81d7f7e2e60eb0d0229f Gerrit-Change-Number: 35159 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-Attention: pespin Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 29 Nov 2023 14:12:25 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
Attention is currently required from: fixeria, laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/35161?usp=email ) Change subject: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. Patch Set 3: (1 comment) File pySim-shell.py: https://gerrit.osmocom.org/c/pysim/+/35161/comment/686947c7_1ee83c6b PS2, Line 244: When sending raw APDUs we access the scc object through _scc member of the card object. It should also be : # noted that the apdu command plays an exceptional role since it is the only card accessing command that : # can be executed without the presence of a runt > Sure, the note is more directed to the programmer so that we do not > excellently change it back. […] Done -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 29 Nov 2023 14:03:59 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Comment-In-Reply-To: dexter Gerrit-MessageType: comment
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
Attention is currently required from: fixeria, laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/35161?usp=email ) Change subject: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. Patch Set 3: (1 comment) File pySim-shell.py: https://gerrit.osmocom.org/c/pysim/+/35161/comment/1c07e118_8e9ca643 PS2, Line 244: When sending raw APDUs we access the scc object through _scc member of the card object. It should also be : # noted that the apdu command plays an exceptional role since it is the only card accessing command that : # can be executed without the presence of a runt > I think the improtant bit for the user is not how we access the scc object. > […] Sure, the note is more directed to the programmer so that we do not excellently change it back. I have now updated the docstring as well. -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 29 Nov 2023 14:03:32 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Gerrit-MessageType: comment
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
Attention is currently required from: fixeria, laforge. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/35161?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: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. pySim-shell: Do not use self.lchan.scc when sending raw APDUs. When sending raw APDUs, we access the scc (SimCardCommands) object via the scc member in the lchan object. Unfortunately self.lchan will not be populated when the rs (RuntimeState) object is missing. This is in particular the case when no profile could be detected for the card, which is a common situation when we boostrap an unprovisioned card. So let's access the scc object through the card object. This is also more logical since when we send raw APDUs we work below the level of logical channels. Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Related: OS#6278 --- M pySim-shell.py 1 file changed, 29 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/61/35161/3 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email to look at the new patch set (#2). Change subject: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. pySim-shell: Do not use self.lchan.scc when sending raw APDUs. When sending raw APDUs, we access the scc (SimCardCommands) object via the scc member in the lchan object. Unfortunately self.lchan will not be populated when the rs (RuntimeState) object is missing. This is in particular the case when no profile could be detected for the card, which is a common situation when we boostrap an unprovisioned card. So let's access the scc object through the card object. This is also more logical since when we send raw APDUs we work below the level of logical channels. Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Related: OS#6278 --- M pySim-shell.py 1 file changed, 26 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/61/35161/2 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-MessageType: newpatchset
[S] Change in pysim[master]: pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35161?usp=email ) Change subject: pySim-shell: Do not use self.lchan.scc when sending raw APDUs. .. pySim-shell: Do not use self.lchan.scc when sending raw APDUs. When sending raw APDUs, we access the scc (SimCardCommands) object via the scc member in the lchan object. Unfortunately self.lchan will not be populated when the rs (RuntimeState) object is missing. This is in particular the case when no profile could be detected for the card, which is a common situation when we boostrap an unprovisioned card. So let's access the scc object through the card object. This is also more logical since when we send raw APDUs we work below the level of logical channels. Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a --- M pySim-shell.py 1 file changed, 25 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/61/35161/1 diff --git a/pySim-shell.py b/pySim-shell.py index 4e08eb7..95192ce 100755 --- a/pySim-shell.py +++ b/pySim-shell.py @@ -240,7 +240,12 @@ DANGEROUS: pySim-shell will not know any card state changes, and not continue to work as expected if you e.g. select a different file.""" -data, sw = self.lchan.scc._tp.send_apdu(opts.APDU) + +# When sending raw APDUs we access the scc object through _scc member of the card object. It should also be +# noted that the apdu command plays an exceptional role since it is the only card accessing command that +# can be executed without the presence of a runtime state (self.rs) object. However, this also means that +# self.lchan is also not present (see method equip). +data, sw = self.card._scc._tp.send_apdu(opts.APDU) if data: self.poutput("SW: %s, RESP: %s" % (sw, data)) else: -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35161?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I6bbaebe7d7a2013f0ce558ca2da7d58f5e6d991a Gerrit-Change-Number: 35161 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in docker-playground[master]: Revert "ttcn3-pcu-test/sns: fix PCUIF version number"
dexter has submitted this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35158?usp=email ) Change subject: Revert "ttcn3-pcu-test/sns: fix PCUIF version number" .. Revert "ttcn3-pcu-test/sns: fix PCUIF version number" Unfortunately this patch only fixes ttcn3-pcu-test-sns but it breaks ttcn3-pcu-test-sns-latest, this means a different solution is needed. This reverts commit c9820d7b36eb3f75c32d193394da46aad9406cb2. Change-Id: I101d27ae8ed7449b199e49795a3561436c2532dd Related: OS#6275 --- M ttcn3-pcu-test/jenkins-sns.sh M ttcn3-pcu-test/sns/PCU_Tests.cfg 2 files changed, 17 insertions(+), 2 deletions(-) Approvals: dexter: Looks good to me, approved Jenkins Builder: Verified diff --git a/ttcn3-pcu-test/jenkins-sns.sh b/ttcn3-pcu-test/jenkins-sns.sh index d63229b..50027d3 100755 --- a/ttcn3-pcu-test/jenkins-sns.sh +++ b/ttcn3-pcu-test/jenkins-sns.sh @@ -11,7 +11,7 @@ set_pcuif_version() { if image_suffix_is_2023q1; then - sed -i 's/PCUIF_Types.mp_pcuif_version := 12/PCUIF_Types.mp_pcuif_version := 10/g' $1 + sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 10/g' $1 fi } diff --git a/ttcn3-pcu-test/sns/PCU_Tests.cfg b/ttcn3-pcu-test/sns/PCU_Tests.cfg index 2b11462..d62f52d 100644 --- a/ttcn3-pcu-test/sns/PCU_Tests.cfg +++ b/ttcn3-pcu-test/sns/PCU_Tests.cfg @@ -59,7 +59,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 12 +PCUIF_Types.mp_pcuif_version := 11 [MAIN_CONTROLLER] -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35158?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I101d27ae8ed7449b199e49795a3561436c2532dd Gerrit-Change-Number: 35158 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-MessageType: merged
[S] Change in docker-playground[master]: Revert "ttcn3-pcu-test/sns: fix PCUIF version number"
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35158?usp=email ) Change subject: Revert "ttcn3-pcu-test/sns: fix PCUIF version number" .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35158?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I101d27ae8ed7449b199e49795a3561436c2532dd Gerrit-Change-Number: 35158 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Comment-Date: Wed, 29 Nov 2023 10:03:27 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in docker-playground[master]: Revert "ttcn3-pcu-test/sns: fix PCUIF version number"
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/35158?usp=email ) Change subject: Revert "ttcn3-pcu-test/sns: fix PCUIF version number" .. Revert "ttcn3-pcu-test/sns: fix PCUIF version number" Unfortunately this patch only fixes ttcn3-pcu-test-sns but it breaks ttcn3-pcu-test-sns-latest, this means a different solution is needed. This reverts commit c9820d7b36eb3f75c32d193394da46aad9406cb2. Change-Id: I101d27ae8ed7449b199e49795a3561436c2532dd Related: OS#6275 --- M ttcn3-pcu-test/jenkins-sns.sh M ttcn3-pcu-test/sns/PCU_Tests.cfg 2 files changed, 17 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/58/35158/1 diff --git a/ttcn3-pcu-test/jenkins-sns.sh b/ttcn3-pcu-test/jenkins-sns.sh index d63229b..50027d3 100755 --- a/ttcn3-pcu-test/jenkins-sns.sh +++ b/ttcn3-pcu-test/jenkins-sns.sh @@ -11,7 +11,7 @@ set_pcuif_version() { if image_suffix_is_2023q1; then - sed -i 's/PCUIF_Types.mp_pcuif_version := 12/PCUIF_Types.mp_pcuif_version := 10/g' $1 + sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 10/g' $1 fi } diff --git a/ttcn3-pcu-test/sns/PCU_Tests.cfg b/ttcn3-pcu-test/sns/PCU_Tests.cfg index 2b11462..d62f52d 100644 --- a/ttcn3-pcu-test/sns/PCU_Tests.cfg +++ b/ttcn3-pcu-test/sns/PCU_Tests.cfg @@ -59,7 +59,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 12 +PCUIF_Types.mp_pcuif_version := 11 [MAIN_CONTROLLER] -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35158?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I101d27ae8ed7449b199e49795a3561436c2532dd Gerrit-Change-Number: 35158 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch)
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/35159?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch) .. ttcn3-pcu-test/sns: fix PCUIF version number (follow up patch) Unfortunately we had to revert [1] because it worked for current master but not for latest. The mistake here was to change the PCUIF version number in PCU_Tests.cfg to PCUIF v12. This is indeed the correct version for current master, but latest still uses v11. Also the change we made in jenkins-sns only affected 2023q1 builds, it does not affect latest. This is the reason why the previous patch broke latest. This follow up patch now copies the approach we already successfully use with the normal ttcn3-pcu-test / ttcn3-pcu-test-latest. (see also jenkins.sh) [1] I0b37f01f4c7bb829053231339e39ab734f4c8cbc Change-Id: I1f94a0459e35d7b5632c81d7f7e2e60eb0d0229f Related: OS#6275 --- M ttcn3-pcu-test/jenkins-sns.sh 1 file changed, 32 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/59/35159/1 diff --git a/ttcn3-pcu-test/jenkins-sns.sh b/ttcn3-pcu-test/jenkins-sns.sh index 50027d3..06f833e 100755 --- a/ttcn3-pcu-test/jenkins-sns.sh +++ b/ttcn3-pcu-test/jenkins-sns.sh @@ -13,6 +13,15 @@ if image_suffix_is_2023q1; then sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 10/g' $1 fi + + # This changes the PCUIF module parameter of the TTCN3 testsuite when the testsuite is + # executed for current master. For latest the PCUIF module parameter must stay at v.11 + # since in osmo-pcu-latest PCUIF v.12 is not yet supported. After the next release, PCUIF + # v.12 will be supported in osmo-pcu-latest as well and this function, including the + # PCUIF_Types.mp_pcuif_version setting in the configuration files can be removed. + if image_suffix_is_master; then + sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 12/g' $1 + fi } mkdir $VOL_BASE_DIR/pcu-tester -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35159?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I1f94a0459e35d7b5632c81d7f7e2e60eb0d0229f Gerrit-Change-Number: 35159 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number
dexter has submitted this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number .. ttcn3-pcu-test/sns: fix PCUIF version number The current master of OsmoPCU is now using PCUIF version number 12. However, the configuration file of the the SNS tests still sets it to 11. Related: OS#6275 Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc --- M ttcn3-pcu-test/jenkins-sns.sh M ttcn3-pcu-test/sns/PCU_Tests.cfg 2 files changed, 16 insertions(+), 2 deletions(-) Approvals: Jenkins Builder: Verified dexter: Looks good to me, approved pespin: Looks good to me, but someone else must approve diff --git a/ttcn3-pcu-test/jenkins-sns.sh b/ttcn3-pcu-test/jenkins-sns.sh index 50027d3..d63229b 100755 --- a/ttcn3-pcu-test/jenkins-sns.sh +++ b/ttcn3-pcu-test/jenkins-sns.sh @@ -11,7 +11,7 @@ set_pcuif_version() { if image_suffix_is_2023q1; then - sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 10/g' $1 + sed -i 's/PCUIF_Types.mp_pcuif_version := 12/PCUIF_Types.mp_pcuif_version := 10/g' $1 fi } diff --git a/ttcn3-pcu-test/sns/PCU_Tests.cfg b/ttcn3-pcu-test/sns/PCU_Tests.cfg index d62f52d..2b11462 100644 --- a/ttcn3-pcu-test/sns/PCU_Tests.cfg +++ b/ttcn3-pcu-test/sns/PCU_Tests.cfg @@ -59,7 +59,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 11 +PCUIF_Types.mp_pcuif_version := 12 [MAIN_CONTROLLER] -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc Gerrit-Change-Number: 35136 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-MessageType: merged
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number
Attention is currently required from: fixeria. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number .. Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc Gerrit-Change-Number: 35136 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 29 Nov 2023 09:17:28 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmo-pcu[master]: gprs_rlcmac_sched: rewrite logic around idle block skip
Attention is currently required from: fixeria, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email ) Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip .. Patch Set 2: (1 comment) File src/gprs_rlcmac_sched.cpp: https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/01ba615e_60329e37 PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing > IIRC osmo-bts-trx does something slightly different if it detects no block is > to be sent because no […] That makes more sense now, so when we can safely assume that nobody is listening, then we skip the idle blocks. The TRX then sends idle blocks for us which are reduced in power so that energy is saved. (Why not turning off the TRX completely? Nobody is listening anyway? Or is this forbidden by the spec?) When I get this right the skipping of idle blocks only refers to the periods where no TBF is allocated. When there is a TBF we still send dummy blocks from the PCU. -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 Gerrit-Change-Number: 35151 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-Attention: pespin Gerrit-Attention: fixeria Gerrit-Comment-Date: Tue, 28 Nov 2023 15:33:43 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Comment-In-Reply-To: dexter Gerrit-MessageType: comment
[S] Change in osmo-pcu[master]: gprs_rlcmac_sched: rewrite logic around idle block skip
Attention is currently required from: fixeria, pespin. Hello Jenkins Builder, fixeria, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip .. gprs_rlcmac_sched: rewrite logic around idle block skip The logic that decides whether to generate idle / dummy blocks directly at the PCU or leave the work to the TRX implementation of that specific BTS has a confusing appeareance. (This is a follow up patch to change I7a08d8cc670fa14f7206dbc22351f3668a17) Related: OS#6191 Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 --- M src/gprs_rlcmac_sched.cpp 1 file changed, 31 insertions(+), 5 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/51/35151/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 Gerrit-Change-Number: 35151 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-Attention: pespin Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[M] Change in osmo-pcu[master]: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email ) Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle .. Patch Set 2: (1 comment) File src/gprs_rlcmac_sched.cpp: https://gerrit.osmocom.org/c/osmo-pcu/+/35096/comment/15e16302_097cbebb PS2, Line 492: skip_idle = skip_idle && trx != 0; > I think now that we don't have the #ifdef, we can really simplify this to: > […] I have created a follow up patch now, so we can discuss there how we simplify this: https://gerrit.osmocom.org/c/osmo-pcu/+/35151 -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I7a08d8cc670fa14f7206dbc22351f3668a17 Gerrit-Change-Number: 35096 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-CC: pespin Gerrit-Comment-Date: Tue, 28 Nov 2023 14:44:21 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
[M] Change in osmo-pcu[master]: gprs_rlcmac_sched: rewrite logic around idle block skip
Attention is currently required from: pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email ) Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip .. Patch Set 1: (1 comment) File src/gprs_rlcmac_sched.cpp: https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/724b3af7_7e2b6a19 PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing I don't get why this is energy saving. The dummy block is sent in any case. A dummy block should consume as much energy as a block that has actual data in it. So all we do here is looking up if there are TBF. If there are none => msg = NULL => TRX will create and send a dummy frame by itself) -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 Gerrit-Change-Number: 35151 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: pespin Gerrit-CC: Jenkins Builder Gerrit-Attention: pespin Gerrit-Comment-Date: Tue, 28 Nov 2023 14:43:31 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Gerrit-MessageType: comment
[M] Change in osmo-pcu[master]: gprs_rlcmac_sched: rewrite logic around idle block skip
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email ) Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip .. gprs_rlcmac_sched: rewrite logic around idle block skip The logic that decides whether to generate idle / dummy blocks directly at the PCU or leave the work to the TRX implementation of that specific BTS has a confusing appeareance. (This is a follow up patch to change I7a08d8cc670fa14f7206dbc22351f3668a17) Related: OS#6191 Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 --- M src/gprs_rlcmac_sched.cpp 1 file changed, 36 insertions(+), 15 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/51/35151/1 diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp index 12b9e50..a56fcb3 100644 --- a/src/gprs_rlcmac_sched.cpp +++ b/src/gprs_rlcmac_sched.cpp @@ -474,22 +474,26 @@ } /* Prio 3: send dummy control message if need to poll or USF */ else { - /* If there's no TBF attached to this PDCH, we can submit an empty -* data_req since there's nothing to transmit nor to poll/USF. This -* way we help BTS energy saving (on TRX!=C0) by sending nothing -* instead of a dummy block. The early return is done here and -* not at the start of the function because the condition below -* (num_tbfs==0) may not be enough, because temporary dummy TBFs -* created to send Imm Ass Rej (see handle_tbf_reject()) don't -* have a TFI assigned and hence are not attached to the PDCH -* TS, so they don't show up in the count below. -*/ - const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) - + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); - bool skip_idle = (num_tbfs == 0); + bool skip_idle; - if (bts->gen_idle_blocks) - skip_idle = skip_idle && trx != 0; + if (bts->gen_idle_blocks) { + /* Always generate all idle blocks since the TRX of this BTS does +* not generate idle blocks by itself. */ + skip_idle = false; + } else {/* Only skip if no one is listening on this PDCH: +* If there's no TBF attached to this PDCH, we can submit an empty +* data_req since there's nothing to transmit nor to poll/USF. This +* way we help BTS energy saving (on TRX!=C0) by sending nothing +* instead of a dummy block. The early return is done here and +* not at the start of the function because the condition below +* (num_tbfs==0) may not be enough, because temporary dummy TBFs +* created to send Imm Ass Rej (see handle_tbf_reject()) don't +* have a TFI assigned and hence are not attached to the PDCH +* TS, so they don't show up in the count below. */ + const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) + + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); + skip_idle = (num_tbfs == 0); + } if (!skip_idle && (msg = sched_dummy())) { /* increase counter */ -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6 Gerrit-Change-Number: 35151 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in osmo-ttcn3-hacks[master]: PCU_Tests: tell PCU a more realistic BTS model
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35144?usp=email ) Change subject: PCU_Tests: tell PCU a more realistic BTS model .. PCU_Tests: tell PCU a more realistic BTS model In ts_PCUIF_INFO_default we set the bts_model member to PCU_IF_BTS_MODEL_UNSPEC. This means that the PCU will not know the BTS model and thus it is not able to comply to the specific pecularities of the BTS model that is used. In PCU_Tests.ttcn we simulate the behavior of an OsmoBTS with OsmoTRX, therefore we should set the BTS model to PCU_IF_BTS_MODEL_TRX. This will also fix the problems we have with unexpected DUMMY messages we currently receive since in an OsmoTRX based BTS model those frames will be generated by OsmoTRX and do not appear on the PCUIF interface. When the BTS model is left unspecified, then the PCU will generate those DUMMY messages and irretate the testsuite. Related: OS#6191 Change-Id: I6b516eece6acc96ebde9759bcb609197a245dd84 --- M pcu/PCU_Tests.ttcn 1 file changed, 24 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/44/35144/1 diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index fb935d9..442d617 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -112,7 +112,7 @@ remote_port := { mp_nsconfig.nsvc[0].provider.ip.local_udp_port, 0 }, remote_addr := f_PCUIF_RemoteAddr( f_PCUIF_AF2addr_type(mp_nsconfig.nsvc[0].provider.ip.address_family), mp_nsconfig.nsvc[0].provider.ip.local_ip), - bts_model := PCU_IF_BTS_MODEL_UNSPEC + bts_model := PCU_IF_BTS_MODEL_TRX } /* Passed in RAN-INFO message from emulated neighbor using RIM */ -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35144?usp=email 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: I6b516eece6acc96ebde9759bcb609197a245dd84 Gerrit-Change-Number: 35144 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number
Attention is currently required from: fixeria. Hello Jenkins Builder, fixeria, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: ttcn3-pcu-test/sns: fix PCUIF version number .. ttcn3-pcu-test/sns: fix PCUIF version number The current master of OsmoPCU is now using PCUIF version number 12. However, the configuration file of the the SNS tests still sets it to 11. Related: OS#6275 Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc --- M ttcn3-pcu-test/jenkins-sns.sh M ttcn3-pcu-test/sns/PCU_Tests.cfg 2 files changed, 16 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/36/35136/2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc Gerrit-Change-Number: 35136 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number
Attention is currently required from: fixeria. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number .. Patch Set 2: (1 comment) Patchset: PS1: > Just to be sure, doesn't this patch break the `-latest`? […] you probably mean jenkins-sns.sh. Yes I also thing that it needs upgrading as well. When we change the version number from 11 to 12 in PCU_Tests.cfg, then the SED commandline in jenkins-sns.sh needs to be updated as well. I have updated the patch now. In any case I can see no relation to ttcn3-pcu-test-latest here. -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc Gerrit-Change-Number: 35136 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Attention: fixeria Gerrit-Comment-Date: Tue, 28 Nov 2023 10:19:39 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in docker-playground[master]: ttcn3-pcu-test/sns: fix PCUIF version number
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email ) Change subject: ttcn3-pcu-test/sns: fix PCUIF version number .. ttcn3-pcu-test/sns: fix PCUIF version number The current master of OsmoPCU is now using PCUIF version number 12. However, the configuration file of the the SNS tests still sets it to 11. Related: OS#6275 Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc --- M ttcn3-pcu-test/sns/PCU_Tests.cfg 1 file changed, 15 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/36/35136/1 diff --git a/ttcn3-pcu-test/sns/PCU_Tests.cfg b/ttcn3-pcu-test/sns/PCU_Tests.cfg index d62f52d..2b11462 100644 --- a/ttcn3-pcu-test/sns/PCU_Tests.cfg +++ b/ttcn3-pcu-test/sns/PCU_Tests.cfg @@ -59,7 +59,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 11 +PCUIF_Types.mp_pcuif_version := 12 [MAIN_CONTROLLER] -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/35136?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I0b37f01f4c7bb829053231339e39ab734f4c8cbc Gerrit-Change-Number: 35136 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[M] Change in osmo-pcu[master]: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
Attention is currently required from: daniel, fixeria. Hello Jenkins Builder, daniel, fixeria, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Code-Review+1 by daniel, Code-Review+1 by fixeria, Verified-1 by Jenkins Builder Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle .. gprs_rlcmac_sched: fix condition for generating dummy blocks on idle When a PDCH is idle, then the gaps are filled with dummy blocks. OsmoPCU supports generating the dummy blocks locally, so that a continous stream of PDCH blocks is sent to L1. However, some BTS models (the OsmoTRX based models in particular) are able to generate the idle blocks locally. In this case the PCU should leave the genration of the dummy blocks to the BTS in order to save processing time and load on the PCUIF interface. In gprs_rlcmac_sched we already have a flag to skip idle frames in case we do not use the so called "direct phy access". A similar mechanism also exists in pcu_l1_if.cpp in function pcu_rx_rts_req_ptcch(). Unfortunately this check is not implemented correctly. The flag gets set when the ENABLE_DIRECT_PHY define constant is set. However, this does not say anything about whether the BTS model supports the generation of idle blocks or not. The define constant is intended to be used to disable direct phy related code in on platforms where no direct phy code is used or cannot be used. We must instead check the BTS model (bts->bts_model) in order to decide whether this particular BTS type requires the generation of dummy blocks or not. Related: OS#6191 Change-Id: I7a08d8cc670fa14f7206dbc22351f3668a17 --- M src/bts.h M src/gprs_rlcmac_sched.cpp M src/pcu_l1_if.cpp 3 files changed, 63 insertions(+), 9 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/96/35096/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I7a08d8cc670fa14f7206dbc22351f3668a17 Gerrit-Change-Number: 35096 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: fixeria Gerrit-CC: laforge Gerrit-Attention: fixeria Gerrit-Attention: daniel Gerrit-MessageType: newpatchset
[M] Change in osmo-pcu[master]: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
Attention is currently required from: daniel, fixeria. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email ) Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle .. Patch Set 2: (1 comment) File src/bts.h: https://gerrit.osmocom.org/c/osmo-pcu/+/35096/comment/3a6d1146_ed5d3e24 PS1, Line 282: idele > idle Done -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I7a08d8cc670fa14f7206dbc22351f3668a17 Gerrit-Change-Number: 35096 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: fixeria Gerrit-CC: laforge Gerrit-Attention: fixeria Gerrit-Attention: daniel Gerrit-Comment-Date: Fri, 24 Nov 2023 13:19:34 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in pysim[master]: pySim-shell: refuse to execute a startup script on initialization errors
Attention is currently required from: dexter. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/35102?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder The change is no longer submittable: Verified is unsatisfied now. Change subject: pySim-shell: refuse to execute a startup script on initialization errors .. pySim-shell: refuse to execute a startup script on initialization errors When there is an error on initialization (e.g. card not present), we should not continue to execute a startup script that was passed with the pySim-shell commandline. Instead we should print a message that the startup script was ignored due to errors. Related: OS#6271 Change-Id: I61329988e0e9021b5b0ef8e0819fb8e23cabf38b --- M pySim-shell.py 1 file changed, 18 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/02/35102/2 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35102?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I61329988e0e9021b5b0ef8e0819fb8e23cabf38b Gerrit-Change-Number: 35102 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in pysim[master]: app: do not catch exceptions in init_card
Attention is currently required from: fixeria, laforge. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/35101?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: app: do not catch exceptions in init_card .. app: do not catch exceptions in init_card The function init_card catches all exceptions and then returns None objects for card or rs in case of an error. This does not fit in the style we pursue in pySim. This is in particular true for library functions. We want those functions to raise exceptions when something is wrong, so that we can catch the exception at top level. Let's fix this for init_card now. Related: OS#6271 Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d --- M pySim/app.py 1 file changed, 22 insertions(+), 8 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/01/35101/2 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35101?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d Gerrit-Change-Number: 35101 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[S] Change in pysim[master]: app: do not catch exceptions in init_card
Attention is currently required from: fixeria, laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/35101?usp=email ) Change subject: app: do not catch exceptions in init_card .. Patch Set 2: (1 comment) File pySim/app.py: https://gerrit.osmocom.org/c/pysim/+/35101/comment/917ddcc2_73635f76 PS1, Line 69: raise ValueError > The question is whether this worked before at all? Did anyone ever try using > pysim-shell with a com […] This is indeed a good catch. Yes it worked and we are sometimes even use pySim on cards that are no SIM/UICC (yet). Think of cards that are not yet provisioned and do not have any files yet (not even an MF). In those cases we would work without a profile until the card is provisioned enough so that the profile is recognized (after the next equip command) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35101?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d Gerrit-Change-Number: 35101 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Comment-Date: Fri, 24 Nov 2023 11:47:10 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in pysim[master]: app: do not catch exceptions in init_card
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35101?usp=email ) Change subject: app: do not catch exceptions in init_card .. app: do not catch exceptions in init_card The function init_card catches all exceptions and then returns None objects for card or rs in case of an error. This does not fit in the style we pursue in pySim. This is in particular true for library functions. We want those functions to raise exceptions when something is wrong, so that we can catch the exception at top level. Let's fix this for init_card now. Related: OS#6271 Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d --- M pySim/app.py 1 file changed, 19 insertions(+), 10 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/01/35101/1 diff --git a/pySim/app.py b/pySim/app.py index 1711a1c..5a9f772 100644 --- a/pySim/app.py +++ b/pySim/app.py @@ -55,14 +55,7 @@ # Wait up to three seconds for a card in reader and try to detect # the card type. print("Waiting for card...") -try: -sl.wait_for_card(3) -except NoCardError: -print("No card detected!") -return None, None -except: -print("Card not readable!") -return None, None +sl.wait_for_card(3) generic_card = False card = card_detect(scc) @@ -73,8 +66,7 @@ profile = CardProfile.pick(scc) if profile is None: -print("Unsupported card type!") -return None, card +raise ValueError("Unsupported card type!") # ETSI TS 102 221, Table 9.3 specifies a default for the PIN key # references, however card manufactures may still decide to pick an -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35101?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d Gerrit-Change-Number: 35101 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: pySim-shell: refuse to execute a startup script on initialization errors
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/35102?usp=email ) Change subject: pySim-shell: refuse to execute a startup script on initialization errors .. pySim-shell: refuse to execute a startup script on initialization errors When there is an error on initialization (e.g. card not present), we should not continue to execute a startup script that was passed with the pySim-shell commandline. Instead we should print a message that the startup script was ignored due to errors. Related: OS#6271 Change-Id: I61329988e0e9021b5b0ef8e0819fb8e23cabf38b --- M pySim-shell.py 1 file changed, 18 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/02/35102/1 diff --git a/pySim-shell.py b/pySim-shell.py index 795276a..4e08eb7 100755 --- a/pySim-shell.py +++ b/pySim-shell.py @@ -979,7 +979,9 @@ " it should also be noted that some readers may behave strangely when no card") print(" is inserted.)") print("") -app = PysimApp(None, None, sl, ch, opts.script) +if opts.script: +print("will not execute startup script due to card initialization errors!") +app = PysimApp(None, None, sl, ch) # If the user supplies an ADM PIN at via commandline args authenticate # immediately so that the user does not have to use the shell commands -- To view, visit https://gerrit.osmocom.org/c/pysim/+/35102?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I61329988e0e9021b5b0ef8e0819fb8e23cabf38b Gerrit-Change-Number: 35102 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in osmo-ttcn3-hacks[master]: PCUIF_Types: make PCUIF_info_ind field bts_model optional
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35090?usp=email ) Change subject: PCUIF_Types: make PCUIF_info_ind field bts_model optional .. PCUIF_Types: make PCUIF_info_ind field bts_model optional The field bts_model has been introduced with PCUIF v12, which is now used in master. In latest we still use PCUIF v11, where the bts_model field is not present. This means that when we test against osmo-bts latest there will be an error parsing PCUIF_info_ind. A solution to this problem is to declare the bts_model field as an optional field until PCUIF v12 is also used in latest. Related: OS#6191 Change-Id: I45947f3bddaccafee82824ebb1b8494eabc67e7a --- M library/PCUIF_Types.ttcn 1 file changed, 24 insertions(+), 2 deletions(-) Approvals: laforge: Looks good to me, but someone else must approve osmith: Looks good to me, approved Jenkins Builder: Verified diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn index 12c704f..33b454f 100644 --- a/library/PCUIF_Types.ttcn +++ b/library/PCUIF_Types.ttcn @@ -212,7 +212,11 @@ record length(2) of uint16_tremote_port, PCUIF_RemoteAddrremote_addr, - PCUIF_bts_model bts_model + /* The bts_model field was introduced with PCUIF v12 as a new mandatory field. This also means that when we +* use the testsuite to test against latest builds (still uses PCUIF v11) this field is not included in +* the PCUIF_info_ind message. Since the testsuite does not check on this field we decided to declare the +* field as an optional field until PCUIF v12 is also used in the latest builds.*/ + PCUIF_bts_model bts_model optional } with { variant "" }; type enumerated PCUIF_AddrType { @@ -992,7 +996,8 @@ local_port := ?, remote_port := ?, remote_addr := ?, - bts_model := ? + /* See note in record PCUIF_info_ind */ + bts_model := * } } } -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35090?usp=email 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: I45947f3bddaccafee82824ebb1b8494eabc67e7a Gerrit-Change-Number: 35090 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: laforge Gerrit-Reviewer: osmith Gerrit-MessageType: merged
[M] Change in osmo-pcu[master]: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email ) Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle .. gprs_rlcmac_sched: fix condition for generating dummy blocks on idle When a PDCH is idle, then the gaps are filled with dummy blocks. OsmoPCU supports generating the dummy blocks locally, so that a continous stream of PDCH blocks is sent to L1. However, some BTS models (the OsmoTRX based models in particular) are able to generate the idle blocks locally. In this case the PCU should leave the genration of the dummy blocks to the BTS in order to save processing time and load on the PCUIF interface. In gprs_rlcmac_sched we already have a flag to skip idle frames in case we do not use the so called "direct phy access". A similar mechanism also exists in pcu_l1_if.cpp in function pcu_rx_rts_req_ptcch(). Unfortunately this check is not implemented correctly. The flag gets set when the ENABLE_DIRECT_PHY define constant is set. However, this does not say anything about whether the BTS model supports the generation of idle blocks or not. The define constant is intended to be used to disable direct phy related code in on platforms where no direct phy code is used or cannot be used. We must instead check the BTS model (bts->bts_model) in order to decide whether this particular BTS type requires the generation of dummy blocks or not. Related: OS#6191 Change-Id: I7a08d8cc670fa14f7206dbc22351f3668a17 --- M src/bts.h M src/gprs_rlcmac_sched.cpp M src/pcu_l1_if.cpp 3 files changed, 63 insertions(+), 9 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/96/35096/1 diff --git a/src/bts.h b/src/bts.h index 1d88cb5..6958881 100644 --- a/src/bts.h +++ b/src/bts.h @@ -278,6 +278,11 @@ /* BTS hardware model, see pcuif_proto.h */ uint8_t bts_model; + + /* When the PDCH is idele, the timeslot is expected to transmit dummy blocks. Some BTS models will generate +* those dummy blocks automatically when no data is transmitted. In contrast, other BTS models may require a +* continous stream of PDCH blocks that already has the gaps filled with dummy blocks. */ + bool gen_idle_blocks; }; struct paging_req_cs { diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp index 314fd58..12b9e50 100644 --- a/src/gprs_rlcmac_sched.cpp +++ b/src/gprs_rlcmac_sched.cpp @@ -487,11 +487,10 @@ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); bool skip_idle = (num_tbfs == 0); -#ifdef ENABLE_DIRECT_PHY - /* In DIRECT_PHY mode we want to always submit something to L1 in -* TRX0, since BTS is not preparing dummy bursts on idle TS for us */ - skip_idle = skip_idle && trx != 0; -#endif + + if (bts->gen_idle_blocks) + skip_idle = skip_idle && trx != 0; + if (!skip_idle && (msg = sched_dummy())) { /* increase counter */ gsmtap_cat = PCU_GSMTAP_C_DL_DUMMY; diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp index e391829..07082d3 100644 --- a/src/pcu_l1_if.cpp +++ b/src/pcu_l1_if.cpp @@ -551,11 +551,10 @@ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); bool skip_idle = (num_tbfs == 0); -#ifdef ENABLE_DIRECT_PHY - /* In DIRECT_PHY mode we want to always submit something to L1 in -* TRX0, since BTS is not preparing dummy bursts on idle TS for us: */ + + if (bts->gen_idle_blocks) skip_idle = skip_idle && trx != 0; -#endif + if (skip_idle) { pcu_l1if_tx_ptcch(bts, trx, ts, bts->trx[trx].arfcn, fn, block_nr, NULL, 0); @@ -735,6 +734,27 @@ { 0, NULL } }; +static bool decide_gen_idle_blocks(struct gprs_rlcmac_bts *bts) +{ + switch (bts->bts_model) { + case PCU_IF_BTS_MODEL_UNSPEC: + case PCU_IF_BTS_MODEL_LC15: + case PCU_IF_BTS_MODEL_OC2G: + case PCU_IF_BTS_MODEL_OCTPHY: + case PCU_IF_BTS_MODEL_SYSMO: + case PCU_IF_BTS_MODEL_RBS: + /* The BTS models above do not generate dummy blocks by themselves, so OsmoPCU must fill the idle gaps in the +* stream of generated PDCH blocks with dummy blocks. */ + return true; + case PCU_IF_BTS_MODEL_TRX: + /* The BTS models above generate dummy blocks by themselves, so OsmoBTS will only generate PDCH bloks that +* actually contain data. On idle, no blocks are generated. */ + return false; +
[S] Change in osmo-pcu[master]: gprs_rlcmac_sched: check if we really use direct phy
dexter has abandoned this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/34575?usp=email ) Change subject: gprs_rlcmac_sched: check if we really use direct phy .. Abandoned We have found a better solution to this -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/34575?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I0808950b1154bbb9a789c3f706ad9fb6618764ec Gerrit-Change-Number: 34575 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-CC: fixeria Gerrit-CC: laforge Gerrit-MessageType: abandon
[S] Change in osmo-ttcn3-hacks[master]: PCUIF_Types: make PCUIF_info_ind field bts_model optional
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35090?usp=email ) Change subject: PCUIF_Types: make PCUIF_info_ind field bts_model optional .. PCUIF_Types: make PCUIF_info_ind field bts_model optional The field bts_model has been introduced with PCUIF v12, which is now used in master. In latest we still use PCUIF v11, where the bts_model field is not present. This means that when we test against osmo-bts latest there will be an error parsing PCUIF_info_ind. A solution to this problem is to declare the bts_model field as an optional field until PCUIF v12 is also used in latest. Related: OS#6191 Change-Id: I45947f3bddaccafee82824ebb1b8494eabc67e7a --- M library/PCUIF_Types.ttcn 1 file changed, 24 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/90/35090/1 diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn index 12c704f..33b454f 100644 --- a/library/PCUIF_Types.ttcn +++ b/library/PCUIF_Types.ttcn @@ -212,7 +212,11 @@ record length(2) of uint16_tremote_port, PCUIF_RemoteAddrremote_addr, - PCUIF_bts_model bts_model + /* The bts_model field was introduced with PCUIF v12 as a new mandatory field. This also means that when we +* use the testsuite to test against latest builds (still uses PCUIF v11) this field is not included in +* the PCUIF_info_ind message. Since the testsuite does not check on this field we decided to declare the +* field as an optional field until PCUIF v12 is also used in the latest builds.*/ + PCUIF_bts_model bts_model optional } with { variant "" }; type enumerated PCUIF_AddrType { @@ -992,7 +996,8 @@ local_port := ?, remote_port := ?, remote_addr := ?, - bts_model := ? + /* See note in record PCUIF_info_ind */ + bts_model := * } } } -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35090?usp=email 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: I45947f3bddaccafee82824ebb1b8494eabc67e7a Gerrit-Change-Number: 35090 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email ) Change subject: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 We have added an additional bts_model field to the PCUIF_info_ind. This also means that we have to increment the PCUIF version number since adding fields is a major change to the protocol. This patch updates the related TTCN3 record and also increments the PCUIF version number. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests.ttcn M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 6 files changed, 39 insertions(+), 9 deletions(-) Approvals: osmith: Looks good to me, but someone else must approve Jenkins Builder: Verified dexter: Looks good to me, approved diff --git a/bts/BTS_Tests.default b/bts/BTS_Tests.default index 7c5230b..578aa36 100644 --- a/bts/BTS_Tests.default +++ b/bts/BTS_Tests.default @@ -29,7 +29,7 @@ [MODULE_PARAMETERS] Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoBTS"; -PCUIF_Types.mp_pcuif_version := 11; +PCUIF_Types.mp_pcuif_version := 12; # Configuration for each individual transceiver BTS_Tests.mp_trx_pars := { diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn index 8fb0be3..12c704f 100644 --- a/library/PCUIF_Types.ttcn +++ b/library/PCUIF_Types.ttcn @@ -17,11 +17,11 @@ modulepar { /* PCUIF version supported by the IUT */ - PCUIF_Version mp_pcuif_version := 11; + PCUIF_Version mp_pcuif_version := 12; }; const charstring PCU_SOCK_DEFAULT := "/tmp/pcu_bts"; -type integer PCUIF_Version (9..11); /* supported versions */ +type integer PCUIF_Version (9..12); /* supported versions */ type enumerated PCUIF_MsgType { PCU_IF_MSG_DATA_REQ ('00'O), @@ -78,6 +78,16 @@ BIT3spare2 } with { variant "" }; +type enumerated PCUIF_bts_model { + PCU_IF_BTS_MODEL_UNSPEC ('00'O), + PCU_IF_BTS_MODEL_LC15 ('01'O), + PCU_IF_BTS_MODEL_OC2G ('02'O), + PCU_IF_BTS_MODEL_OCTPHY ('03'O), + PCU_IF_BTS_MODEL_SYSMO ('04'O), + PCU_IF_BTS_MODEL_TRX('05'O), + PCU_IF_BTS_MODEL_RBS('06'O) +} with { variant "FIELDLENGTH(8)" }; + type enumerated PCUIF_TextType { PCU_VERSION (0), PCU_OML_ALERT (1) @@ -200,7 +210,9 @@ record length(2) of uint16_tnsvci, record length(2) of uint16_tlocal_port, record length(2) of uint16_tremote_port, - PCUIF_RemoteAddrremote_addr + PCUIF_RemoteAddrremote_addr, + + PCUIF_bts_model bts_model } with { variant "" }; type enumerated PCUIF_AddrType { @@ -979,7 +991,8 @@ nsvci := ?, local_port := ?, remote_port := ?, - remote_addr := ? + remote_addr := ?, + bts_model := ? } } } diff --git a/pcu/PCU_Tests.default b/pcu/PCU_Tests.default index 07d1ffc..c72720b 100644 --- a/pcu/PCU_Tests.default +++ b/pcu/PCU_Tests.default @@ -29,7 +29,7 @@ } }; Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoPCU"; -PCUIF_Types.mp_pcuif_version := 11; +PCUIF_Types.mp_pcuif_version := 12; [TESTPORT_PARAMETERS] *.PCU.socket_type := "SEQPACKET" diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index ffad7e6..fb935d9 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -111,7 +111,8 @@ local_port := { mp_nsconfig.nsvc[0].provider.ip.remote_udp_port, 0 }, remote_port := { mp_nsconfig.nsvc[0].provider.ip.local_udp_port, 0 }, remote_addr := f_PCUIF_RemoteAddr( - f_PCUIF_AF2addr_type(mp_nsconfig.nsvc[0].provider.ip.address_family), mp_nsconfig.nsvc[0].provider.ip.local_ip) + f_PCUIF_AF2addr_type(mp_nsconfig.nsvc[0].provider.ip.address_family), mp_nsconfig.nsvc[0].provider.ip.local_ip), + bts_model := PCU_IF_BTS_MODEL_UNSPEC } /* Passed in RAN-INFO message from emulated neighbor using RIM */ diff --git a/pcu/PCU_Tests_SNS.cfg b/pcu/PCU_Tests_SNS.cfg index c7c5771..bd0875b 100644 --- a/pcu/PCU_Tests_SNS.cfg +++ b/pcu/PCU_Tests_SNS.cfg @@ -54,7 +54,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 11 +PCUIF_Types.mp_pcuif_version := 12 [TESTPORT_PARAMETERS] diff --git a/pcu/PCU_Tests_SNSv6.cfg b/pcu/PCU_Tests_SNSv6.cfg index 02d04f3..3093c2c 100644 --- a/pcu/PCU_Tests_SNSv6.cfg +++ b/pcu/PCU_Tests_SNSv6.cfg @@ -26,7 +26,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 11 +PCUIF_Types.mp_pcuif_version := 12
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
Attention is currently required from: laforge, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email ) Change subject: PCUIF: upgrade to PCUIF v12 .. Patch Set 6: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 6 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-CC: laforge Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Comment-Date: Tue, 21 Nov 2023 09:17:50 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in docker-playground[master]: ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 fo...
dexter has submitted this change. ( https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email ) Change subject: ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 for latest .. ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 for latest At the moment we use PCUIF v11 in latest and in master. This will now change (see Depends) so that we will have to use v12 in master. This patch adds the necessary conditional config changes. Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Related: OS#6191 --- M ttcn3-bts-test/jenkins.sh M ttcn3-pcu-test/jenkins.sh 2 files changed, 38 insertions(+), 0 deletions(-) Approvals: Jenkins Builder: Verified dexter: Looks good to me, approved osmith: Looks good to me, but someone else must approve diff --git a/ttcn3-bts-test/jenkins.sh b/ttcn3-bts-test/jenkins.sh index ed1e095..08df03c 100755 --- a/ttcn3-bts-test/jenkins.sh +++ b/ttcn3-bts-test/jenkins.sh @@ -121,17 +121,31 @@ $REPO_USER/ttcn3-bts-test } +set_pcuif_version() { + # This changes the PCUIF module parameter of the TTCN3 testsuite when the testsuite is + # executed for current master. For latest the PCUIF module parameter must stay at v.11 + # since in osmo-bts-latest PCUIF v.12 is not yet supported. After the next release, PCUIF + # v.12 will be supported in osmo-bts-latest as well and this function, including the + # PCUIF_Types.mp_pcuif_version setting in the configuration files can be removed. + if image_suffix_is_master; then + sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 12/g' $1 + fi +} + network_create mkdir $VOL_BASE_DIR/bts-tester-generic cp generic/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-generic/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-generic/BTS_Tests.cfg" +set_pcuif_version "$VOL_BASE_DIR/bts-tester-generic/BTS_Tests.cfg" mkdir $VOL_BASE_DIR/bts-tester-virtphy cp virtphy/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-virtphy/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-virtphy/BTS_Tests.cfg" +set_pcuif_version "$VOL_BASE_DIR/bts-tester-virtphy/BTS_Tests.cfg" mkdir $VOL_BASE_DIR/bts-tester-oml cp oml/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-oml/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-oml/BTS_Tests.cfg" +set_pcuif_version "$VOL_BASE_DIR/bts-tester-oml/BTS_Tests.cfg" mkdir $VOL_BASE_DIR/bts-tester-hopping cp fh/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-hopping/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-hopping/BTS_Tests.cfg" diff --git a/ttcn3-pcu-test/jenkins.sh b/ttcn3-pcu-test/jenkins.sh index 0a1eb67..116f06c 100755 --- a/ttcn3-pcu-test/jenkins.sh +++ b/ttcn3-pcu-test/jenkins.sh @@ -13,6 +13,15 @@ if image_suffix_is_2023q1; then sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 10/g' $1 fi + + # This changes the PCUIF module parameter of the TTCN3 testsuite when the testsuite is + # executed for current master. For latest the PCUIF module parameter must stay at v.11 + # since in osmo-pcu-latest PCUIF v.12 is not yet supported. After the next release, PCUIF + # v.12 will be supported in osmo-pcu-latest as well and this function, including the + # PCUIF_Types.mp_pcuif_version setting in the configuration files can be removed. + if image_suffix_is_master; then + sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 12/g' $1 + fi } mkdir $VOL_BASE_DIR/pcu-tester -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Gerrit-Change-Number: 34998 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-MessageType: merged
[S] Change in docker-playground[master]: ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 fo...
Attention is currently required from: fixeria, laforge, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email ) Change subject: ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 for latest .. Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Gerrit-Change-Number: 34998 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: pespin Gerrit-Comment-Date: Tue, 21 Nov 2023 09:17:28 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
[S] Change in osmo-pcu[master]: pcu_l1_if: signal BTS model via PCUIF
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/34647?usp=email ) Change subject: pcu_l1_if: signal BTS model via PCUIF .. pcu_l1_if: signal BTS model via PCUIF At the moment the PCU has no way of knowing with which BTS model it is used with. However, some BTS models may require slightly different behaviour by the PCU, depending on which BTS model is used. So, lets add an additional bts_model field to struct gsm_pcu_if_info_ind in order to convey the exact BTS model to the PCU and store this information in struct gprs_rlcmac_bts Related: OS#6191 Change-Id: I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 --- M include/osmocom/pcu/pcuif_proto.h M src/bts.h M src/pcu_l1_if.cpp 3 files changed, 47 insertions(+), 1 deletion(-) Approvals: Jenkins Builder: Verified pespin: Looks good to me, but someone else must approve laforge: Looks good to me, approved diff --git a/include/osmocom/pcu/pcuif_proto.h b/include/osmocom/pcu/pcuif_proto.h index 1133ca6..33036c3 100644 --- a/include/osmocom/pcu/pcuif_proto.h +++ b/include/osmocom/pcu/pcuif_proto.h @@ -8,7 +8,7 @@ #define PCU_SOCK_DEFAULT "/tmp/pcu_bts" -#define PCU_IF_VERSION 0x0b +#define PCU_IF_VERSION 0x0c #define TXT_MAX_LEN128 /* msg_type */ @@ -63,6 +63,17 @@ #define PCU_IF_ADDR_TYPE_IPV4 0x04/* IPv4 address */ #define PCU_IF_ADDR_TYPE_IPV6 0x29/* IPv6 address */ +/* BTS model */ +enum gsm_pcuif_bts_model { + PCU_IF_BTS_MODEL_UNSPEC, + PCU_IF_BTS_MODEL_LC15, + PCU_IF_BTS_MODEL_OC2G, + PCU_IF_BTS_MODEL_OCTPHY, + PCU_IF_BTS_MODEL_SYSMO, + PCU_IF_BTS_MODEL_TRX, + PCU_IF_BTS_MODEL_RBS, +}; + #define PCU_IF_NUM_NSVC 2 #define PCU_IF_NUM_TRX 8 @@ -176,6 +187,7 @@ struct in_addr v4; struct in6_addr v6; } remote_ip[PCU_IF_NUM_NSVC]; + uint8_t bts_model; /* enum gsm_pcuif_bts_model */ } __attribute__ ((packed)); /* E1 CCU connection parameters */ diff --git a/src/bts.h b/src/bts.h index 3fe4503..1d88cb5 100644 --- a/src/bts.h +++ b/src/bts.h @@ -275,6 +275,9 @@ struct llist_head pch_timer; struct osmo_time_cc all_allocated_pdch; + + /* BTS hardware model, see pcuif_proto.h */ + uint8_t bts_model; }; struct paging_req_cs { diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp index 9557f66..e391829 100644 --- a/src/pcu_l1_if.cpp +++ b/src/pcu_l1_if.cpp @@ -724,6 +724,17 @@ return gprs_ns_update_config(bts, info_ind->nsei, local, remote, nsvci, valid); } +const struct value_string gsm_pcuif_bts_model_names[] = { + { PCU_IF_BTS_MODEL_UNSPEC, "(unspecified)" }, + { PCU_IF_BTS_MODEL_LC15,"osmo-bts-lc15" }, + { PCU_IF_BTS_MODEL_OC2G,"osmo-bts-oc2g" }, + { PCU_IF_BTS_MODEL_OCTPHY, "osmo-bts-octphy" }, + { PCU_IF_BTS_MODEL_SYSMO, "osmo-bts-sysmo" }, + { PCU_IF_BTS_MODEL_TRX, "osmo-bts-trx" }, + { PCU_IF_BTS_MODEL_RBS, "ericsson-rbs" }, + { 0, NULL } +}; + static int pcu_rx_info_ind(struct gprs_rlcmac_bts *bts, const struct gsm_pcu_if_info_ind *info_ind) { struct gprs_bssgp_pcu *pcu; @@ -933,6 +944,9 @@ } } + LOGP(DL1IF, LOGL_INFO, "BTS model: %s\n", get_value_string(gsm_pcuif_bts_model_names, info_ind->bts_model)); + bts->bts_model = info_ind->bts_model; + bts->active = true; return rc; } -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/34647?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Gerrit-Change-Number: 34647 Gerrit-PatchSet: 7 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
[M] Change in osmo-bts[master]: pcuif_proto: signal BTS model via PCUIF
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/34648?usp=email ) Change subject: pcuif_proto: signal BTS model via PCUIF .. pcuif_proto: signal BTS model via PCUIF At the moment the PCU has no way of knowing with which BTS model it is used with. However, some BTS models may require slightly different behaviour by the PCU, depending on which BTS model is used. So, lets add an additional bts_model field to struct gsm_pcu_if_info_ind in order to convey the exact BTS model to the PCU. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib51238a0e09d4484a539a7f822864189872698b6 --- M include/osmo-bts/pcuif_proto.h M src/common/pcu_sock.c 2 files changed, 51 insertions(+), 1 deletion(-) Approvals: laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified pespin: Looks good to me, approved diff --git a/include/osmo-bts/pcuif_proto.h b/include/osmo-bts/pcuif_proto.h index 15e3e20..04936af 100644 --- a/include/osmo-bts/pcuif_proto.h +++ b/include/osmo-bts/pcuif_proto.h @@ -7,7 +7,7 @@ #define PCU_SOCK_DEFAULT "/tmp/pcu_bts" -#define PCU_IF_VERSION 0x0b +#define PCU_IF_VERSION 0x0c #define TXT_MAX_LEN128 /* msg_type */ @@ -57,6 +57,17 @@ #define PCU_IF_ADDR_TYPE_IPV4 0x04/* IPv4 address */ #define PCU_IF_ADDR_TYPE_IPV6 0x29/* IPv6 address */ +/* BTS model */ +enum gsm_pcuif_bts_model { + PCU_IF_BTS_MODEL_UNSPEC, + PCU_IF_BTS_MODEL_LC15, + PCU_IF_BTS_MODEL_OC2G, + PCU_IF_BTS_MODEL_OCTPHY, + PCU_IF_BTS_MODEL_SYSMO, + PCU_IF_BTS_MODEL_TRX, + PCU_IF_BTS_MODEL_RBS, +}; + #define PCU_IF_NUM_NSVC 2 #define PCU_IF_NUM_TRX 8 @@ -170,6 +181,7 @@ struct in_addr v4; struct in6_addr v6; } remote_ip[PCU_IF_NUM_NSVC]; + uint8_t bts_model; /* enum gsm_pcuif_bts_model */ } __attribute__ ((packed)); struct gsm_pcu_if_act_req { diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c index 6116c9e..048e766 100644 --- a/src/common/pcu_sock.c +++ b/src/common/pcu_sock.c @@ -230,6 +230,25 @@ } } +static enum gsm_pcuif_bts_model bts_model_from_variant(enum gsm_bts_type_variant variant) +{ + switch (variant) { + case BTS_OSMO_LITECELL15: + return PCU_IF_BTS_MODEL_LC15; + case BTS_OSMO_OC2G: + return PCU_IF_BTS_MODEL_OC2G; + case BTS_OSMO_OCTPHY: + return PCU_IF_BTS_MODEL_OCTPHY; + case BTS_OSMO_SYSMO: + return PCU_IF_BTS_MODEL_SYSMO; + case BTS_OSMO_TRX: + case BTS_OSMO_VIRTUAL: + return PCU_IF_BTS_MODEL_TRX; + default: + return PCU_IF_BTS_MODEL_UNSPEC; + } +} + int pcu_tx_info_ind(void) { struct msgb *msg; @@ -358,6 +377,8 @@ info_ind_fill_trx(_ind->trx[trx->nr], trx); } + info_ind->bts_model = bts_model_from_variant(bts->variant); + return pcu_sock_send(msg); } -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34648?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ib51238a0e09d4484a539a7f822864189872698b6 Gerrit-Change-Number: 34648 Gerrit-PatchSet: 9 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-CC: osmith Gerrit-MessageType: merged
[S] Change in osmo-bsc[master]: pcuif_proto: signal BTS model via PCUIF
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/34649?usp=email ) Change subject: pcuif_proto: signal BTS model via PCUIF .. pcuif_proto: signal BTS model via PCUIF At the moment the PCU has no way of knowing with which BTS model it is used with. However, some BTS models may require slightly different behaviour by the PCU, depending on which BTS model is used. So, lets add an additional bts_model field to struct gsm_pcu_if_info_ind in order to convey the exact BTS model to the PCU. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: I4b58912ad7be3070829614853901aa19108ba2c0 --- M include/osmocom/bsc/pcuif_proto.h M src/osmo-bsc/pcu_sock.c 2 files changed, 38 insertions(+), 1 deletion(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/include/osmocom/bsc/pcuif_proto.h b/include/osmocom/bsc/pcuif_proto.h index 1133ca6..33036c3 100644 --- a/include/osmocom/bsc/pcuif_proto.h +++ b/include/osmocom/bsc/pcuif_proto.h @@ -8,7 +8,7 @@ #define PCU_SOCK_DEFAULT "/tmp/pcu_bts" -#define PCU_IF_VERSION 0x0b +#define PCU_IF_VERSION 0x0c #define TXT_MAX_LEN128 /* msg_type */ @@ -63,6 +63,17 @@ #define PCU_IF_ADDR_TYPE_IPV4 0x04/* IPv4 address */ #define PCU_IF_ADDR_TYPE_IPV6 0x29/* IPv6 address */ +/* BTS model */ +enum gsm_pcuif_bts_model { + PCU_IF_BTS_MODEL_UNSPEC, + PCU_IF_BTS_MODEL_LC15, + PCU_IF_BTS_MODEL_OC2G, + PCU_IF_BTS_MODEL_OCTPHY, + PCU_IF_BTS_MODEL_SYSMO, + PCU_IF_BTS_MODEL_TRX, + PCU_IF_BTS_MODEL_RBS, +}; + #define PCU_IF_NUM_NSVC 2 #define PCU_IF_NUM_TRX 8 @@ -176,6 +187,7 @@ struct in_addr v4; struct in6_addr v6; } remote_ip[PCU_IF_NUM_NSVC]; + uint8_t bts_model; /* enum gsm_pcuif_bts_model */ } __attribute__ ((packed)); /* E1 CCU connection parameters */ diff --git a/src/osmo-bsc/pcu_sock.c b/src/osmo-bsc/pcu_sock.c index b03cebb..ba11993 100644 --- a/src/osmo-bsc/pcu_sock.c +++ b/src/osmo-bsc/pcu_sock.c @@ -300,6 +300,14 @@ info_ind_fill_trx(_ind->trx[trx->nr], trx); } + switch (bts->type) { + case GSM_BTS_TYPE_RBS2000: + info_ind->bts_model = PCU_IF_BTS_MODEL_RBS; + break; + default: + info_ind->bts_model = PCU_IF_BTS_MODEL_UNSPEC; + } + return pcu_sock_send(bts->network, msg); } -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/34649?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: I4b58912ad7be3070829614853901aa19108ba2c0 Gerrit-Change-Number: 34649 Gerrit-PatchSet: 7 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
Attention is currently required from: dexter, pespin. Hello Jenkins Builder, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email to look at the new patch set (#6). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 We have added an additional bts_model field to the PCUIF_info_ind. This also means that we have to increment the PCUIF version number since adding fields is a major change to the protocol. This patch updates the related TTCN3 record and also increments the PCUIF version number. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests.ttcn M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 6 files changed, 39 insertions(+), 9 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/34/34934/6 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 6 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin Gerrit-CC: laforge Gerrit-Attention: pespin Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
Attention is currently required from: dexter, pespin. Hello Jenkins Builder, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email to look at the new patch set (#5). The following approvals got outdated and were removed: Code-Review+1 by pespin, Verified+1 by Jenkins Builder Change subject: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 We have added an additional bts_model field to the PCUIF_info_ind. This also means that we have to increment the PCUIF version number since adding fields is a major change to the protocol. This patch updates the related TTCN3 record and also increments the PCUIF version number. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 5 files changed, 27 insertions(+), 8 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/34/34934/5 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 5 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin Gerrit-CC: laforge Gerrit-Attention: pespin Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in docker-playground[master]: ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 fo...
Attention is currently required from: fixeria, laforge, pespin. Hello Jenkins Builder, fixeria, laforge, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 for latest .. ttcn3-bts/pcu-test: Use PCUIF v12 for current master and PCUIF v11 for latest At the moment we use PCUIF v11 in latest and in master. This will now change (see Depends) so that we will have to use v12 in master. This patch adds the necessary conditional config changes. Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Related: OS#6191 --- M ttcn3-bts-test/jenkins.sh M ttcn3-pcu-test/jenkins.sh 2 files changed, 38 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/98/34998/2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Gerrit-Change-Number: 34998 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[S] Change in docker-playground[master]: ttcn3-bts-test: Use PCUIF v12 for current master and PCUIF v11 for la...
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email ) Change subject: ttcn3-bts-test: Use PCUIF v12 for current master and PCUIF v11 for latest .. ttcn3-bts-test: Use PCUIF v12 for current master and PCUIF v11 for latest At the moment we use PCUIF v11 in latest and in master. This will now change (see Depends) so that we will have to use v12 in master. This patch adds the necessary conditional config changes. Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Related: OS#6191 --- M ttcn3-bts-test/jenkins.sh 1 file changed, 29 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/98/34998/1 diff --git a/ttcn3-bts-test/jenkins.sh b/ttcn3-bts-test/jenkins.sh index ed1e095..6acb301 100755 --- a/ttcn3-bts-test/jenkins.sh +++ b/ttcn3-bts-test/jenkins.sh @@ -121,17 +121,31 @@ $REPO_USER/ttcn3-bts-test } +set_pcuif_version() { +# This changes the PCUIF module parameter of the TTCN3 testsuite when the testsuite is +# executed for current master. For latest the PCUIF module parameter must stay at v.11 +# since in osmo-bts-latest PCUIF v.12 is not yet supported. After the next release, PCUIF +# v.12 will be supported in osmo-bts-latest as well and this function, including the +# PCUIF_Types.mp_pcuif_version setting in the configuration files can be removed. +if image_suffix_is_master; then + sed -i 's/PCUIF_Types.mp_pcuif_version := 11/PCUIF_Types.mp_pcuif_version := 12/g' $1 +fi +} + network_create mkdir $VOL_BASE_DIR/bts-tester-generic cp generic/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-generic/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-generic/BTS_Tests.cfg" +set_pcuif_version "$VOL_BASE_DIR/bts-tester-generic/BTS_Tests.cfg" mkdir $VOL_BASE_DIR/bts-tester-virtphy cp virtphy/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-virtphy/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-virtphy/BTS_Tests.cfg" +set_pcuif_version "$VOL_BASE_DIR/bts-tester-virtphy/BTS_Tests.cfg" mkdir $VOL_BASE_DIR/bts-tester-oml cp oml/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-oml/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-oml/BTS_Tests.cfg" +set_pcuif_version "$VOL_BASE_DIR/bts-tester-oml/BTS_Tests.cfg" mkdir $VOL_BASE_DIR/bts-tester-hopping cp fh/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-hopping/ write_mp_osmo_repo "$VOL_BASE_DIR/bts-tester-hopping/BTS_Tests.cfg" -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/34998?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I5c0914c0bf906b51a500a3b099578700798cf8c0 Gerrit-Change-Number: 34998 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: filesystem: add flag to tell whether an ADF supports an FS or not
Attention is currently required from: laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34902?usp=email ) Change subject: filesystem: add flag to tell whether an ADF supports an FS or not .. Patch Set 1: (1 comment) Patchset: PS1: > Unfortunately I could not find any hard evidence on this but I think you are > right here. […] (btw: I noticed that the select response from ADF.ARA-M is just 9000, so it is really different. I think a real ADF should return a UICC-typical response with FCP) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34902?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ifd0f7c34164685ea18d8a746394e55416fa0aa66 Gerrit-Change-Number: 34902 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Comment-Date: Thu, 02 Nov 2023 10:36:57 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Comment-In-Reply-To: dexter Gerrit-MessageType: comment
[S] Change in pysim[master]: filesystem: add flag to tell whether an ADF supports an FS or not
Attention is currently required from: laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34902?usp=email ) Change subject: filesystem: add flag to tell whether an ADF supports an FS or not .. Patch Set 1: (1 comment) Patchset: PS1: > strictly speaking, in terms of terminology an application with AID and no > filesystem probably doesn' […] Unfortunately I could not find any hard evidence on this but I think you are right here. Probably applications which do not support a file system won't have an ADF. The only reason why one would want to have an ADF despite this is that an ADF would allow the selection of the application via a 2 byte FID. This probably also means that it is incorrect to have the ADF.ARA-M in the file system tree at all. However, it is a very handy extension to have such virtual ADFs. So what would speak against having the proposed has_fs flag that tells pySim that there is no FS behind this ADF? If we want to express this in the class model we could have a CardObj that is above CardFile and has the most basic methods and properties that are not file system related in particular. Then We could create a new type of CardADF that directly inherits from CardObj. We could call it "CardAPP". We would still make those appear in the file system tree but with a name that makes clear that it is a normal card applet without file system support. -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34902?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ifd0f7c34164685ea18d8a746394e55416fa0aa66 Gerrit-Change-Number: 34902 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Comment-Date: Thu, 02 Nov 2023 10:25:53 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Gerrit-MessageType: comment
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
Attention is currently required from: dexter. Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email to look at the new patch set (#4). Change subject: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 We have added an additional bts_model field to the PCUIF_info_ind. This also means that we have to increment the PCUIF version number since adding fields is a major change to the protocol. This patch updates the related TTCN3 record and also increments the PCUIF version number. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 5 files changed, 25 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/34/34934/4 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 4 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
Attention is currently required from: dexter. Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?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: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 5 files changed, 20 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/34/34934/3 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
Attention is currently required from: dexter. Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified-1 by Jenkins Builder Change subject: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 5 files changed, 19 insertions(+), 6 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/34/34934/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in osmo-ttcn3-hacks[master]: PCUIF: upgrade to PCUIF v12
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email ) Change subject: PCUIF: upgrade to PCUIF v12 .. PCUIF: upgrade to PCUIF v12 Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf --- M bts/BTS_Tests.default M library/PCUIF_Types.ttcn M pcu/PCU_Tests.default M pcu/PCU_Tests_SNS.cfg M pcu/PCU_Tests_SNSv6.cfg 5 files changed, 19 insertions(+), 6 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/34/34934/1 diff --git a/bts/BTS_Tests.default b/bts/BTS_Tests.default index 7c5230b..578aa36 100644 --- a/bts/BTS_Tests.default +++ b/bts/BTS_Tests.default @@ -29,7 +29,7 @@ [MODULE_PARAMETERS] Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoBTS"; -PCUIF_Types.mp_pcuif_version := 11; +PCUIF_Types.mp_pcuif_version := 12; # Configuration for each individual transceiver BTS_Tests.mp_trx_pars := { diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn index 8fb0be3..84e7b8d 100644 --- a/library/PCUIF_Types.ttcn +++ b/library/PCUIF_Types.ttcn @@ -17,7 +17,7 @@ modulepar { /* PCUIF version supported by the IUT */ - PCUIF_Version mp_pcuif_version := 11; + PCUIF_Version mp_pcuif_version := 12; }; const charstring PCU_SOCK_DEFAULT := "/tmp/pcu_bts"; @@ -200,7 +200,9 @@ record length(2) of uint16_tnsvci, record length(2) of uint16_tlocal_port, record length(2) of uint16_tremote_port, - PCUIF_RemoteAddrremote_addr + PCUIF_RemoteAddrremote_addr, + + uint8_t bts_model, } with { variant "" }; type enumerated PCUIF_AddrType { diff --git a/pcu/PCU_Tests.default b/pcu/PCU_Tests.default index 07d1ffc..c72720b 100644 --- a/pcu/PCU_Tests.default +++ b/pcu/PCU_Tests.default @@ -29,7 +29,7 @@ } }; Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoPCU"; -PCUIF_Types.mp_pcuif_version := 11; +PCUIF_Types.mp_pcuif_version := 12; [TESTPORT_PARAMETERS] *.PCU.socket_type := "SEQPACKET" diff --git a/pcu/PCU_Tests_SNS.cfg b/pcu/PCU_Tests_SNS.cfg index c7c5771..bd0875b 100644 --- a/pcu/PCU_Tests_SNS.cfg +++ b/pcu/PCU_Tests_SNS.cfg @@ -54,7 +54,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 11 +PCUIF_Types.mp_pcuif_version := 12 [TESTPORT_PARAMETERS] diff --git a/pcu/PCU_Tests_SNSv6.cfg b/pcu/PCU_Tests_SNSv6.cfg index 02d04f3..3093c2c 100644 --- a/pcu/PCU_Tests_SNSv6.cfg +++ b/pcu/PCU_Tests_SNSv6.cfg @@ -26,7 +26,7 @@ } } } -PCUIF_Types.mp_pcuif_version := 11 +PCUIF_Types.mp_pcuif_version := 12 [TESTPORT_PARAMETERS] -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34934?usp=email 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: Ib1516e66c70f021adee49f41bd707803fc06f9cf Gerrit-Change-Number: 34934 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[M] Change in osmo-bts[master]: pcuif_proto: signal BTS model via PCUIF
Attention is currently required from: dexter, laforge, osmith, pespin. Hello Jenkins Builder, laforge, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-bts/+/34648?usp=email to look at the new patch set (#8). The following approvals got outdated and were removed: Code-Review+1 by laforge, Verified-1 by Jenkins Builder Change subject: pcuif_proto: signal BTS model via PCUIF .. pcuif_proto: signal BTS model via PCUIF At the moment the PCU has no way of knowing with which BTS model it is used with. However, some BTS models may require slightly different behaviour by the PCU, depending on which BTS model is used. So, lets add an additional bts_model field to struct gsm_pcu_if_info_ind in order to convey the exact BTS model to the PCU. Related: OS#6191 Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047 Change-Id: Ib51238a0e09d4484a539a7f822864189872698b6 --- M include/osmo-bts/pcuif_proto.h M src/common/pcu_sock.c 2 files changed, 51 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/48/34648/8 -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34648?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ib51238a0e09d4484a539a7f822864189872698b6 Gerrit-Change-Number: 34648 Gerrit-PatchSet: 8 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-CC: osmith Gerrit-Attention: osmith Gerrit-Attention: laforge Gerrit-Attention: pespin Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
Attention is currently required from: fixeria, laforge. Hello Jenkins Builder, fixeria, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: runtime: refactor file selection methods select and select_file .. runtime: refactor file selection methods select and select_file The implementation of the methods select and select_file of class RuntimeLchan is a bit complex. We access the card directly in several places which makes it difficult to track the state changes. We should clean this up so that we call self.rs.card.select_adf_by_aid/ self.scc.select_file from a single place only. This means that the method select uses the method select_file. This results in a much cleaner implementation. We also should take care that the important states that we track (selected_file, selected_adf, etc.) are updated by a single private method. Since the update always must happen after a select _select_post is a good place to do this. Related: OS#6210 Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 --- M pySim/runtime.py 1 file changed, 89 insertions(+), 41 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/32/34932/2 -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 Gerrit-Change-Number: 34932 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-MessageType: newpatchset
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
Attention is currently required from: fixeria, laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34932?usp=email ) Change subject: runtime: refactor file selection methods select and select_file .. Patch Set 2: (4 comments) File pySim/runtime.py: https://gerrit.osmocom.org/c/pysim/+/34932/comment/965df6aa_a206d527 PS1, Line 174: > yeah, we've seen this already several times. […] Done https://gerrit.osmocom.org/c/pysim/+/34932/comment/b4df4396_b30556bf PS1, Line 296: CardFile > `Optional[CardFile]` Done https://gerrit.osmocom.org/c/pysim/+/34932/comment/be65dd6f_2e57cdef PS1, Line 298: > tabs vs spaces Done https://gerrit.osmocom.org/c/pysim/+/34932/comment/41d1b7bd_4c2be2cf PS1, Line 375: > tabs vs spaces Done -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34932?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 Gerrit-Change-Number: 34932 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Comment-Date: Wed, 01 Nov 2023 14:53:32 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in pysim[master]: filesystem: fix method build_select_path_to
dexter has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/34931?usp=email ) Change subject: filesystem: fix method build_select_path_to .. filesystem: fix method build_select_path_to The method build_select_path_to chops off the first element of the current path. This is done to prevent re-selection of the first file in the current path. Unfortunately chopping off the first element in the current path does not work properly in a situation when the current path points to the MF. This would chop off the first and last element in the list and the for loop below would run 0 times. To fix this, let's keep the first element and chop it off from the resulting path. Related: OS#5418 Change-Id: Ia521a7ac4c25fd3a2bc8edffdc45ec89ba4b16eb --- M pySim/filesystem.py 1 file changed, 23 insertions(+), 2 deletions(-) Approvals: fixeria: Looks good to me, but someone else must approve laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/pySim/filesystem.py b/pySim/filesystem.py index 5950ad1..800f2cc 100644 --- a/pySim/filesystem.py +++ b/pySim/filesystem.py @@ -143,7 +143,6 @@ cur_fqpath = self.fully_qualified_path_fobj() target_fqpath = target.fully_qualified_path_fobj() inter_path = [] -cur_fqpath.pop() # drop last element (currently selected file, doesn't need re-selection cur_fqpath.reverse() for ce in cur_fqpath: inter_path.append(ce) @@ -153,7 +152,7 @@ for te2 in target_fqpath[i+1:]: inter_path.append(te2) # we found our common ancestor -return inter_path +return inter_path[1:] return None def get_mf(self) -> Optional['CardMF']: -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34931?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ia521a7ac4c25fd3a2bc8edffdc45ec89ba4b16eb Gerrit-Change-Number: 34931 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-MessageType: merged
[S] Change in pysim[master]: runtime: cosmetic: fix formatting of comment
dexter has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/34930?usp=email ) Change subject: runtime: cosmetic: fix formatting of comment .. runtime: cosmetic: fix formatting of comment Change-Id: I4e949a08c1bfab413b82e958a64404390e58148f --- M pySim/runtime.py 1 file changed, 10 insertions(+), 1 deletion(-) Approvals: fixeria: Looks good to me, approved Jenkins Builder: Verified diff --git a/pySim/runtime.py b/pySim/runtime.py index a54a1b6..8660724 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -241,7 +241,7 @@ def probe_file(self, fid: str, cmd_app=None): """Blindly try to select a file and automatically add a matching file - object if the file actually exists.""" + object if the file actually exists.""" if not is_hex(fid, 4, 4): raise ValueError( "Cannot select unknown file by name %s, only hexadecimal 4 digit FID is allowed" % fid) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34930?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I4e949a08c1bfab413b82e958a64404390e58148f Gerrit-Change-Number: 34930 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-MessageType: merged
[S] Change in pysim[master]: runtime: fix tracking of selected_adf
Attention is currently required from: laforge. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/pysim/+/34897?usp=email ) Change subject: runtime: fix tracking of selected_adf .. Patch Set 3: (2 comments) Patchset: PS3: > this fix works. […] I have had a closer look to select and select_file in runtime.py now. I really had problems to understand what really happens with select and select_file. I have cleaned up the code now: https://gerrit.osmocom.org/c/pysim/+/34932 PS3: > I now see that self.selected_adf refers to RuntimeState. […] The change I did in RuntimeState is wrong I think. What we do there is probing for the applications on a low level. This is in the startup phase where the file system is created. We do not have to maintain the lchan state in this phase. We also can not use select or select_file either. I think it is ok to access the card from here directly. Also accessing self.selected_adf should not work. It should be self.lchan[0].selected_adf. -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34897?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I4cc0c58ff887422b4f3954d35c8380ddc00baa1d Gerrit-Change-Number: 34897 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Attention: laforge Gerrit-Comment-Date: Tue, 31 Oct 2023 16:36:00 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Gerrit-MessageType: comment
[M] Change in pysim[master]: runtime: refactor file selection methods select and select_file
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34932?usp=email ) Change subject: runtime: refactor file selection methods select and select_file .. runtime: refactor file selection methods select and select_file The implementation of the methods select and select_file of class RuntimeLchan is a bit complex. We access the card directly in several places which makes it difficult to track the state changes. We should clean this up so that we call self.rs.card.select_adf_by_aid/ self.scc.select_file from a single place only. This means that the method select uses the method select_file. This results in a much cleaner implementation. We also should take care that the important states that we track (selected_file, selected_adf, etc.) are updated by a single private method. Since the update always must happen after a select _select_post is a good place to do this. Related: OS#6210 Change-Id: I9ae213f3b078983f3e6d4c11db38fdbe504c84f2 --- M pySim/runtime.py 1 file changed, 89 insertions(+), 41 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/32/34932/1 diff --git a/pySim/runtime.py b/pySim/runtime.py index 8660724..feaa355 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -64,7 +64,7 @@ self.mf.add_file(f) # go back to MF before the next steps (addon probing might have changed DF) -self.card._scc.select_file('3F00') +self.lchan[0].select('3F00') # add application ADFs + MF-files from profile apps = self._match_applications() @@ -110,6 +110,12 @@ # probe for those applications for f in sorted(set(apps_profile) - set(apps_taken), key=str): try: +# we can not use the lchan provided methods select, or select_file +# since those method work on an already finished file model. At +# this point we are still in the initialization process, so it is +# no problem when we access the card directly without caring about +# updating other states. For normal selects at runtime, the caller +# must use the lchan provided methods select or select_file! data, sw = self.card.select_adf_by_aid(f.aid) if sw == "9000": print(" %s: %s" % (f.name, f.aid)) @@ -163,11 +169,14 @@ def __init__(self, lchan_nr: int, rs: RuntimeState): self.lchan_nr = lchan_nr self.rs = rs +self.scc = self.rs.card._scc.fork_lchan(lchan_nr) + + # File reference data self.selected_file = self.rs.mf self.selected_adf = None self.selected_file_fcp = None self.selected_file_fcp_hex = None -self.scc = self.rs.card._scc.fork_lchan(lchan_nr) + def add_lchan(self, lchan_nr: int) -> 'RuntimeLchan': """Add a new logical channel from the current logical channel. Just affects @@ -246,9 +255,17 @@ raise ValueError( "Cannot select unknown file by name %s, only hexadecimal 4 digit FID is allowed" % fid) +self._select_pre(cmd_app) + try: +# We access the card through the select_file method of the scc object. +# If we succeed, we know that the file exists and we may proceed with +# creating a new file at run time. In case the file does not exist, we +# just abort. The state on the card (selected file/application) wont't +# be changed, so we do not have to update any state in that case. (data, sw) = self.scc.select_file(fid) except SwMatchError as swm: +self._select_post(cmd_app) k = self.interpret_sw(swm.sw_actual) if not k: raise(swm) @@ -267,8 +284,8 @@ desc="elementary file, manually added at runtime") self.selected_file.add_files([f]) -self.selected_file = f -return select_resp, data + +self._select_post(cmd_app, f, data) def _select_pre(self, cmd_app): # unregister commands of old file @@ -276,7 +293,17 @@ for c in self.selected_file.shell_commands: cmd_app.unregister_command_set(c) -def _select_post(self, cmd_app): +def _select_post(self, cmd_app, file:CardFile = None, select_resp_data = None): +# we store some reference data (see above) about the currently selected file. + # This data must be updated after every select. +if file: +self.selected_file = file +if isinstance(file, CardADF): +self.selected_adf = file +if select_resp_data: +self.selected_file_fcp_hex = select_resp_data +self.selected_file_fcp =
[S] Change in pysim[master]: runtime: cosmetic: fix formatting of comment
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34930?usp=email ) Change subject: runtime: cosmetic: fix formatting of comment .. runtime: cosmetic: fix formatting of comment Change-Id: I4e949a08c1bfab413b82e958a64404390e58148f --- M pySim/runtime.py 1 file changed, 10 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/30/34930/1 diff --git a/pySim/runtime.py b/pySim/runtime.py index a54a1b6..8660724 100644 --- a/pySim/runtime.py +++ b/pySim/runtime.py @@ -241,7 +241,7 @@ def probe_file(self, fid: str, cmd_app=None): """Blindly try to select a file and automatically add a matching file - object if the file actually exists.""" + object if the file actually exists.""" if not is_hex(fid, 4, 4): raise ValueError( "Cannot select unknown file by name %s, only hexadecimal 4 digit FID is allowed" % fid) -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34930?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I4e949a08c1bfab413b82e958a64404390e58148f Gerrit-Change-Number: 34930 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: filesystem: fix method build_select_path_to
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/34931?usp=email ) Change subject: filesystem: fix method build_select_path_to .. filesystem: fix method build_select_path_to The method build_select_path_to chops off the first element of the current path. This is done to prevent re-selection of the first file in the current path. Unfortunately chopping off the first element in the current path does not work properly in a situation when the current path points to the MF. This would chop off the first and last element in the list and the for loop below would run 0 times. To fix this, let's keep the first element and chop it off from the resulting path. Related: OS#5418 Change-Id: Ia521a7ac4c25fd3a2bc8edffdc45ec89ba4b16eb --- M pySim/filesystem.py 1 file changed, 23 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/31/34931/1 diff --git a/pySim/filesystem.py b/pySim/filesystem.py index 5950ad1..800f2cc 100644 --- a/pySim/filesystem.py +++ b/pySim/filesystem.py @@ -143,7 +143,6 @@ cur_fqpath = self.fully_qualified_path_fobj() target_fqpath = target.fully_qualified_path_fobj() inter_path = [] -cur_fqpath.pop() # drop last element (currently selected file, doesn't need re-selection cur_fqpath.reverse() for ce in cur_fqpath: inter_path.append(ce) @@ -153,7 +152,7 @@ for te2 in target_fqpath[i+1:]: inter_path.append(te2) # we found our common ancestor -return inter_path +return inter_path[1:] return None def get_mf(self) -> Optional['CardMF']: -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34931?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: Ia521a7ac4c25fd3a2bc8edffdc45ec89ba4b16eb Gerrit-Change-Number: 34931 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-MessageType: newchange
[S] Change in pysim[master]: transport: print device path/number on initialization failure
dexter has abandoned this change. ( https://gerrit.osmocom.org/c/pysim/+/34693?usp=email ) Change subject: transport: print device path/number on initialization failure .. Abandoned We have now solved this differently -- To view, visit https://gerrit.osmocom.org/c/pysim/+/34693?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: pysim Gerrit-Branch: master Gerrit-Change-Id: I3f5387508ccc2aa349adc7aec3d04d8fc977690b Gerrit-Change-Number: 34693 Gerrit-PatchSet: 6 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: osmith Gerrit-CC: fixeria Gerrit-MessageType: abandon
[M] Change in osmo-msc[master]: manuals: add section about the SGs interface.
Attention is currently required from: fixeria, laforge, pespin. Hello Jenkins Builder, laforge, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-msc/+/34870?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Verified+1 by Jenkins Builder Change subject: manuals: add section about the SGs interface. .. manuals: add section about the SGs interface. The SGs interface is currently only casually mentioned in the chapter running, even though the SGs interface is a prominent and often requested feature. Let's give the SGs interface its own section so that users can find the info about it quicker. Related: OS#6008 Change-Id: Ic7c17511ee19cb7f6d5069b27beb661ecb4b0be8 --- M doc/manuals/chapters/running.adoc A doc/manuals/chapters/sgs.adoc M doc/manuals/osmomsc-usermanual.adoc 3 files changed, 74 insertions(+), 9 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/70/34870/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/34870?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: Ic7c17511ee19cb7f6d5069b27beb661ecb4b0be8 Gerrit-Change-Number: 34870 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-CC: fixeria Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: pespin Gerrit-MessageType: newpatchset
[M] Change in osmo-msc[master]: manuals: add section about the SGs interface.
Attention is currently required from: fixeria, laforge, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/34870?usp=email ) Change subject: manuals: add section about the SGs interface. .. Patch Set 2: (8 comments) File doc/manuals/chapters/running.adoc: https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/a037315a_b956a4a5 PS1, Line 78: see section <> > missing dot at the end of sentence Done File doc/manuals/chapters/sgs.adoc: https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/83f29025_38b439ef PS1, Line 4: SGs/SGsAP > The interface is called SGs. The application layer protocol for it is SGsAP. > […] Done https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/e171c93d_a0f533e9 PS1, Line 5: It's > Its (not it is) Done https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/cfb3ca28_94bbe224 PS1, Line 5: LTE/EPC > you used "2G (GERAN)" before, then here it would make sense to use the same > format e.g. […] Done https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/c23f7cbe_8ae98588 PS1, Line 31: ts5, ts6-2, ts7, ts11, ts14, ts15 > cosmetic: use \` text \` for `highlighting` Done https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/250a3f51_773352b6 PS1, Line 44: In case multiple instances of OsmoMSC run in parallel, it is advised to use a : different vlr-name for each instance > you might want to add that they of course need to be bound to different IP > addresses. […] Done https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/82cf4c4f_5dabfcfb PS1, Line 50: show sgs-connections > cosmetic: use \` text \` for `highlighting` Done https://gerrit.osmocom.org/c/osmo-msc/+/34870/comment/b24dab01_3efe3f9b PS1, Line 51: OsmoMSC > missing dot Done -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/34870?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: Ic7c17511ee19cb7f6d5069b27beb661ecb4b0be8 Gerrit-Change-Number: 34870 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-CC: fixeria Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: pespin Gerrit-Comment-Date: Mon, 30 Oct 2023 16:51:51 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in osmo-msc[master]: vlr_sgs: fix VTY setting for SGs counter.
dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/34871?usp=email ) Change subject: vlr_sgs: fix VTY setting for SGs counter. .. vlr_sgs: fix VTY setting for SGs counter. When trying to modify the value of an SGs counter (eg. ns11), then the setting is never stored. The reason for this is that OsmoMSC uses the wrong string table to compare the user input. Related: OS#6008 Change-Id: I0358c1ec0026c37fda6db1f3af3145393df25cfd --- M include/osmocom/msc/vlr_sgs.h 1 file changed, 15 insertions(+), 1 deletion(-) Approvals: Jenkins Builder: Verified fixeria: Looks good to me, approved diff --git a/include/osmocom/msc/vlr_sgs.h b/include/osmocom/msc/vlr_sgs.h index 7231449..aade5d3 100644 --- a/include/osmocom/msc/vlr_sgs.h +++ b/include/osmocom/msc/vlr_sgs.h @@ -69,7 +69,7 @@ extern const struct value_string sgs_state_counter_names[]; static inline const char *vlr_sgs_state_counter_name(enum vlr_sgs_state_ctr Ns) { - return get_value_string(sgs_state_timer_names, Ns); + return get_value_string(sgs_state_counter_names, Ns); } /* This callback function is called when an SGs location update is complete */ -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/34871?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I0358c1ec0026c37fda6db1f3af3145393df25cfd Gerrit-Change-Number: 34871 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
[S] Change in osmo-msc[master]: vlr_sgs: fix VTY setting for SGs counter.
Attention is currently required from: fixeria, laforge, pespin. dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/34871?usp=email ) Change subject: vlr_sgs: fix VTY setting for SGs counter. .. Patch Set 2: (1 comment) Commit Message: https://gerrit.osmocom.org/c/osmo-msc/+/34871/comment/ab0b5b9d_81ab0571 PS1, Line 10: setting is nevers stored. The reason for this is that OsmoMSC uses the > never Done -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/34871?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I0358c1ec0026c37fda6db1f3af3145393df25cfd Gerrit-Change-Number: 34871 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: pespin Gerrit-Comment-Date: Mon, 30 Oct 2023 16:21:25 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
[S] Change in osmo-msc[master]: vlr_sgs: fix VTY setting for SGs counter.
Attention is currently required from: dexter, fixeria, laforge, pespin. Hello Jenkins Builder, fixeria, laforge, pespin, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-msc/+/34871?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Code-Review+2 by fixeria, Verified+1 by Jenkins Builder The change is no longer submittable: Code-Review and Verified are unsatisfied now. Change subject: vlr_sgs: fix VTY setting for SGs counter. .. vlr_sgs: fix VTY setting for SGs counter. When trying to modify the value of an SGs counter (eg. ns11), then the setting is never stored. The reason for this is that OsmoMSC uses the wrong string table to compare the user input. Related: OS#6008 Change-Id: I0358c1ec0026c37fda6db1f3af3145393df25cfd --- M include/osmocom/msc/vlr_sgs.h 1 file changed, 15 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/71/34871/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/34871?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I0358c1ec0026c37fda6db1f3af3145393df25cfd Gerrit-Change-Number: 34871 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Attention: laforge Gerrit-Attention: fixeria Gerrit-Attention: pespin Gerrit-Attention: dexter Gerrit-MessageType: newpatchset
[S] Change in osmo-msc[master]: running: fix link to MNCC for External Call Control
dexter has abandoned this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/34869?usp=email ) Change subject: running: fix link to MNCC for External Call Control .. Abandoned Possibly a false alarm. -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/34869?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I5b0fd848e6b28bf670d9994da8a56cb613158290 Gerrit-Change-Number: 34869 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: abandon