fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/42356?usp=email )
Change subject: enb_proxy: fix stale SCTP events misprocessed during MME pool selection
......................................................................
enb_proxy: fix stale SCTP events misprocessed during MME pool selection
When closing a connection to one MME and opening a new one to the next,
a SHUTDOWN_COMP event from the old (now-closed) socket can still be
pending in the process mailbox. The sctp_assoc_change handlers in the
'connecting' and 'wait_s1setup_rsp' states were matching '_Socket',
ignoring the socket identity. A stale SHUTDOWN_COMP would therefore
fall into the '_ -> repeat_state_and_data' branch, triggering a spurious
re-entry of 'connecting', which immediately closed the newly established
connection to the next MME and skipped to yet another pool entry.
Fix this by matching the Socket against the current S#state.sock in both
handlers. Events arriving on a previously closed socket no longer match
these clauses and are silently dropped by the catch-all handle_event/4.
This was found thanks to the MME pooling TCs in ttcn3-s1gw-test.
Change-Id: I4211dd343607f045cf4dd33fa568ed580c79dd9f
Related: SYS#7052
---
M src/enb_proxy.erl
1 file changed, 8 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-s1gw refs/changes/56/42356/1
diff --git a/src/enb_proxy.erl b/src/enb_proxy.erl
index 5ab79d1..3ce205f 100644
--- a/src/enb_proxy.erl
+++ b/src/enb_proxy.erl
@@ -235,9 +235,11 @@
keep_state_and_data;
%% Handle an #sctp_assoc_change event (connection state)
-connecting(info, {sctp, _Socket, MmeAddr, MmePort,
+%% Match on Socket to avoid processing stale events from a previously closed socket
+connecting(info, {sctp, Socket, MmeAddr, MmePort,
{[], #sctp_assoc_change{state = ConnState,
- assoc_id = Aid}}}, S) ->
+ assoc_id = Aid}}},
+ #state{sock = Socket} = S) ->
MmeName = hd(S#state.tried_mmes),
case ConnState of
comm_up ->
@@ -315,9 +317,11 @@
%% Handle an #sctp_assoc_change event (MME connection state)
%% We may loose connection while waiting for the S1 SETUP RESPONSE
-wait_s1setup_rsp(info, {sctp, _Socket, MmeAddr, MmePort,
+%% Match on Socket to avoid processing stale events from a previously closed socket
+wait_s1setup_rsp(info, {sctp, Socket, MmeAddr, MmePort,
{[], #sctp_assoc_change{state = ConnState,
- assoc_id = Aid}}}, S) ->
+ assoc_id = Aid}}},
+ #state{sock = Socket} = S) ->
case ConnState of
comm_up ->
?LOG_NOTICE("MME connection (id=~p, ~p:~p) is already established?!?",
--
To view, visit https://gerrit.osmocom.org/c/erlang/osmo-s1gw/+/42356?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: erlang/osmo-s1gw
Gerrit-Branch: master
Gerrit-Change-Id: I4211dd343607f045cf4dd33fa568ed580c79dd9f
Gerrit-Change-Number: 42356
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: laforge, osmith.
Hoernchen has posted comments on this change by Hoernchen. ( https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330?usp=email )
Change subject: fw source: force reformat once and for all
......................................................................
Patch Set 2:
(8 comments)
Patchset:
PS1:
> The approach I've taken with checkpatch (from linux. […]
clang-format formats and that is the end of it, no discussions, NOTHING EVER AGAIN.
That is the advantage and the reason why everyone uses a clang format file and why even the kernel has one, for the style we allegedly use, but clearly, we don't do that, and therefore we can didscuss formatting again and again and again...
File ccid_common/ccid_device.c:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/39b5d33c_b9… :
PS1, Line 547: // break;
> not useful IMHO. this is also in other places in this patch.
yeah but consistent and enforcable and easy to unindent after uncommenting the block.
File ccid_common/ccid_proto.h:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/c171a0bb_89… :
PS1, Line 366: #define CCID_CMD_STATUS_TIME_EXT 0x80
> here and in enum ccid_error_code below, it is more readable to keep the values directly below each o […]
looks more aligned now
File ccid_common/ccid_proto.c:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/23f69532_6e… :
PS1, Line 70: { CCID_ERR_CMD_ABORTED, "CMD_ABORTED" },
> +1
this is the alignment of arrays of structs. its either left, right, or one long line that breaks at 120 chars. neither left nor right is more or less readable than the randomly indented version and an random long line is obviously even worse, but at least this is consistent and can be applied and checked.
File ccid_common/iso7816_3.c:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/0781494e_2d… :
PS1, Line 50: 0,
> doesn't seem useful to reformat it like this?
it is definitely more readable than a sneaky semicolon at the end, and it's the kernel style we allegedly use...
File ccid_common/iso7816_fsm.c:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/f73fce2c_be… :
PS1, Line 168: static const uint8_t convention_convert_lut[256] = {
> yeah, that looks like it's not intended.
fixed by telling clang-format to keep it like that
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/0546c4f8_84… :
PS1, Line 818: .in_event_mask = S(ISO7816_E_RX_SINGLE) | S(ISO7816_E_RX_COMPL) | S(ISO7816_E_TX_COMPL) | S(ISO7816_E_RX_ERR_IND) | S(ISO7816_E_TX_ERR_IND) | S(ISO7816_E_TPDU_DONE_IND),
> https://gerrit.osmocom. […]
fixed by telling clang-format to keep it like this
File sysmoOCTSIM/usb_descriptors.c:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/eb879bb2_28… :
PS1, Line 227: 4,
> this also clearly is not an improvement of readability at all.
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-Change-Id: Iacc086bb566551225e7a21b639a1ad2ec257484f
Gerrit-Change-Number: 42330
Gerrit-PatchSet: 2
Gerrit-Owner: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-CC: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Fri, 13 Mar 2026 19:37:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Comment-In-Reply-To: Hoernchen <ewild(a)sysmocom.de>
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Comment-In-Reply-To: lynxis lazus <lynxis(a)fe80.eu>
Attention is currently required from: Hoernchen, osmith.
Jenkins Builder has posted comments on this change by Hoernchen. ( https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330?usp=email )
Change subject: fw source: force reformat once and for all
......................................................................
Patch Set 2:
(3 comments)
File sysmoOCTSIM/dfu_descriptors.h:
Robot Comment from checkpatch (run ID ):
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/9c870936_7e… :
PS2, Line 30: #define DFURT_IF_DESCRIPTOR_STRUCT \
macros should not use a trailing semicolon
File sysmoOCTSIM/talloc.h:
Robot Comment from checkpatch (run ID ):
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/d09cbf92_c6… :
PS2, Line 880: void *talloc_pooled_object(const void *ctx, #type, unsigned num_subobjects, size_t total_subobjects_size);
function definition argument 'type' should also have an identifier name
File sysmoOCTSIM/talloc.c:
Robot Comment from checkpatch (run ID ):
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330/comment/9e28b42b_84… :
PS2, Line 251: #define TC_UNDEFINE_GROW_CHUNK(_tc, _new_size) \
Single statement macros should not use a do {} while (0) loop
--
To view, visit https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-Change-Id: Iacc086bb566551225e7a21b639a1ad2ec257484f
Gerrit-Change-Number: 42330
Gerrit-PatchSet: 2
Gerrit-Owner: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-CC: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 13 Mar 2026 19:25:33 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Attention is currently required from: Hoernchen, osmith.
Hello Jenkins Builder, laforge, osmith,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Code-Review-1 by osmith, Verified-1 by Jenkins Builder
Change subject: fw source: force reformat once and for all
......................................................................
fw source: force reformat once and for all
This commit applies the rules to all files that matter
(obv excluding asf4 code) since it is impossible to modify code
because the code never used the code style enforced by the
linter/clang-format and
1) changing code
2) reformatting code
3) extracting the reformatting changes for the modified lines as a
separate commit
4) commiting standalone reformatting changes
4) commiting the actual code change on top
is a workflow that takes forever and is completely ridiculous because
the whole point of formatter rules is to apply them.
This needs a second commit with .git-blame-ignore-revs to not pollute blame.
Change-Id: Iacc086bb566551225e7a21b639a1ad2ec257484f
---
M ccid_common/ccid_device.c
M ccid_common/ccid_device.h
M ccid_common/ccid_proto.c
M ccid_common/ccid_proto.h
M ccid_common/ccid_slot_fsm.c
M ccid_common/cuart.c
M ccid_common/cuart.h
M ccid_common/iso7816_3.c
M ccid_common/iso7816_fsm.c
M ccid_common/iso7816_fsm.h
M sysmoOCTSIM/command.c
M sysmoOCTSIM/command.h
M sysmoOCTSIM/cuart_driver_asf4_usart_async.c
M sysmoOCTSIM/dfu_descriptors.h
M sysmoOCTSIM/driver_init.c
M sysmoOCTSIM/driver_init.h
M sysmoOCTSIM/i2c_bitbang.c
M sysmoOCTSIM/i2c_bitbang.h
M sysmoOCTSIM/libosmo_emb.c
M sysmoOCTSIM/linuxlist_atomic.h
M sysmoOCTSIM/main.c
M sysmoOCTSIM/ncn8025.c
M sysmoOCTSIM/ncn8025.h
M sysmoOCTSIM/octsim_i2c.c
M sysmoOCTSIM/replace.h
M sysmoOCTSIM/talloc.c
M sysmoOCTSIM/talloc.h
M sysmoOCTSIM/usb_descriptors.c
M sysmoOCTSIM/usb_descriptors.h
M sysmoOCTSIM/usb_dfu.h
M sysmoOCTSIM/usb_start.c
M sysmoOCTSIM/usb_start.h
32 files changed, 1,684 insertions(+), 1,873 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ccid-firmware refs/changes/30/42330/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42330?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-Change-Id: Iacc086bb566551225e7a21b639a1ad2ec257484f
Gerrit-Change-Number: 42330
Gerrit-PatchSet: 2
Gerrit-Owner: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-CC: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Attention is currently required from: laforge.
Hello Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42331?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Verified+1 by Jenkins Builder
Change subject: fw: add git blame ignore file
......................................................................
fw: add git blame ignore file
Reformatting should not pollute blame, so ignore those revs.
Change-Id: I35b86f52d491c9e28ab0af9e3e3d4fd5f6dbd119
---
A .git-blame-ignore-revs
1 file changed, 2 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ccid-firmware refs/changes/31/42331/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/42331?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-Change-Id: I35b86f52d491c9e28ab0af9e3e3d4fd5f6dbd119
Gerrit-Change-Number: 42331
Gerrit-PatchSet: 2
Gerrit-Owner: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/42354?usp=email )
Change subject: osmo_io: Rewrite iofd_handle_send_completion() to fix multiple issues
......................................................................
osmo_io: Rewrite iofd_handle_send_completion() to fix multiple issues
Previous implementation had multiple issues, which this patch addresses:
* Didn't call user cb updating completed bytes for a given msg which had
a partial write.
* rc checks against "Incomplete write" were wrong, because rc was not
being decremented with previous msgs idxs being processed.
* Didn't take into account the write(0, fd, buf) = 0 valid user case for
regular files.
The rewrite also simplifies the logic by splitting the "rc < 0" (error) paths
from the "rc >= 0" (successful) paths.
Related: SYS#7842
Change-Id: Ia016e4df7be5e534a8212f7271caff9779e08eb1
---
M src/core/osmo_io.c
1 file changed, 56 insertions(+), 32 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/54/42354/1
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index 7c59a61..2a20405 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -509,6 +509,26 @@
}
}
+static void iofd_send_completion_cb(struct osmo_io_fd *iofd, int rc, const struct iofd_msghdr *msghdr, struct msgb *msg)
+{
+ switch (msghdr->action) {
+ case IOFD_ACT_WRITE:
+ if (iofd->io_ops.write_cb)
+ iofd->io_ops.write_cb(iofd, rc, msg);
+ break;
+ case IOFD_ACT_SENDTO:
+ if (iofd->io_ops.sendto_cb)
+ iofd->io_ops.sendto_cb(iofd, rc, msg, &msghdr->osa);
+ break;
+ case IOFD_ACT_SENDMSG:
+ if (iofd->io_ops.sendmsg_cb)
+ iofd->io_ops.sendmsg_cb(iofd, rc, msg);
+ break;
+ default:
+ OSMO_ASSERT(0);
+ }
+}
+
/*! completion handler: Internal function called by osmo_io_backend after a given I/O operation has completed
* \param[in] iofd I/O file-descriptor on which I/O has completed
* \param[in] rc return value of the I/O operation
@@ -518,18 +538,45 @@
{
int idx, i;
- /* Re-enqueue the complete msgb. */
- if (rc == -EAGAIN) {
- iofd_txqueue_enqueue_front(iofd, msghdr);
+ if (OSMO_UNLIKELY(rc < 0)) {
+ /* Re-enqueue the complete msgb. */
+ if (rc == -EAGAIN) {
+ iofd_txqueue_enqueue_front(iofd, msghdr);
+ return;
+ }
+
+ /* Propagate error for all msgbs to user cb: */
+ for (idx = 0; idx < msghdr->io_len; idx++) {
+ iofd_send_completion_cb(iofd, rc, msghdr, msghdr->msg[idx]);
+ msgb_free(msghdr->msg[idx]);
+ msghdr->msg[idx] = NULL;
+
+ /* The user can unregister/close the iofd during callback above. */
+ if (!IOFD_FLAG_ISSET(iofd, IOFD_FLAG_FD_REGISTERED))
+ break;
+ }
+ iofd_msghdr_free(msghdr);
return;
}
for (idx = 0; idx < msghdr->io_len; idx++) {
struct msgb *msg = msghdr->msg[idx];
- int chunk;
+ int chunk = OSMO_MIN(rc, msgb_length(msg));
+ /* chunk contains write completed bytes of msg */
- /* Incomplete write */
- if (rc > 0 && rc < msgb_length(msg)) {
+ /* If "rc == 0 and msgb_length(msg) > 0", then we had a partial
+ * write where OS wrote up to exact start point of current msg.
+ * In that case, we want to skip notifying the user and continue
+ * below on the "Incomplete write" path to delay further writing.
+ * If "rc == 0 and msgb_length(msg) == 0", the user specifically
+ * requested a write() of 0 bytes and 0 can be returned, which
+ * has its use cases for regular files. In that case user is
+ * interested in receiving a cb. */
+ if (OSMO_LIKELY(!(rc == 0 && msgb_length(msg) > 0)))
+ iofd_send_completion_cb(iofd, chunk, msghdr, msg);
+
+ /* Incomplete write: */
+ if (chunk < msgb_length(msg)) {
/* Keep msg with unsent data only. */
msgb_pull(msg, rc);
msghdr->iov[idx].iov_len = msgb_length(msg);
@@ -551,35 +598,12 @@
return;
}
- if (rc >= 0) {
- chunk = msgb_length(msg);
- if (rc < chunk)
- chunk = rc;
- } else {
- chunk = rc;
- }
-
- /* All other failure and success cases are handled here */
- switch (msghdr->action) {
- case IOFD_ACT_WRITE:
- if (iofd->io_ops.write_cb)
- iofd->io_ops.write_cb(iofd, chunk, msg);
- break;
- case IOFD_ACT_SENDTO:
- if (iofd->io_ops.sendto_cb)
- iofd->io_ops.sendto_cb(iofd, chunk, msg, &msghdr->osa);
- break;
- case IOFD_ACT_SENDMSG:
- if (iofd->io_ops.sendmsg_cb)
- iofd->io_ops.sendmsg_cb(iofd, chunk, msg);
- break;
- default:
- OSMO_ASSERT(0);
- }
-
msgb_free(msghdr->msg[idx]);
msghdr->msg[idx] = NULL;
+ /* At least current msg (idx) was written, maybe more: rc >= chunk */
+ rc -= chunk;
+
/* The user can unregister/close the iofd during callback above. */
if (!IOFD_FLAG_ISSET(iofd, IOFD_FLAG_FD_REGISTERED))
break;
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/42354?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ia016e4df7be5e534a8212f7271caff9779e08eb1
Gerrit-Change-Number: 42354
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Attention is currently required from: daniel, laforge, neels.
dexter has posted comments on this change by dexter. ( https://gerrit.osmocom.org/c/pysim/+/42353?usp=email )
Change subject: docs/put_key: add tutorial that explains how to manage global platform keys
......................................................................
Patch Set 2:
(3 comments)
File docs/put_key-tutorial.rst:
https://gerrit.osmocom.org/c/pysim/+/42353/comment/d02dc6e7_d739cea5?usp=em… :
PS2, Line 405: | 48-63 | reserved for `SCP03` |
I am not sure with this range. I found it in the following patch:
https://cgit.osmocom.org/pysim/commit/?h=neels/wip&id=52e84a0badd49518f1f5b…
However, when I try to provision a SCP81 key in this range, the card does not accept the key.
https://gerrit.osmocom.org/c/pysim/+/42353/comment/e399c246_e2140b13?usp=em… :
PS2, Line 462: +----------------+---------+---------------------------------------+
I am not sure with the purpose of those two keys. Its just an educated guess: We have the PSK for TLS and a DEK key in case we want to do key updates.
https://gerrit.osmocom.org/c/pysim/+/42353/comment/ebb60afd_8df5f58f?usp=em… :
PS2, Line 808:
I also tried to provision the key within the permitted range from the table above but it didn't work.
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/42353?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I163dfedca3df572cb8442e9a4a280e6c5b00327e
Gerrit-Change-Number: 42353
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: Jenkins Builder
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 13 Mar 2026 17:20:51 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
dexter has uploaded a new patch set (#2). ( https://gerrit.osmocom.org/c/pysim/+/42353?usp=email )
Change subject: docs/put_key: add tutorial that explains how to manage global platform keys
......................................................................
docs/put_key: add tutorial that explains how to manage global platform keys
With the increased interest in using GlobalPlatform features of
UICC and eUICCs (OTA-SMS, applets, etc.), also comes an increased
interest in how the related GlobalPlatform keys can be managed
(key rotation, adding/removing keysets from/to a Security Domain).
Unfortunately, many aspects of this topic are not immediately
obvious for the average user. Let's add a tutorial that contains
some practical examples to shine some light on the topic.
Related: SYS#7881
Change-Id: I163dfedca3df572cb8442e9a4a280e6c5b00327e
---
A docs/put_key-tutorial.rst
M docs/shell.rst
2 files changed, 843 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/53/42353/2
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/42353?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I163dfedca3df572cb8442e9a4a280e6c5b00327e
Gerrit-Change-Number: 42353
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-CC: Jenkins Builder