<matrixBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>EMAIL_NOTIFICATIONS</name><value>jenkins-notifications@lists.osmocom.org laforge@gnumonks.org</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>937228</buildingDurationMillis><executingTimeMillis>937228</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>8325</waitingDurationMillis><waitingTimeMillis>8325</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginpmaierfixgr _class='hudson.plugins.git.util.Build'><buildNumber>2045</buildNumber><marked><SHA1>e5f56dd35f1b2347a59f88b401b59997798fff67</SHA1><branch><SHA1>e5f56dd35f1b2347a59f88b401b59997798fff67</SHA1><name>refs/remotes/origin/pmaier/fixgr</name></branch></marked><revision><SHA1>e5f56dd35f1b2347a59f88b401b59997798fff67</SHA1><branch><SHA1>e5f56dd35f1b2347a59f88b401b59997798fff67</SHA1><name>refs/remotes/origin/pmaier/fixgr</name></branch></revision></refsremotesoriginpmaierfixgr><refsremotesoriginpmaierrcp _class='hudson.plugins.git.util.Build'><buildNumber>2131</buildNumber><marked><SHA1>ba01cb7afffa0141e4e9476d566366801773c416</SHA1><branch><SHA1>ba01cb7afffa0141e4e9476d566366801773c416</SHA1><name>refs/remotes/origin/pmaier/rcp</name></branch></marked><revision><SHA1>ba01cb7afffa0141e4e9476d566366801773c416</SHA1><branch><SHA1>ba01cb7afffa0141e4e9476d566366801773c416</SHA1><name>refs/remotes/origin/pmaier/rcp</name></branch></revision></refsremotesoriginpmaierrcp><originmaster _class='hudson.plugins.git.util.Build'><buildNumber>2192</buildNumber><marked><SHA1>728940efb2a4e5eb46d822dabc092756b32a2da8</SHA1><branch><SHA1>728940efb2a4e5eb46d822dabc092756b32a2da8</SHA1><name>origin/master</name></branch></marked><revision><SHA1>728940efb2a4e5eb46d822dabc092756b32a2da8</SHA1><branch><SHA1>728940efb2a4e5eb46d822dabc092756b32a2da8</SHA1><name>origin/master</name></branch></revision></originmaster><refsremotesoriginpmaierara-m _class='hudson.plugins.git.util.Build'><buildNumber>1320</buildNumber><marked><SHA1>8f289234f74045496c3752bf1bb9397302f3e912</SHA1><branch><SHA1>8f289234f74045496c3752bf1bb9397302f3e912</SHA1><name>refs/remotes/origin/pmaier/ara-m</name></branch></marked><revision><SHA1>8f289234f74045496c3752bf1bb9397302f3e912</SHA1><branch><SHA1>8f289234f74045496c3752bf1bb9397302f3e912</SHA1><name>refs/remotes/origin/pmaier/ara-m</name></branch></revision></refsremotesoriginpmaierara-m><refsremotesoriginpmaierkeepfiles _class='hudson.plugins.git.util.Build'><buildNumber>1353</buildNumber><marked><SHA1>3d815859830197b9c55e0a49a1bd2532f71285e1</SHA1><branch><SHA1>3d815859830197b9c55e0a49a1bd2532f71285e1</SHA1><name>refs/remotes/origin/pmaier/keepfiles</name></branch></marked><revision><SHA1>3d815859830197b9c55e0a49a1bd2532f71285e1</SHA1><branch><SHA1>3d815859830197b9c55e0a49a1bd2532f71285e1</SHA1><name>refs/remotes/origin/pmaier/keepfiles</name></branch></revision></refsremotesoriginpmaierkeepfiles><refsremotesoriginpmaierfixapdu _class='hudson.plugins.git.util.Build'><buildNumber>1421</buildNumber><marked><SHA1>568e8ae9b817ec2473907bfdd30870410890ffb0</SHA1><branch><SHA1>568e8ae9b817ec2473907bfdd30870410890ffb0</SHA1><name>refs/remotes/origin/pmaier/fixapdu</name></branch></marked><revision><SHA1>568e8ae9b817ec2473907bfdd30870410890ffb0</SHA1><branch><SHA1>568e8ae9b817ec2473907bfdd30870410890ffb0</SHA1><name>refs/remotes/origin/pmaier/fixapdu</name></branch></revision></refsremotesoriginpmaierfixapdu><refsremotesoriginpmaieraramtest _class='hudson.plugins.git.util.Build'><buildNumber>1467</buildNumber><marked><SHA1>6a555ac5ccad9ee2cae5e0ba247990f824f8e9b6</SHA1><branch><SHA1>6a555ac5ccad9ee2cae5e0ba247990f824f8e9b6</SHA1><name>refs/remotes/origin/pmaier/aramtest</name></branch></marked><revision><SHA1>6a555ac5ccad9ee2cae5e0ba247990f824f8e9b6</SHA1><branch><SHA1>6a555ac5ccad9ee2cae5e0ba247990f824f8e9b6</SHA1><name>refs/remotes/origin/pmaier/aramtest</name></branch></revision></refsremotesoriginpmaieraramtest><refsremotesoriginosmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1816</buildNumber><marked><SHA1>e4ea1c997348370ba1d7415bfd926ac873b58c87</SHA1><branch><SHA1>e4ea1c997348370ba1d7415bfd926ac873b58c87</SHA1><name>refs/remotes/origin/osmith/wip</name></branch></marked><revision><SHA1>e4ea1c997348370ba1d7415bfd926ac873b58c87</SHA1><branch><SHA1>e4ea1c997348370ba1d7415bfd926ac873b58c87</SHA1><name>refs/remotes/origin/osmith/wip</name></branch></revision></refsremotesoriginosmithwip><refsremotesoriginpmaierotatest _class='hudson.plugins.git.util.Build'><buildNumber>2022</buildNumber><marked><SHA1>f57f047c627392c40fbe349b1a73ccebe05dc005</SHA1><branch><SHA1>f57f047c627392c40fbe349b1a73ccebe05dc005</SHA1><name>refs/remotes/origin/pmaier/otatest</name></branch></marked><revision><SHA1>f57f047c627392c40fbe349b1a73ccebe05dc005</SHA1><branch><SHA1>f57f047c627392c40fbe349b1a73ccebe05dc005</SHA1><name>refs/remotes/origin/pmaier/otatest</name></branch></revision></refsremotesoriginpmaierotatest><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>402</buildNumber><marked><SHA1>4f888a0414101dee4f20aa12579491fcc71707b3</SHA1><branch><SHA1>4f888a0414101dee4f20aa12579491fcc71707b3</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>4f888a0414101dee4f20aa12579491fcc71707b3</SHA1><branch><SHA1>4f888a0414101dee4f20aa12579491fcc71707b3</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>728940efb2a4e5eb46d822dabc092756b32a2da8</SHA1><branch><SHA1>728940efb2a4e5eb46d822dabc092756b32a2da8</SHA1><name>origin/master</name></branch></lastBuiltRevision><remoteUrl>https://gerrit.osmocom.org/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2192</displayName><duration>937228</duration><estimatedDuration>940910</estimatedDuration><fullDisplayName>master-pysim #2192</fullDisplayName><id>2192</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2192</number><queueId>149932</queueId><result>SUCCESS</result><timestamp>1782141308761</timestamp><url>https://jenkins.osmocom.org/jenkins/view/no-generated/job/master-pysim/2192/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>38f93d974b3a0e4696f6aa5519cf483d521a2eb5</commitId><timestamp>1781997474000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>SmspTpScAddr: fix SMSP record length and alpha_id padding

