Hoernchen has uploaded this change for review. ( https://gerrit.osmocom.org/c/simtrace2/+/43124?usp=email )
Change subject: firmware: iso7816_3: fix F/D ratio for Di 8 and 9
......................................................................
firmware: iso7816_3: fix F/D ratio for Di 8 and 9
iso7816_3_compute_fd_ratio() multiplied F by D for every d_index >= 8,
presumably because the upper half of ISO 7816-3 Table 8 encodes 1/D.
But 7816-3 2006 and 1997 differ!
That assumption is only true for the range 1010..1111, which in the
2006 version is RFU. Indices 1000 and 1001 are Di = 12 and Di = 20,
see iso7816_3_di_table[].
So right now Fi=372/Di=12 -> 372 * 12 = 4464 instead of 372 / 12 =
31.
In the cemu value is rejected in emu_update_fidi()
and the old baud rate is silently kept.
In the sniffer update_fidi() programs US_FIDI as
4464 & 0x7ff = 368, which is garbage.
Use F/D for indices 1..9 and keep the legacy 1/D reading only for the RFU
range, where we cant really do anything useful anyway.
Change-Id: I44d6451d8b04aea2b0db7291b06a812afe84e52f
---
M firmware/libcommon/source/iso7816_fidi.c
1 file changed, 7 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/simtrace2 refs/changes/24/43124/1
diff --git a/firmware/libcommon/source/iso7816_fidi.c b/firmware/libcommon/source/iso7816_fidi.c
index 024663b..4e87dbd 100644
--- a/firmware/libcommon/source/iso7816_fidi.c
+++ b/firmware/libcommon/source/iso7816_fidi.c
@@ -48,9 +48,13 @@
if (d == 0)
return -EINVAL;
- /* See table 7 of ISO 7816-3: From 1000 on we divide by 1/d,
- * which equals a multiplication by d */
- if (d_index < 8)
+ /* DI defined in Table 8 of ISO/IEC 7816-3:2006
+ * has values 0001..1001 as div 1, 2, 4, 8, 16, 32, 64, 12, 20
+ * so indices 1..9 are all divisors and the ratio is F/D.
+ * But Indices 1010..1111 are RFU in the 2006 edition!
+ * 1997 used those for 1/2 .. 1/64, where dividing by 1/d equals multiplying by d.
+ * Keep that legacy interpretation for the RFU range only. */
+ if (d_index < 10)
ret = f / d;
else
ret = f * d;
--
To view, visit https://gerrit.osmocom.org/c/simtrace2/+/43124?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: simtrace2
Gerrit-Branch: master
Gerrit-Change-Id: I44d6451d8b04aea2b0db7291b06a812afe84e52f
Gerrit-Change-Number: 43124
Gerrit-PatchSet: 1
Gerrit-Owner: Hoernchen <ewild(a)sysmocom.de>
Attention is currently required from: dexter.
jolly has posted comments on this change by jolly. ( https://gerrit.osmocom.org/c/onomondo-ipa/+/43035?usp=email )
Change subject: V1.2: Add eimTransactionId to IpaEuiccDataRequest and IpaEuiccDataResponse
......................................................................
Patch Set 2:
(1 comment)
File src/ipa/libipa/proc_euicc_data_req.c:
https://gerrit.osmocom.org/c/onomondo-ipa/+/43035/comment/657e4f7e_46aea480… :
PS1, Line 211:
> I think at this point it is too late to set the eimTransactionId. […]
Done
--
To view, visit https://gerrit.osmocom.org/c/onomondo-ipa/+/43035?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: onomondo-ipa
Gerrit-Branch: master
Gerrit-Change-Id: I34db78c4eb8461c154459204ec13a2184085e96a
Gerrit-Change-Number: 43035
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Jul 2026 13:14:58 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: dexter <pmaier(a)sysmocom.de>
Attention is currently required from: dexter, jolly.
Hello Jenkins Builder, dexter,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/onomondo-ipa/+/43035?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: V1.2: Add eimTransactionId to IpaEuiccDataRequest and IpaEuiccDataResponse
......................................................................
V1.2: Add eimTransactionId to IpaEuiccDataRequest and IpaEuiccDataResponse
Add eimTransactionId to IpaEuiccDataRequest and to
IpaEuiccDataResponseError or IpaEuiccData of IpaEuiccDataResponse.
The IPA takes the transaction ID from the request, if exists, and sets
it in the response. The eIM can use it to match the request with the
successful or unsuccessful outcome.
Note that there is no error handling if the requested data fails to be
received from eUICC. This means that there is no transaction ID set at
IpaEuiccDataResponseError.
Reference: SGP.32 Section 2.11.1.2
Related: SYS#8101
Change-Id: I34db78c4eb8461c154459204ec13a2184085e96a
---
M asn1/SGP32Definitions.asn
M src/ipa/libasn/CMakeLists.txt
M src/ipa/libasn/IpaEuiccData.c
M src/ipa/libasn/IpaEuiccData.h
A src/ipa/libasn/IpaEuiccDataErrorCode.c
A src/ipa/libasn/IpaEuiccDataErrorCode.h
M src/ipa/libasn/IpaEuiccDataRequest.c
M src/ipa/libasn/IpaEuiccDataRequest.h
M src/ipa/libasn/IpaEuiccDataResponse.c
M src/ipa/libasn/IpaEuiccDataResponse.h
A src/ipa/libasn/IpaEuiccDataResponseError.c
A src/ipa/libasn/IpaEuiccDataResponseError.h
M src/ipa/libipa/proc_euicc_data_req.c
13 files changed, 267 insertions(+), 44 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/onomondo-ipa refs/changes/35/43035/2
--
To view, visit https://gerrit.osmocom.org/c/onomondo-ipa/+/43035?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: onomondo-ipa
Gerrit-Branch: master
Gerrit-Change-Id: I34db78c4eb8461c154459204ec13a2184085e96a
Gerrit-Change-Number: 43035
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>