Skip to content

Loading builds...

Changes

#45 (Jul 24, 2026, 3:40:06 PM)

contrib/onomondo-eim.sh: add option to set a mnesia dir

The onomondo-eim.sh startscript we provide in the contrib directory
does not set the "mnesia dir" parameter when starting the erlang VM.
Let's add a commandline parameter and a default location to the
script.

Related: SYS#8100
Change-Id: I6a13a631da7903db4766168380ce727127a4d47b
pmaier@sysmocom.de at

#43 (Jul 23, 2026, 2:15:08 PM)

esipa_middleware: log incompatible requests

The esipa_middleware filters incompatible requests by their protocol
version (X-ADMIN-PROTOCOL), but there is no error logged in that
case. Let's make sure that incompatible requests are brought to the
operator's attention.

Related: SYS#8100
Change-Id: Icadc2434794cbd0f7205181a8d506e1d24ee9d0d
pmaier@sysmocom.de at

#40 (Jul 21, 2026, 1:50:08 PM)

contrib/tryme_euiccDataRequest: fixup example tag string

The eUICC data request takes a string with TLV tags as input. The
example in this example still uses tags from SGP.32 V.1.0.1, let's
update the string so that it is compliant with SGP.32 V.1.2.

(see also SGP.32, section 2.11.1.2)

Change-Id: I5be04c954330638d3e7d78e8f5f280bebb707efa
Related: SYS:8100
pmaier@sysmocom.de at

#31 (Jul 14, 2026, 11:55:08 AM)

es9p_client: convert InitiateAuthenticationOkEsipa to match SGP.32 V.1.2

In SGP.32 V.1.0.1, InitiateAuthenticationOkEsipa is almost identical to
SGP.22 InitiateAuthenticationOkEs9. However, in SGP.32 V.1.2, the member
euiccCiPKIdToBeUsed is renamed to euiccCiPKIdentifierToBeUsed. This means
it is no longer possible to pass InitiateAuthenticationOkEsipa as
InitiateAuthenticationOkEs9 to ES9+ directly. Instead we have to re-build
the the InitiateAuthenticationOkEs9 from the contents of
InitiateAuthenticationOkEsipa.

Change-Id: I44c60a2f0d1129093ea67908d2eed167643a4a87
Related: SYS#8100
laforge at
esipa_asn1_handler: re-align to SGP.32 section 2.11.2 and section 5.14.6

Section 2.11.2: eIM package result (EuiccPackageResult case) is now concatenated with PendingNotificationList instead of RetrieveNotificationsListResponse
Section 5.14.6: ESipa.ProvideEimPackageResult: Significant change in parameters

Change-Id: Ic0872edefc1844166943c60528557c6b7a6602ce
Related: SYS#8100
laforge at
esipa_rest_utils: re-align to SGP.32 Section 2.11.2

Section 2.11.2: rename EuiccPackageResultDataSigned.configureAutoEnableResult to EuiccPackageResultDataSigned.configureImmediateEnableResult

Change-Id: Ib4e6a4b4cb4d26a391346169b9047515496dd308
Related: SYS#8100
laforge at
rest_api: move "required" member to the correct level

In some locations in the JSON schema files we find the "required"
member on the same level as the members of "properties" (likewise
"items"). This is incorrect, the "required" member should always
be on the same level as the "properties" or "items" member.

(At the moment the JSON schema files serve only documentation
purposes, they are not used to do any actual validation yet.)

Change-Id: I07d51d0e809a718144bd51a6540ab51187bb4daa
Related: SYS#8100
laforge at

#29 (Jul 13, 2026, 11:00:07 AM)

Add Makefile and start script for installation

The Makefile allows to compile and install onomondo-eim. This allows to
build it with osmo-dev and therefore build and run it with testenv of
osmo-ttcn3-hacks.

The start script allows to run onomondo-eim without starting erlang by
hand. It was taken from osmo-s1gw repository and log-level option was
added.