apply_val() was re-encoding the SMSP with the minimum total_len of 28,
which produces a 28-byte body with no alpha_id field.  After a DER
round-trip, the profile machinery re-pads the body to the original
record length using the template's fill pattern, which may not be 0xFF.
Those non-0xFF fill bytes end up in the alpha_id area, and GSM 7-bit
decoding then fails with a KeyError when the modified profile is read
back.

Fix by:
- setting alpha_id = '' so the field is present but empty
- setting f_smsp.rec_len = 42 (28 fixed bytes + 14 bytes of alpha_id
  padding) so the re-encoded body carries 0xFF-padded alpha_id space
  and the efFileSize in the fileDescriptor stays consistent
- passing total_len=f_smsp.rec_len to encode_record_bin() so the
  alpha_id area is actually padded to that length

Change-Id: Ief6e02517f3e96158a2509d763b88aec4bd5a296
Jenkins: skip-card-test
</comment><date>2026-06-21 06:17:54 +0700</date><id>38f93d974b3a0e4696f6aa5519cf483d521a2eb5</id><msg>SmspTpScAddr: fix SMSP record length and alpha_id padding</msg><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/unittests/test_configurable_parameters.py</affectedPath><affectedPath>tests/unittests/xo/test_configurable_parameters</affectedPath><commitId>b576e8fcff3f286158c986844c10e1529cd171b1</commitId><timestamp>1782132532000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>test_configurable_parameters.py: add tests for new parameters

