{
  "_class" : "hudson.model.FreeStyleBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.triggers.TimerTrigger$TimerTriggerCause",
          "shortDescription" : "Started by timer"
        }
      ]
    },
    {
      "_class" : "hudson.model.ParametersAction",
      "parameters" : [
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "BRANCH",
          "value" : "master"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "EMAIL_NOTIFICATIONS",
          "value" : "jenkins-notifications@lists.osmocom.org"
        }
      ]
    },
    {
      "_class" : "jenkins.metrics.impl.TimeInQueueAction",
      "blockedDurationMillis" : 0,
      "blockedTimeMillis" : 0,
      "buildableDurationMillis" : 0,
      "buildableTimeMillis" : 0,
      "buildingDurationMillis" : 470669,
      "executingTimeMillis" : 470669,
      "executorUtilization" : 1.0,
      "subTaskCount" : 0,
      "waitingDurationMillis" : 0,
      "waitingTimeMillis" : 0
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 580,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
            "branch" : [
              {
                "SHA1" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
            "branch" : [
              {
                "SHA1" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
                "name" : "origin/master"
              }
            ]
          }
        },
        "refs/remotes/origin/osmith/wip" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 5,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b52b9704ed57386959a73c98e946c756e0188e6c",
            "branch" : [
              {
                "SHA1" : "b52b9704ed57386959a73c98e946c756e0188e6c",
                "name" : "refs/remotes/origin/osmith/wip"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b52b9704ed57386959a73c98e946c756e0188e6c",
            "branch" : [
              {
                "SHA1" : "b52b9704ed57386959a73c98e946c756e0188e6c",
                "name" : "refs/remotes/origin/osmith/wip"
              }
            ]
          }
        },
        "refs/remotes/origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 253,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "c7c48718ba3637e29fc6a7af4e2e39ba0679bb8d",
            "branch" : [
              {
                "SHA1" : "c7c48718ba3637e29fc6a7af4e2e39ba0679bb8d",
                "name" : "refs/remotes/origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "c7c48718ba3637e29fc6a7af4e2e39ba0679bb8d",
            "branch" : [
              {
                "SHA1" : "c7c48718ba3637e29fc6a7af4e2e39ba0679bb8d",
                "name" : "refs/remotes/origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
        "branch" : [
          {
            "SHA1" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "https://gerrit.osmocom.org/pysim"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : false,
  "description" : null,
  "displayName" : "#580",
  "duration" : 470669,
  "estimatedDuration" : 470487,
  "executor" : null,
  "fullDisplayName" : "simtester-sanitize #580",
  "id" : "580",
  "inProgress" : false,
  "keepLog" : false,
  "number" : 580,
  "queueId" : 104913,
  "result" : "SUCCESS",
  "timestamp" : 1777509780805,
  "url" : "https://jenkins.osmocom.org/jenkins/job/simtester-sanitize/580/",
  "builtOn" : "simtester",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "pySim/esim/saip/personalization.py"
        ],
        "commitId" : "5f1c7d603c51e9fe495bc8db6317dd5b60f3c1cd",
        "timestamp" : 1777068914000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "personalization: make AlgorithmID a new EnumParam\u000a\u000aThe AlgorithmID has a few preset values, and hardly anyone knows which\u000ais which. So instead of entering '1', '2' or '3', make it work with\u000aprededined values 'Milenage', 'TUAK' and 'usim-test'.\u000a\u000aImplement the enum value part abstractly in new EnumParam.\u000a\u000aMake AlgorithmID a subclass of EnumParam and define the values as from\u000apySim/esim/asn1/saip/PE_Definitions-3.3.1.asn\u000a\u000aRelated: SYS#6768\u000aChange-Id: I71c2ec1b753c66cb577436944634f32792353240\u000aJenkins: skip-card-test\u000a",
        "date" : "2026-04-25 05:15:14 +0700",
        "id" : "5f1c7d603c51e9fe495bc8db6317dd5b60f3c1cd",
        "msg" : "personalization: make AlgorithmID a new EnumParam",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/esim/saip/personalization.py"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "pySim/esim/saip/personalization.py"
        ],
        "commitId" : "393de033d3ae5f7f5dec5672da8124dc8eadb73e",
        "timestamp" : 1777068914000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "personalization: add get_typical_input_len() to ConfigurableParameter\u000a\u000aThe aim is to tell a user interface how wide an input text field should\u000abe chosen to be convenient -- ideally showing the entire value in all\u000acases, but not too huge for fields that have no sane size limit.\u000a\u000aChange-Id: I2568a032167a10517d4d75d8076a747be6e21890\u000aJenkins: skip-card-test\u000a",
        "date" : "2026-04-25 05:15:14 +0700",
        "id" : "393de033d3ae5f7f5dec5672da8124dc8eadb73e",
        "msg" : "personalization: add get_typical_input_len() to ConfigurableParameter",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/esim/saip/personalization.py"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "pySim/esim/saip/personalization.py",
          "pySim/esim/saip/__init__.py"
        ],
        "commitId" : "cd4b01f67e47040e5ed216201b08f0fa39b668c4",
        "timestamp" : 1777068914000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "personalization: fix SdKey.apply_val() implementation\u000a\u000a'securityDomain' elements are decoded to ProfileElementSD instances,\u000awhich keep higher level representations of the key data apart from the\u000adecoded[] lists.\u000a\u000aSo far, apply_val() was dropping binary values in decoded[], which does\u000anot work, because ProfileElementSD._pre_encode() overwrites\u000aself.decoded[] from the higher level representation.\u000a\u000aImplement using\u000a- ProfileElementSD.find_key() and SecurityDomainKeyComponent to modify\u000a  an exsiting entry, or\u000a- ProfileElementSD.add_key() to create a new entry.\u000a\u000aBefore this patch, SdKey parameters seemed to patch PES successfully,\u000abut their modifications did not end up in the encoded DER.\u000a\u000a(BTW, this does not fix any other errors that may still be present in\u000athe various SdKey subclasses, patches coming up.)\u000a\u000aRelated: SYS#6768\u000aChange-Id: I07dfc378705eba1318e9e8652796cbde106c6a52\u000aJenkins: skip-card-test\u000a",
        "date" : "2026-04-25 05:15:14 +0700",
        "id" : "cd4b01f67e47040e5ed216201b08f0fa39b668c4",
        "msg" : "personalization: fix SdKey.apply_val() implementation",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/esim/saip/personalization.py"
          },
          {
            "editType" : "edit",
            "file" : "pySim/esim/saip/__init__.py"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "pySim/global_platform/uicc.py"
        ],
        "commitId" : "1167b65e2a758be1c987844fe2d4ac9fe999b089",
        "timestamp" : 1777068914000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "comment in uicc.py on Security Domain Keys: add SCP81\u000a\u000aChange-Id: Ib0205880f58e78c07688b4637abd5f67ea0570d1\u000aJenkins: skip-card-test\u000a",
        "date" : "2026-04-25 05:15:14 +0700",
        "id" : "1167b65e2a758be1c987844fe2d4ac9fe999b089",
        "msg" : "comment in uicc.py on Security Domain Keys: add SCP81",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/global_platform/uicc.py"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "pySim/transport/__init__.py",
          "tests/pySim-shell_test/apdu/test_apdu.script"
        ],
        "commitId" : "f1609424de1c2508ba57f7aa06e865c500884a53",
        "timestamp" : 1777491267000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/laforge",
          "fullName" : "laforge"
        },
        "authorEmail" : "laforge@osmocom.org",
        "comment" : "pySim/transport: fix GET RESPONSE behaviour\u000a\u000aThe current behavior we implement in the method __send_apdu_T0 is\u000aincomplete. Some details discussed in ETSI TS 102 221,\u000asection 7.3.1.1.4, clause 4 seem to be not fully implemented. We\u000amay also end up sending a GET RESPONSE in other APDU cases than\u000acase 4 (the only case that uses the GET RESPONSE command).\u000a\u000aRelated: OS#6970\u000aChange-Id: I26f0566af0cdd61dcc97f5f502479dc76adc37cc\u000a",
        "date" : "2026-04-29 19:34:27 +0000",
        "id" : "f1609424de1c2508ba57f7aa06e865c500884a53",
        "msg" : "pySim/transport: fix GET RESPONSE behaviour",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/transport/__init__.py"
          },
          {
            "editType" : "edit",
            "file" : "tests/pySim-shell_test/apdu/test_apdu.script"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "tests/pySim-prog_test/Wavemobile-SIM.ok",
          "pySim/legacy/cards.py",
          "tests/pySim-prog_test/Fairwaves-SIM.ok"
        ],
        "commitId" : "8fa7727a14db2472ccf03f1fe147ee653a84f45d",
        "timestamp" : 1777491554000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/laforge",
          "fullName" : "laforge"
        },
        "authorEmail" : "laforge@osmocom.org",
        "comment" : "pySim-prog/cards: fix programming of EF.SMSP\u000a\u000aThe legacy code found in legacy/cards.py does not use the modern\u000aconstruct based encoder (pySim-read uses it). The card classes either\u000ause their own implementation of update_smsp or use the generic method\u000aprovided by the SimCard class. The latter one is true for FairwavesSIM\u000aand WavemobileSim.\u000a\u000aUnfortunately the implementation found in the SimCard is wrong. It\u000aadds padding at the end of the file instead of the beginning. This\u000acompletely messes up the contents of EF.SMSP for the cards using this\u000amethod. To fix this, let's use the leftpad feature provided by\u000athe update_record. This will ensure a correct alignment of the file\u000acontents.\u000a\u000aRelated: SYS#7765\u000aChange-Id: Ie112418f1f1461762d61365d3863181ca6be7245\u000a",
        "date" : "2026-04-29 19:39:14 +0000",
        "id" : "8fa7727a14db2472ccf03f1fe147ee653a84f45d",
        "msg" : "pySim-prog/cards: fix programming of EF.SMSP",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/legacy/cards.py"
          },
          {
            "editType" : "edit",
            "file" : "tests/pySim-prog_test/Fairwaves-SIM.ok"
          },
          {
            "editType" : "edit",
            "file" : "tests/pySim-prog_test/Wavemobile-SIM.ok"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "pySim/ts_51_011.py"
        ],
        "commitId" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
        "timestamp" : 1777491554000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/laforge",
          "fullName" : "laforge"
        },
        "authorEmail" : "laforge@osmocom.org",
        "comment" : "ts_51_011/EF.SMSP: fix handling of 'alpha_id' field\u000a\u000aThe field 'alpha_id' is technically not an optional field, even though\u000athe specification describes it as optional. Once the card manufacturer\u000adecides that the field should be present, it must be always present and\u000avice versa.\u000a\u000a(see code comment for a more detailed description)\u000a\u000aRelated: SYS#7765\u000aChange-Id: I0ec99b2648b22c56f9145345e4cd8776f9217701\u000a",
        "date" : "2026-04-29 19:39:14 +0000",
        "id" : "593bfa09119383d23b9e3385fc2d35a036a796c5",
        "msg" : "ts_51_011/EF.SMSP: fix handling of 'alpha_id' field",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "pySim/ts_51_011.py"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/laforge",
      "fullName" : "laforge"
    },
    {
      "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
      "fullName" : "Vadim Yanitskiy"
    }
  ]
}