The program name changed from 'onomondo_eim_release' to 'onomodo-eim'.

Related: SYS#8100
Change-Id: I4f038c0901c23cbe18ef62eb546e264d0b924cc7
Andreas Eversberg at

#23 (Jul 8, 2026, 10:05:06 AM)

eim_cfg: set eimSupportedProtocol and indirectProfileDownload flags

The members eimSupportedProtocol and indirectProfileDownload were
added as optional members to EimConfigurationData with SGP.32 V.1.2.

Since our eIM implementation only supports eIM Package Retrieval via
HTTPs and the Indirect Profile Download procedure is the only Profile
Download procedure we currently support, the EimConfigurationData
should reflect those properties correctly.

(The EimConfigurationData is not announced actively by the eIM, but
this eIM implementation contains a generator to help with the encoding
of the EimConfigurationData that is programmed into the eUICC)

Change-Id: I4ce236fb1bfb8a3790191be95ab0958dce13a9d8
Related: SYS#8100
pmaier@sysmocom.de at

#22 (Jul 8, 2026, 9:40:06 AM)

esipa_asn1_handler: fix transactionId handling

The transactionId member is now called eimTransactionId. It is also
an optional member.

Change-Id: I1340e0c7aed091e8e5a5089ebd6e524512408cf7
Related: SYS#8100
pmaier@sysmocom.de at

#21 (Jul 8, 2026, 9:30:06 AM)

esipa_asn1_codec: add special handling for ProvideEimPackageResultResponse

In SGP.32 V.1.2 ProvideEimPackageResultResponse is defined as a CHOICE.
This means that this struct now also requires special handling.

Change-Id: I859a175cc28a18ea9334d9b2cf233294fdc95b76
Related: SYS#8100
pmaier@sysmocom.de at

#19 (Jul 6, 2026, 5:15:09 PM)

asn1/SGP32Definitions: upgrade ASN.1 spec to V.1.2

This replaces the existing SGP.32 V.1.0.1 ASN.1 spec with the
unmodified, official SGP.32 V.1.2 spec.

Unfortunately V.1.2 is not backward compatible to V.1.0.1. This means
that the eIM application will still compile, but the result will be
non-functional. The incompatibility problems will be addressed in
the follow-up patches of this patchset.

Change-Id: Id4d217296f43846aa39f5dc7076465e2dab72a7c
Related: SYS#8100
pmaier@sysmocom.de at
asn1/SGP32Definitions: apply workarounds

- Some ASN.1 structs from SGP.22 are re-defined under the same name by SGP.32.
  This leads to name clashes, which most ASN.1 compilers have problems with.
  Prefixing the re-defined struct in SGP.32 with "SGP32-" solves the problem.

- The erlang asn1ct ASN.1 compiler seems to misinterpret the ASN.1 spec when
  a context specific tag is used (redundently) on a child struct definition
  and in the parent definition at the same time. Removing te context specific
  tag on the child struct definition solves the problem.

Change-Id: Id90b005fc3c8c8f737b0c740d4c067f90842a1fe
Related: SYS#8100
pmaier@sysmocom.de at

#10 (Jun 29, 2026, 10:10:07 AM)

src/utils.erl: format with erlfmt

Keep the file consistent with the rest of the codebase by running
'rebar3 fmt -w' on it.

Change-Id: I806c912a1bc82c26ecd23759a927f22328e743b9
Oliver Smith at
contrib/jenkins: run 'rebar3 fmt --check'

The pull request "v0.0.2" had a patch that formatted everything with
erlfmt. Let's run it in CI to keep the style consistent.

Related: https://github.com/onomondo/onomondo-eim/pull/10/commits/8bafdb3839d868d6bc18499617761d9acd73d2ad
Change-Id: I271c90dace6e7b6f052b38054815e6dfcbfa60f5
Oliver Smith at