For:
SmspTpScAddr
MilenageRotation
MilenageXoringConstants
TuakNrOfKeccak

Change-Id: Iecbea14fe31a9ee08d871dcde7f295d26d7bd001
Jenkins: skip-card-test
</comment><date>2026-06-22 19:48:52 +0700</date><id>b576e8fcff3f286158c986844c10e1529cd171b1</id><msg>test_configurable_parameters.py: add tests for new parameters</msg><path><editType>edit</editType><file>tests/unittests/test_configurable_parameters.py</file></path><path><editType>edit</editType><file>tests/unittests/xo/test_configurable_parameters</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>861ed0a1d8b75e72a0d930ed66444fbc36973567</commitId><timestamp>1782132989000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>add comment about not updating existing key_usage_qualifier

Change-Id: Ie23ae5fde17be6b37746784bf1601b4d0874397a
Jenkins: skip-card-test
</comment><date>2026-06-22 19:56:29 +0700</date><id>861ed0a1d8b75e72a0d930ed66444fbc36973567</id><msg>add comment about not updating existing key_usage_qualifier</msg><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>cfe2b94f6758e3708bf550310c98fde0e7427a18</commitId><timestamp>1782132989000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>saip SmspTpScAddr.get_values_from_pes: allow empty values

Change-Id: Ibbdd08f96160579238b50699091826883f2e9f5a
Jenkins: skip-card-test
</comment><date>2026-06-22 19:56:29 +0700</date><id>cfe2b94f6758e3708bf550310c98fde0e7427a18</id><msg>saip SmspTpScAddr.get_values_from_pes: allow empty values</msg><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>pySim/esim/saip/personalization.py</affectedPath><commitId>728940efb2a4e5eb46d822dabc092756b32a2da8</commitId><timestamp>1782132989000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>saip: add numeric_base indicator to ConfigurableParameter

By default, numeric_base = None, to indicate that there are no explicit
limitations on the number space.

For parameters that are definitely decimal, set numeric_base = 10.
For definitely hexadecimal, set numeric_base = 16.

Do the same for ConfigurableParameter as well as ParamSource, so callers
can match them up: if a parameter is numeric_base = 10, then omit
sources that are numeric_base = 16, and vice versa.

Change-Id: Ib0977bbdd9a85167be7eb46dd331fedd529dae01
Jenkins: skip-card-test
</comment><date>2026-06-22 19:56:29 +0700</date><id>728940efb2a4e5eb46d822dabc092756b32a2da8</id><msg>saip: add numeric_base indicator to ConfigurableParameter</msg><path><editType>edit</editType><file>pySim/esim/saip/personalization.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2192</number><url>https://jenkins.osmocom.org/jenkins/view/no-generated/job/master-pysim/JOB_TYPE=card-test,a1=default,a3=default,a4=default,label=simtester/2192/</url></run><run><number>2192</number><url>https://jenkins.osmocom.org/jenkins/view/no-generated/job/master-pysim/JOB_TYPE=distcheck,a1=default,a3=default,a4=default,label=osmocom-master/2192/</url></run><run><number>2192</number><url>https://jenkins.osmocom.org/jenkins/view/no-generated/job/master-pysim/JOB_TYPE=docs,a1=default,a3=default,a4=default,label=osmocom-master/2192/</url></run><run><number>2192</number><url>https://jenkins.osmocom.org/jenkins/view/no-generated/job/master-pysim/JOB_TYPE=pylint,a1=default,a3=default,a4=default,label=osmocom-master/2192/</url></run><run><number>2192</number><url>https://jenkins.osmocom.org/jenkins/view/no-generated/job/master-pysim/JOB_TYPE=test,a1=default,a3=default,a4=default,label=osmocom-master/2192/</url></run></matrixBuild>