Skip to content
        Changes
        
- pySim-shell: add a logger class to centralize logging
                —
                laforge /
                detail
- commands: do not use b2h with a string
                —
                pmaier@sysmocom.de /
                detail
- Pass pylint 3.3.4 from debian trixie
                —
                Oliver Smith /
                detail
- ts_102_222: Implement support for RESIZE FILE for an EF
                —
                laforge /
                detail
- docs/Makefile: don't forward shrink to sphinx
                —
                Oliver Smith /
                detail
- gitignore: add manuals related files
                —
                Oliver Smith /
                detail
- fix SimCardCommands.run_gsm(): always use CLA=0xa0
                —
                laforge /
                detail
- SimCardCommands.run_gsm(): use send_apdu_checksw()
                —
                laforge /
                detail
- pySim-shell.py: add a command for RUN GSM ALGORITHM
                —
                laforge /
                detail
- pySim-shell: add cardinfo command
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog.py: fix SyntaxWarning: using is with a literal
                —
                Vadim Yanitskiy /
                detail
- filesystem: define more convenient codec for EF.ACC
                —
                Vadim Yanitskiy /
                detail
- setup.py: add missing pySim-trace.py' to scripts[]
                —
                Vadim Yanitskiy /
                detail
- ts_51_011: fix EF_ServiceTable: use self for static method
                —
                laforge /
                detail
- Add very basic profile for R-UIM (CDMA) cards
                —
                laforge /
                detail
- pySim-shell: fix compatibility problem with cmd2 >= 2.0.0 (Settable)
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: fix compatibility problem with cmd2 >= 2.0.0 (include_ipy)
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: fix compatibility problem with cmd2 >= 2.3.0 (bg)
                —
                pmaier@sysmocom.de /
                detail
- requirements.txt: allow cmd2 versions greater than 1.5
                —
                pmaier@sysmocom.de /
                detail
- setup: add missing pyyaml to setup.py and README.md
                —
                pmaier@sysmocom.de /
                detail
- README.md: add missing pycryptodome to dependency list
                —
                pmaier@sysmocom.de /
                detail
- Fix pylint errors
                —
                Oliver Smith /
                detail
- contrib/jenkins.sh: print pylint version before running it
                —
                Oliver Smith /
                detail
- setup.py: add missing packages for pySim-trace.py
                —
                Vadim Yanitskiy /
                detail
- ts_51_011: Add sst_service_[de]{activate,allocate} shell commands
                —
                laforge /
                detail
- ts_31_102: Extend from Rel16 to Rel17
                —
                laforge /
                detail
- ts_51_011: Fix FID of EF.BCCH
                —
                laforge /
                detail
- ts_51_011: Fix EF.Phase FID (it's 6FAE, not 6FA3)
                —
                laforge /
                detail
- ts_31_102: Fix EF.NIA FID
                —
                laforge /
                detail
- ts_31_102: Fix FID of EF.OPL5G (it's 4F08 instead of 6F08)
                —
                laforge /
                detail
- ts_31_102: Fix FID + SFI of EF.MCHPPLMN
                —
                laforge /
                detail
- ts_31_102: Add DF.SAIP support
                —
                laforge /
                detail
- cards.py: support ATR-based detection of sysmoISIM-SJA5
                —
                laforge /
                detail
- docs: add SUPI/SUCI usage example
                —
                laforge /
                detail
- cards: Add support for Gialer SIM cards
                —
                laforge /
                detail
- setup.py: fix syntax errors (missing commas)
                —
                Vadim Yanitskiy /
                detail
- modem_atcmd: raise ProtocolError instead of ReaderError on CME ERROR
                —
                laforge /
                detail
- ts_31_102: Add decoder/encoder for DF.5GS/EF.Routing_Indicator
                —
                laforge /
                detail
- ts_31_102: EF_SUPI_NAI: Decode/Encode GLI+GCI as UTF-8 strings
                —
                laforge /
                detail
- SJA2: Implement DF.SYSTEM/EF.0348_KEY using construct
                —
                laforge /
                detail
- SJA5: Add TUAK + XOR-2G algorithm definitions for EF_[U]SIM_AUTH_KEY
                —
                laforge /
                detail
- SJA5: Proper encode/decode of TUAK data in EF.USIM_AUTH_KEY
                —
                laforge /
                detail
- OTA: Fix padding of AES CMAC
                —
                laforge /
                detail
- Switch from pycryptodome to pycryptodomex
                —
                laforge /
                detail
- HPSIM application support
                —
                laforge /
                detail
- pySim-shell: Unregister TS 102 222 commands during 'equip'
                —
                laforge /
                detail
- Fix result parsing of "suspend_uicc"
                —
                laforge /
                detail
- ts_31_102: fix typo
                —
                pmaier@sysmocom.de /
                detail
- Move "suspend_uicc" command from pySim-shell to ts_102_221.py
                —
                laforge /
                detail
- ts_102221: Add "resume_uicc" command
                —
                laforge /
                detail
- pySim/apdu/ts_31_102.py: Add Rel17 5G NSWO context for GET IDENTITY
                —
                laforge /
                detail
- Add FPLMN read and program
                —
                laforge /
                detail
- utils: Remove format_xplmn leading zeros in MNC
                —
                laforge /
                detail
- serial: return a return code in reset_card()
                —
                laforge /
                detail
- ts_31_102: Add shell command for GET IDENTITY
                —
                laforge /
                detail
- SJA5: EF.USIM_AUTH_KEY: Display / enforce proper length TUAK K
                —
                laforge /
                detail
- test_ota: Add one first OTA SMS AES128 unit test
                —
                laforge /
                detail
- README: rephrase initial section; add HPSIM; programmable vs. standard
                —
                laforge /
                detail
- README: remove redundancy 'Manual' and 'Documentation
                —
                laforge /
                detail
- 31.102: Fix EF.Routing_Indicator for odd number of digits
                —
                laforge /
                detail
- Add ".py" suffix to sphinx-argparse generated docs
                —
                laforge /
                detail
- pySim-shell: fix reset command
                —
                laforge /
                detail
- docs: Add section on pySim-trace to user manual
                —
                laforge /
                detail
- Add support for encoding/decoding SMS in TPDU and SMPP format
                —
                laforge /
                detail
- tests: Add new, data-driven OTA tests
                —
                laforge /
                detail
- Fix run-editor bug with cmd2 >= 2.0.0 compatibility
                —
                laforge /
                detail
- work-around what appears to be a pylint bug
                —
                laforge /
                detail
- cosmetic: Implement cmd2.Settable backwards-compat via wrapper class
                —
                laforge /
                detail
- tlv: Fix IE.from_dict() method
                —
                laforge /
                detail
- ts_31_103: enable encode tests for files containing single TLV IE
                —
                laforge /
                detail
- pySim-shell: Support USIM specific methods/commands on unknown UICC
                —
                laforge /
                detail
- pySim-shell: Unregister profile commands during equip
                —
                laforge /
                detail
- TLV_IE_Collection: use snake-style names during from_dict()
                —
                laforge /
                detail
- pySim/tlv.py: Don't create an exception from within raise
                —
                laforge /
                detail
- pySim/tlv.py: Fix TLV_IE_Collection from_dict with nested collections
                —
                laforge /
                detail
- pySim/utils: define 'Hexstr' using NewType
                —
                laforge /
                detail
- pySim/transport: More type annotations
                —
                laforge /
                detail
- pySim/commands.py: Better type annotations
                —
                laforge /
                detail
- pySim/transport: Use newly-defined ResTuple type
                —
                laforge /
                detail
- ts_102_222: Remove unneeded imports
                —
                laforge /
                detail
- GlobalPlatform ADF.SD: Add command line reference + error message
                —
                laforge /
                detail
- pySim-prog: Also accept 18-digit ICCIDs
                —
                laforge /
                detail
- filesystem: Support selecting MF from MF
                —
                laforge /
                detail
- pySim/cards: Split legacy classes away from core SIM + UICC
                —
                laforge /
                detail
- split pySim/legacy/{cards,utils} from pySim/{cards,utils}
                —
                laforge /
                detail
- pySim/cards: Add type annotations
                —
                laforge /
                detail
- create pySim.legacy.ts_51_011.py and move legacy code there
                —
                laforge /
                detail
- ts_31_102, ts_31_103: Move legacy-only code to pySim.legacy
                —
                laforge /
                detail
- cards: All derived of SimCardBase use CLA=A0; all UiccCardBase use
                —
                laforge /
                detail
- cards: cosmetic rename, argument name should be scc, not ssc
                —
                laforge /
                detail
- cards: all UICC should use sel_ctrl="0400" and SIM "0000"
                —
                laforge /
                detail
- cdma_ruim: Fix unit tests and actually enable them
                —
                laforge /
                detail
- Introduce concept of CardProfileAddon
                —
                laforge /
                detail
- ts_102_221: Remove CardProfileUICCSIM
                —
                laforge /
                detail
- pySim-shell: Iterate over CardApplication sub-classes
                —
                laforge /
                detail
- pySim/filesystem.py: remove unused class FileData
                —
                laforge /
                detail
- move Runtime{State,Lchan} from pySim.filesystem to new pySim.runtime
                —
                laforge /
                detail
- pySim-shell: Add a mode where a pySim-shell cmd can be passed by shell
                —
                laforge /
                detail
- cards: fix swapped PIN mapping number
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: fix verify_adm command
                —
                pmaier@sysmocom.de /
                detail
- apdu/ts_102_221: extract channel number from dict before calling
                —
                laforge /
                detail
- runtime: fix lchan deletion in method reset
                —
                pmaier@sysmocom.de /
                detail
- Fixed `mnc` encoding
                —
                laforge /
                detail
- construct: add adapter Utf8Adapter to safely interpret utf8 text
                —
                pmaier@sysmocom.de /
                detail
- pySim-trace: add commandline option --show-raw-apdu
                —
                pmaier@sysmocom.de /
                detail
- pySim-trace: remove stray debug print
                —
                pmaier@sysmocom.de /
                detail
- utils: tolerate uninitialized fields in dec_addr_tlv
                —
                pmaier@sysmocom.de /
                detail
- pySim-trace: mark card reset in the trace
                —
                pmaier@sysmocom.de /
                detail
- pySim-trace: catch StopIteration exception on trace file end
                —
                pmaier@sysmocom.de /
                detail
- Reimplement ust_service_activate and ust_service_deactivate for
                —
                laforge /
                detail
- utils.py: remove superfluous import from itself
                —
                laforge /
                detail
- ARA-M: fix encoding of the PkgRefDO when using aram_store_ref_ar_do
                —
                laforge /
                detail
- Fix the remaining functions using the broken Card.update_ust() call
                —
                laforge /
                detail
- tests: add test script for pySim-trace
                —
                laforge /
                detail
- pysim-test: rename pysim-test.sh to pySim-prog_test.sh
                —
                laforge /
                detail
- README.md: Add note about pySim-trace.py dependencies
                —
                laforge /
                detail
- runtime: make sure applications are always listed in the same order
                —
                pmaier@sysmocom.de /
                detail
- pySim-trace_test: fix shebang line
                —
                pmaier@sysmocom.de /
                detail
- pySim-trace_test: verify output of pySim-trace.py
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog_test: fix typo
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: check presence of runtime state before accessing it
                —
                pmaier@sysmocom.de /
                detail
- setup.py: fix package name
                —
                flokli /
                detail
- README.md: sort dependencies, document smpp.pdu
                —
                flokli /
                detail
- cards: get rid of method read_iccid
                —
                laforge /
                detail
- sim-rest-server: do not select ADF.USIM in connect_to_card
                —
                laforge /
                detail
- sim-rest-server: use UiccCardBase instead of UsimCard
                —
                laforge /
                detail
- sim-rest-server: fix REST method info
                —
                pmaier@sysmocom.de /
                detail
- sim-reset-server: fix error printing sw_match_error
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: fix commandline option -a (verify_adm)
                —
                pmaier@sysmocom.de /
                detail
- commands: make method verify_binary and verify_record private
                —
                pmaier@sysmocom.de /
                detail
- filesystem: add attribute "leftpad" to class LinFixedEF
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog, pySim-shell do not use global variables
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: do not pass failed card object to PysimApp
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: print device info in case an exception occurs
                —
                pmaier@sysmocom.de /
                detail
- transport: add return type annotation to method __str__
                —
                pmaier@sysmocom.de /
                detail
- transport: do not catch exceptions in init_reader
                —
                pmaier@sysmocom.de /
                detail
- ts_31_102: Fix initialization of file size
                —
                laforge /
                detail
- Use keyword argument for file description argument
                —
                laforge /
                detail
- pySim-shell: do not fail when EF.ICCID does not exist
                —
                laforge /
                detail
- cards.py: Fix type annotation
                —
                laforge /
                detail
- pySim-shell: Create/delete RuntimeLchan objects on open/close of channel
                —
                laforge /
                detail
- RuntimeState: Add type annotation for 'card' argument
                —
                laforge /
                detail
- docs: Fix command reference for 'apdu' command
                —
                laforge /
                detail
- commands.py: Add support for multiple logical channels.
                —
                laforge /
                detail
- pySim-shell: Create + use per-RuntimeLchan SimCardCommands
                —
                laforge /
                detail
- prevent SimCardCommands.select_adf_by_aid bypassing lchan
                —
                laforge /
                detail
- pySim-shell: Add 'switch_channel' command
                —
                laforge /
                detail
- pySim-shell: Include current logical channel in prompt
                —
                laforge /
                detail
- utils: Fix bertlv_encode_tag() for multi-byte tags
                —
                laforge /
                detail
- transport: move init message into concrete classes
                —
                laforge /
                detail
- transport: move argument parser setup into concrete classes
                —
                laforge /
                detail
- Initial support for eUICC
                —
                laforge /
                detail
- euicc: Add get_profiles_info command
                —
                laforge /
                detail
- euicc: add some first IoT eUICC commands (GSMA SGP.32)
                —
                laforge /
                detail
- transport: print reader device/number on init
                —
                laforge /
                detail
- runtime: cosmetic: fix formatting of comment
                —
                pmaier@sysmocom.de /
                detail
- filesystem: fix method build_select_path_to
                —
                pmaier@sysmocom.de /
                detail
- docs: shell: Clarify various different card support
                —
                laforge /
                detail
- docs: shell: By now we have encoders/decoders for most files
                —
                laforge /
                detail
- docs: shell: link to cmd2 documentation
                —
                laforge /
                detail
- docs: shell: Re-order the command sections/classes
                —
                laforge /
                detail
- docs: Fix docstring syntax to avoid warnings
                —
                laforge /
                detail
- docs: shell: update output in examples
                —
                laforge /
                detail
- docs: shell: Various documentation updates/extensions
                —
                laforge /
                detail
- pySim-shell: Add copyright statement and link to online manual to banner
                —
                laforge /
                detail
- pySim-shell: Use argparser for verify_adm to support --help
                —
                laforge /
                detail
- pySim-shell: Improved argument validation for verify_adm argument
                —
                laforge /
                detail
- pySim-shell: Validate that argument to 'apdu' command is proper hexstr
                —
                laforge /
                detail
- pySim-shell: permit string with spaces for 'echo' command
                —
                laforge /
                detail
- pySim-shell: Reject any non-decimal PIN values
                —
                laforge /
                detail
- sysmocom_sja2: Add some de/encode test vectors
                —
                laforge /
                detail
- Use construct 'Flag' instead of 'Bit' for type descriptions
                —
                laforge /
                detail
- transport: Log it explicitly if user doesn't specify a reader
                —
                laforge /
                detail
- pySim-shell: Move init_card() function to new pySim.app module
                —
                laforge /
                detail
- runtime: fix tracking of selected_adf
                —
                laforge /
                detail
- ts_31_102: correct name of EF_ePDGId
                —
                icecream /
                detail
- app: do not catch exceptions in init_card
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: refuse to execute a startup script on initialization errors
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: Do not use self.lchan.scc when sending raw APDUs.
                —
                pmaier@sysmocom.de /
                detail
- perform multiple GET RESPONSE cycles if more data is available
                —
                laforge /
                detail
- filesystem: add flag to tell whether an ADF supports an FS or not
                —
                laforge /
                detail
- ara_m: Fix encoding of DeviceInterfaceVersionDO
                —
                Neels Hofmeyr /
                detail
- flatten_dict_lists(): Don't flatten lists with duplicate keys
                —
                laforge /
                detail
- runtime: do not use the _scc object of the card object to select MF
                —
                pmaier@sysmocom.de /
                detail
- runtime: explain why we may access the card object directly
                —
                pmaier@sysmocom.de /
                detail
- runtime: cosmetic: prnounce file reference data
                —
                pmaier@sysmocom.de /
                detail
- tlv: Fix encoding of zero-valued TLVs
                —
                laforge /
                detail
- euicc: Fix encoding of {enable,disable,delete}_profile
                —
                laforge /
                detail
- pySim-shell: don't get trapped in applications without file system
                —
                laforge /
                detail
- euicc: the ICCID TLV object uses bcd-swapped-nibble encoding
                —
                laforge /
                detail
- euicc: Fix encoding of Lc value in STORE DATA
                —
                laforge /
                detail
- euicc: Fix TLV IE definitions for SetNickname{Req,Resp}
                —
                laforge /
                detail
- runtime: explain how file probing works
                —
                pmaier@sysmocom.de /
                detail
- filesystem: use sort path when selecting an application
                —
                pmaier@sysmocom.de /
                detail
- runtime: refactor file selection methods select and select_file
                —
                pmaier@sysmocom.de /
                detail
- filesystem: fix typo
                —
                pmaier@sysmocom.de /
                detail
- USIM: add support for EG.ePDGIdEm (Emergency ePDG)
                —
                laforge /
                detail
- usim: Add EF.ePDGSelection + EF.ePDGSelectionEm support
                —
                laforge /
                detail
- usim: ePDGId + ePDGSelection: Fix encoder/decoder + add test cases
                —
                laforge /
                detail
- usim: Properly decode/encode IPv4 + IPv6 addresses
                —
                laforge /
                detail
- bertlv_parse_len: Fix input data is smaller than num length octets
                —
                laforge /
                detail
- isim: Replace legacy imperative address TLV encoder/decoder with
                —
                laforge /
                detail
- move {enc,dec}_addr_tlv functions from pySim.util to pySim.legacy.util
                —
                laforge /
                detail
- transport: Pass argparse.Namespace directly into transport classes
                —
                laforge /
                detail
- transport/pcsc: Allow opening PC/SC readers by a regex of their name
                —
                laforge /
                detail
- transport: Move printing of reader number/name to generic code
                —
                laforge /
                detail
- transport: Extend the documentation for each transport driver
                —
                laforge /
                detail
- tests: use case-insensitive compare of hex strings
                —
                laforge /
                detail
- test/test_files: set maxDiff attribute
                —
                laforge /
                detail
- fix encode/decode of xPLMNwAcT
                —
                laforge /
                detail
- 31.102 + 51.011: Fix encode/decode of EF.CFIS
                —
                laforge /
                detail
- additional encode/decode test data for various files
                —
                laforge /
                detail
- docs/shell: extend the introduction part; link to video presentation
                —
                laforge /
                detail
- construct/tlv: Pass optional 'context' into construct decoder/encoder
                —
                laforge /
                detail
- pySim-trace_test.sh: Force termcolor to suppress color generation
                —
                laforge /
                detail
- filesystem: use pySim.utils.build_construct()
                —
                laforge /
                detail
- tlv: Fix from_dict() symmetry
                —
                laforge /
                detail
- data-driven TLV unit data test support
                —
                laforge /
                detail
- Add TLV decoder test data
                —
                laforge /
                detail
- global_platform: Correctly decode Key Information Data
                —
                laforge /
                detail
- global_platform: Add TLV test data for Key Information Data
                —
                laforge /
                detail
- global_platform: Add support for key types of v2.3.1 (including AES)
                —
                laforge /
                detail
- Fix enumeration of GlobbalPlatformISDR during card_init()
                —
                laforge /
                detail
- add PlmnAdapter for decoding PLMN bcd-strings like 262f01 to 262-01
                —
                laforge /
                detail
- Implement convoluted encoding of UCS-2 as per TS 102 221 Annex A
                —
                laforge /
                detail
- support UCS-2 characters in EF.MMSUP, EF.ADN, EF.SPN, EF.PNN, EF.ECC
                —
                laforge /
                detail
- ts_31_102: Implement decoders/encoders for EFs below DF.HNB
                —
                laforge /
                detail
- Fix TLV_IE_Collection.from_tlv in certain situations
                —
                laforge /
                detail
- tests_files.py: Reduce code duplication
                —
                laforge /
                detail
- test_files: Test decoder also with ff-padded input
                —
                laforge /
                detail
- sysmocom_sja2: Implement EF_CHV files using construct
                —
                laforge /
                detail
- commands: Ignore exceptions during READ while UPDATE
                —
                laforge /
                detail
- global_platform: Add support for more GET DATA TLVs
                —
                laforge /
                detail
- move SUCI sub-classes to EF_SUCI_CalcInfo
                —
                laforge /
                detail
- fileystem/tlv: remove unused imports
                —
                laforge /
                detail
- ts_31_102: Start to use construct for EF.SUCI_Calc_Info
                —
                laforge /
                detail
- construct: avoid StreamError exceptions due to files containing all-ff
                —
                laforge /
                detail
- ts_31_103: Add construct for EF.GBABP and EF.GBANL
                —
                laforge /
                detail
- ts_31_103: Add TLV + construct for EF_NAFKCA
                —
                laforge /
                detail
- ts_102_310: Add file definitions resembling ETSI TS 102 310 (EAP)
                —
                laforge /
                detail
- Add pySim.esim.bsp module implementing BSP (BPP Protection Protocol)
                —
                laforge /
                detail
- add contrib/unber.py utility
                —
                laforge /
                detail
- Allow logger to do lazy evaluation of format strings
                —
                laforge /
                detail
- euicc: Fix delete_profile command
                —
                laforge /
                detail
- euicc: Fix eUICC list_notifications command
                —
                laforge /
                detail
- pySim-shell: Update manual with examples for using with eUICC ISD-R
                —
                laforge /
                detail
- Initial proof-of-concept SM-DP+ for GSMA consumer eSIM RSP
                —
                laforge /
                detail
- pySim.saip.*: Support for parsing / operating on eSIM profiles
                —
                laforge /
                detail
- euicc: Fix decoding of SubjectKeyIdentifier.
                —
                laforge /
                detail
- Constrain user input to hex-string in argparse
                —
                laforge /
                detail
- euicc: Migrate ECASD + ISD-R over to global_platform.CardApplicationSD
                —
                laforge /
                detail
- global_platform: Implement generic store_data command
                —
                laforge /
                detail
- TLV: Add DGI encoding of "GP Scripting Language Annex B"
                —
                laforge /
                detail
- global_platform: More definitions to support key loading
                —
                laforge /
                detail
- ts_102_221: Better explain 'selected file invalidated'
                —
                laforge /
                detail
- euicc: Implement EID checksum verification + computation
                —
                laforge /
                detail
- pySim-shell: Permit 'reset' command also in unqeuipped stage
                —
                laforge /
                detail
- Fix encoding of decoded/json data in update_{record_binary}_decoded
                —
                laforge /
                detail
- osmo-smdpp: Actually dump Rx/Tx JSON in JSON format and not as python
                —
                laforge /
                detail
- pySim.utils: Support datetime.datetime in JsonEncoder
                —
                laforge /
                detail
- New pySim.esim.x509_cert module for X.509 certificate handling
                —
                laforge /
                detail
- Move X.509 related code from osmo-smdpp to pySim.esim.x509_cert
                —
                laforge /
                detail
- osmo-smdpp: Implement eUICC + EUM certificate signature chain validation
                —
                laforge /
                detail
- docs: Update osmo-smdpp with pointer to sysmoEUICC1-C2T and SGP.26
                —
                laforge /
                detail
- add contrib/eidtool.py: Tool for checking + computing EID checksum
                —
                laforge /
                detail
- docs: Add missing global_platform store_data command docs
                —
                laforge /
                detail
- global_platform: Add shell command for PUT KEY
                —
                laforge /
                detail
- osmo-smdpp: Constrain selection of CI certificate
                —
                laforge /
                detail
- ara_m: Permit encoding of empty AID (--aid '') in ARA-M rules
                —
                laforge /
                detail
- ara_m: Use GlobalPlatform SELECT decoding
                —
                laforge /
                detail
- runtime: Reset selected_file_fcp[_hex] if SELECT returns no data
                —
                laforge /
                detail
- [cosmetic] ara_m: Give a spec reference for the PERM-AR-DO
                —
                laforge /
                detail
- saip.personalization: Also drop any fillFileOffset
                —
                laforge /
                detail
- saip.personalization: Fix ICCID fillFileContent replacement
                —
                laforge /
                detail
- esim.saip: Move OID to separate sub-module
                —
                laforge /
                detail
- esim.saip: More type annotations
                —
                laforge /
                detail
- requirements.txt: Switch to osmocom fork of asn1tools
                —
                laforge /
                detail
- add SAIP template handling + v3.1 definitions
                —
                laforge /
                detail
- osmo-smdpp: Support multiple different profiles
                —
                laforge /
                detail
- osmo-smdpp: Add more GSMA TS.48 test profiles
                —
                laforge /
                detail
- pySim.esim: Add class for parsing/encoding eSIM activation codes
                —
                laforge /
                detail
- global_platform: implement GET STATUS command
                —
                laforge /
                detail
- commands.py: Wrap the transport send_apdu* methods
                —
                laforge /
                detail
- move global_platform.py to global_platform/__init__.py
                —
                laforge /
                detail
- global_platform 'put_key': constrain ranges of KVN + KID in argparse
                —
                laforge /
                detail
- Introduce GlobalPlatform SCP02 implementation
                —
                laforge /
                detail
- pySim-shell: Make 'apdu' command use logical (and secure) channel
                —
                laforge /
                detail
- global_platform: Add install_for_personalization command
                —
                laforge /
                detail
- global_platform: add set_status command
                —
                laforge /
                detail
- global_platform: add delete_key and delete_card_content
                —
                laforge /
                detail
- global_platform: Fix --key-id argument
                —
                laforge /
                detail
- Contstrain argparse integers to permitted range
                —
                laforge /
                detail
- rename global_platform.scp02 to global_platform.scp
                —
                laforge /
                detail
- Implement Global Platform SCP03
                —
                laforge /
                detail
- make our tests pass pylint
                —
                laforge /
                detail
- contrib/jenkins.sh: include tests/*.py in pylint
                —
                laforge /
                detail
- Be more conservative in our imports
                —
                laforge /
                detail
- global_platform: KCV support for PUT KEY
                —
                laforge /
                detail
- construct: Add StripTrailerAdapter
                —
                laforge /
                detail
- global_platform: INSTALL [for install] support
                —
                laforge /
                detail
- global_platform: Add DEK (key) encryption support
                —
                laforge /
                detail
- pylint: card_key_provider.py, card_handler.py, iso7816_4.py, jsonpath.py
                —
                laforge /
                detail
- pylint: gsmtap.py
                —
                laforge /
                detail
- pylint: cards.py
                —
                laforge /
                detail
- pylint: exceptions.py
                —
                laforge /
                detail
- pylint: ota.py
                —
                laforge /
                detail
- pylint: sms.py
                —
                laforge /
                detail
- pylint: profile.py
                —
                laforge /
                detail
- pylint: ts_31_102_telecom.py
                —
                laforge /
                detail
- pylint: app.py
                —
                laforge /
                detail
- pylint: cat.py
                —
                laforge /
                detail
- pylint: gsm_r.py
                —
                laforge /
                detail
- pylint: transport/calypso.py
                —
                laforge /
                detail
- pylint: transport/modem_atcmd.py
                —
                laforge /
                detail
- pylint: transport/pcsc.py
                —
                laforge /
                detail
- pylint: transport/serial.py
                —
                laforge /
                detail
- pylint: transport/__init__.py
                —
                laforge /
                detail
- pylint: apdu_source/__init__.py
                —
                laforge /
                detail
- pylint: apdu_source/gsmtap.py
                —
                laforge /
                detail
- pylint: apdu_source/pyshark_gsmtap
                —
                laforge /
                detail
- pylint: apdu_source/pyshark_rspro
                —
                laforge /
                detail
- pylint: apdu/ts_31_102.py
                —
                laforge /
                detail
- pylint: apdu/__init__.py
                —
                laforge /
                detail
- pylint: pySim/esim/bsp.py
                —
                laforge /
                detail
- pylint: esim/x509_cert.py
                —
                laforge /
                detail
- pylint: esim/rsp.py
                —
                laforge /
                detail
- pylint: esim/saip/personalization.py
                —
                laforge /
                detail
- pylint: esim/saip/templates.py
                —
                laforge /
                detail
- pylint: esim/saip/oid.py
                —
                laforge /
                detail
- pylint: global_platform/scp.py
                —
                laforge /
                detail
- pylint: cdma_ruim.py
                —
                laforge /
                detail
- pylint: sysmocom_sja2.py
                —
                laforge /
                detail
- pylint: ts_31_102.py
                —
                laforge /
                detail
- pylint: apdu/ts_102_221.py
                —
                laforge /
                detail
- pylint: ts_102_221.py
                —
                laforge /
                detail
- pylint: ara_m.py
                —
                laforge /
                detail
- pylint: runtime.py
                —
                laforge /
                detail
- pylint: pySim/euicc.py
                —
                laforge /
                detail
- pylint: commands.py
                —
                laforge /
                detail
- pylint: filesystem.py
                —
                laforge /
                detail
- pylint: ts_102_222.py
                —
                laforge /
                detail
- pylint: utils.py
                —
                laforge /
                detail
- pylint: tlv.py
                —
                laforge /
                detail
- pylint: construct.py
                —
                laforge /
                detail
- pylint: global_platform/__init__.py
                —
                laforge /
                detail
- global_platform: Fix INSTALL [for personalization]
                —
                laforge /
                detail
- pySim-shell: Fix regression in 'apdu' command on cards without profile
                —
                laforge /
                detail
- global_platform: Add --suppress-key-check option to put_key command
                —
                laforge /
                detail
- Introduce code for ES2+ API client functionality
                —
                laforge /
                detail
- ts_31_102: Add support for "USIM supporting non-IMSI SUPI Type"
                —
                laforge /
                detail
- Add terminal_capability command to send TERMINAL CAPABILITY
                —
                laforge /
                detail
- Dynamically determine maximum CMD data length depending on SCP
                —
                laforge /
                detail
- utils: Add function to verify Luhn check digits and to sanitize ICCIDs
                —
                laforge /
                detail
- asn1/saip: Fix typo in original ASN.1: Compontents -> Components
                —
                laforge /
                detail
- saip: profile processing; merging with templates
                —
                laforge /
                detail
- pylint: esim/saip/__init__.py
                —
                laforge /
                detail
- pylint: esim/saip/validation.py
                —
                laforge /
                detail
- saip: improve docstrings
                —
                laforge /
                detail
- osmo-smdpp: Get rid of hard-coded ICCID
                —
                laforge /
                detail
- osmo-smdpp: Add TS.48 profiles modified for unique ICCIDs
                —
                laforge /
                detail
- saip.personalization: include encode/decode of value; add validation
                —
                laforge /
                detail
- saip.personalization: Add support for SCP80/81/02/03 keys
                —
                laforge /
                detail
- saip.personalization: differentiate input_value from value
                —
                laforge /
                detail
- saip.personalization: automatically compute class 'name' attribute
                —
                laforge /
                detail
- saip.personalization: Fix encoding of ICCID in ProfileHeader
                —
                laforge /
                detail
- tests: assertEquals() is deprecated, use assertEqual()
                —
                Vadim Yanitskiy /
                detail
- docs/shell: Give users some hints on what to do if encoding/decoding
                —
                laforge /
                detail
- sysmocom_sja2: Add test vectors for EF_USIM_AUTH_KEY
                —
                laforge /
                detail
- osmo-smdpp: fix generation of transactionId
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog: convert from optparse to argparse
                —
                laforge /
                detail
- pcsc: open reader/card in EXCLUSIVE mode by default
                —
                laforge /
                detail
- add missing modules to setup.py
                —
                icecream /
                detail
- contrib/jenkins.sh: add 'distcheck' job to check package integrity
                —
                Vadim Yanitskiy /
                detail
- README.md: Point to simtrace mailing list
                —
                laforge /
                detail
- README.md: Link to discourse forum
                —
                laforge /
                detail
- README.md: Add link to issue tracker
                —
                laforge /
                detail
- Add funding link to github mirror
                —
                laforge /
                detail
- esim.es2p: Permit ApiParamInteger to be an actual integer
                —
                laforge /
                detail
- esim.esp2: Allow HTTP methods other than POST
                —
                laforge /
                detail
- filesystem: Enforce lower-case hex AID
                —
                laforge /
                detail
- euicc: Fix shell command for SGP.31 get_certs
                —
                laforge /
                detail
- pySim.global_platform: Fix key encryption with DEK
                —
                laforge /
                detail
- pySim-trace: Support decoding of eUICC traces
                —
                laforge /
                detail
- commands.py: Resolve possible variable use before assignment
                —
                laforge /
                detail
- commands.py: Resolve possible variable use before assignment
                —
                laforge /
                detail
- euicc.py: Resolve possible variable use before assignment
                —
                laforge /
                detail
- osmo-smdpp.py: Resolve possible variable use before assignment
                —
                laforge /
                detail
- pySim-prog.py: Resolve possible variable use before assignment
                —
                laforge /
                detail
- pySim-trace.py: Resolve possible variable use before assignment
                —
                laforge /
                detail
- euicc: clarify which eUICCs are supported
                —
                laforge /
                detail
- sysmocom_sjs2: Make sure 'Const' is imported
                —
                laforge /
                detail
- pySim/cat: Fix contruct for Address class/IE
                —
                laforge /
                detail
- pcsc: don't assume opts.pcsc_shared is present
                —
                laforge /
                detail
- contrib/sim-rest-client: don't crash without args
                —
                laforge /
                detail
- pySim/global_platform: Fix install_for_personalization command
                —
                laforge /
                detail
- pySim/commands: STATUS: Use indeterminate length Le/P3 == '00'
                —
                laforge /
                detail
- pysim/euicc: Remove duplicated code
                —
                laforge /
                detail
- runtime: Introduce an 'identity' dict for things like ATR, ICCID, EID
                —
                laforge /
                detail
- pySim-shell: Migrate PySimApp.iccid to RuntimeState.identity['ICCID']
                —
                laforge /
                detail
- pySim.app: Attempt to retrieve the EID of a SGP.22 / SGP.32 eUICC
                —
                laforge /
                detail
- docs/shell: Mention GlobalPlatform and eUICC commands in overview
                —
                laforge /
                detail
- osmo-smdpp: Don't re-encode euiccSigned1/euiccSigned2
                —
                laforge /
                detail
- osmo-smdpp: Make error message more descriptive
                —
                laforge /
                detail
- add globalplatform.uicc
                —
                laforge /
                detail
- [cosmetic] fix typos in comments
                —
                laforge /
                detail
- utils: Introduce BER-TLV parsers that return raw tag or even raw TLV
                —
                laforge /
                detail
- esim.bsp: Fix a bug in demac_only_one()
                —
                laforge /
                detail
- esim.saip: Introduce ProfileElement derived classes
                —
                laforge /
                detail
- esim.saip: Implement SecurityDomainSD.{add,has,remove}_key() methods
                —
                laforge /
                detail
- pySim.esim.saip.validation: Ensure unique PE identification value
                —
                laforge /
                detail
- esim.saip: Implement ProfileElement.header_name for more PE types
                —
                laforge /
                detail
- pySim.esim.saip: Meaningful constructors for [I]SD + SSD
                —
                laforge /
                detail
- document the CardKeyProvider
                —
                laforge /
                detail
- CardKeyProvider: Implement support for column-based transport key
                —
                laforge /
                detail
- global_platform/euicc: Implement obtaining SCP keys from CardKeyProvider
                —
                laforge /
                detail
- pySim-trace: Add support for the TCA Loader log file format
                —
                laforge /
                detail
- pySim.apdu: Allow TLV based decoders for APDU command and response body
                —
                laforge /
                detail
- pySim.cat: More TLV Definitions for Event Download
                —
                laforge /
                detail
- pySim.apdu.ts_102_221: Decode the ENVELOPE command body using pySim.cat
                —
                laforge /
                detail
- pySim.apdu.ts_102_221: Decode FETCH and TERMINAL RESPONSE body
                —
                laforge /
                detail
- pySim/cat: Decode the "Type of Comand" from numeric value to a string
                —
                laforge /
                detail
- pySim/cat: Fix "Decode the "Type of Comand" from numeric value to a
                —
                laforge /
                detail
- esim.es2p: Split generic part of HTTP/REST API from ES2+
                —
                laforge /
                detail
- add pySim.esim.es9p with definitions of the ES9+ HTTP Interface
                —
                laforge /
                detail
- http_json_api / es9p: Add User-Agent header
                —
                laforge /
                detail
- add contrib/es9p_client: Perform ES9+ client functions like LPA+eUICC
                —
                laforge /
                detail
- esim.es9p: Suppress sending requestHeader on ES9+
                —
                laforge /
                detail
- esim.saip: Introduce ProfileElement.identification property
                —
                laforge /
                detail
- esim.saip: Add ProfileElementSequence.remove_naas_of_type
                —
                laforge /
                detail
- pySim.tlv: Correctly parse COMPREHENSION-TLV without comprehension bit
                —
                laforge /
                detail
- pySim.cat: Make sure to always set comprehension bit in COMPR_TLV_IE
                —
                laforge /
                detail
- pySim.tlv.COMPR_TLV_IE: Patch comprehension bit if derived class misses
                —
                laforge /
                detail
- jenkins.sh: Include es9p_client in pylint
                —
                laforge /
                detail
- add contrib/saip-tool.py
                —
                laforge /
                detail
- pySim.cat: Add more alredy-defined IEs to ProactiveCmd classes
                —
                laforge /
                detail
- pySim/ota: Don't modify input argument in OtaDialectSms.encode_cmd
                —
                laforge /
                detail
- pySim.ota.OtaDialectSms: Move SMS header construct up to class level
                —
                laforge /
                detail
- pySim.ota.OtaDialectSms: Implement command decoding
                —
                laforge /
                detail
- tests/ota_test.py: Allow stand-alone execution
                —
                laforge /
                detail
- osmo-smdpp: use NIST-P256 by default
                —
                laforge /
                detail
- unber.py: work-around pylint reporting (possibly-used-before-assignment)
                —
                laforge /
                detail
- contrib/jenkins.sh: Execute pylint also on all contrib python scripts
                —
                laforge /
                detail
- es9p_client: Use a plausible TAC (copy from lpac)
                —
                laforge /
                detail
- esim.saip: Remove debug print()
                —
                laforge /
                detail
- saip-tool: Add new 'info' action to print general information
                —
                laforge /
                detail
- saip-tool: Add 'extract-apps' to dump all applications from eSIM profile
                —
                laforge /
                detail
- pySim.tlv: Fix ComprTlvMeta() not passing kwargs to parent __new__
                —
                laforge /
                detail
- pySim.esim.saip: Meaningful defaults in PE Constructor + test
                —
                laforge /
                detail
- pySim.esim: Allow calling compile_asn1_subdir() with non-DER coddec
                —
                laforge /
                detail
- pySim.esim.saip: Add ProfileElementAKA constructor + methods
                —
                laforge /
                detail
- tests: Add ProfileElementSD and ProfileElementSSD to
                —
                laforge /
                detail
- pySim.saip.oid: Properly differentiate optional from non-optional
                —
                laforge /
                detail
- pySim.esim.saip: Add ProfileElementOpt{USIM,ISIM} classes
                —
                laforge /
                detail
- pySim.saip: Add ProfileElementRFM class
                —
                laforge /
                detail
- pySim.esim.saip: Move initialization of PE header to base class
                —
                laforge /
                detail
- pySim.esim.saip: ProfileElement{Header,End} classes
                —
                laforge /
                detail
- pySim.esim.saip: Add methods to rebuild "mandatory" lists in
                —
                laforge /
                detail
- saip-tool: Dump information about security domains from "info" command
                —
                laforge /
                detail
- saip-tool: Also dump RFM information in "info" command
                —
                laforge /
                detail
- pySim.tlv: Add COMPACT_TLV_IE TLV variant
                —
                laforge /
                detail
- pySim.transport: Fix proactive_handler from_dict() calls
                —
                laforge /
                detail
- pySim.ota: Handle cases where 'secured_data' is empty
                —
                laforge /
                detail
- pySim.ota: Raise exception if encoded length would exceed 140 bytes
                —
                laforge /
                detail
- pySim.commands: Check return value of TERMINAL PROFILE command
                —
                laforge /
                detail
- transport: Implement treatment of 62xx and 63xx warning/error responses
                —
                laforge /
                detail
- pySim.cat: More spec references + explanations in comments
                —
                laforge /
                detail
- saip-tool: Fix output of TAR values in "print" subcommand
                —
                laforge /
                detail
- pySim.esim.http_json_api: 'header' is not always present in response
                —
                laforge /
                detail
- osmo-smdpp: Make sure to return empty HTTP response in
                —
                laforge /
                detail
- es9p_client: Move code into a class; do common steps in constructor
                —
                laforge /
                detail
- contrib/es9p_client: Add support for reporting notifications to SM-DP+
                —
                laforge /
                detail
- osmo-smdpp: Implement 'other' notification signature validation
                —
                laforge /
                detail
- osmo-smdpp: Request enable/disable/delete notifications in metadata
                —
                laforge /
                detail
- pySim.esim.es8p: Add support for encoding icon in ProfileMetadata
                —
                laforge /
                detail
- pySim.globalplatform: Add 'http' submodule for GP Amd B RAM over HTTPS
                —
                laforge /
                detail
- osmo-smdpp + es9p_client: HTTP status 204 is used for handleNotification
                —
                laforge /
                detail
- pySim.ts_31_103: update to spec v18.1.0 Release 18
                —
                laforge /
                detail
- move parts of pySim.ts_31_103 to pySim.ts_31_103_shared
                —
                laforge /
                detail
- [cosmetic] ts_31_102: Note in comment which release introdcued recent
                —
                laforge /
                detail
- ts_31_102: Make use of ts_31_103_shared and add Rel 18 files
                —
                laforge /
                detail
- pySim.ts_31_102: Fix name of EF.VBSCA
                —
                laforge /
                detail
- pySim.apdu: Refactor cmd_to_dict() method
                —
                laforge /
                detail
- pySim.apdu: Fix APDU CLA matching
                —
                laforge /
                detail
- pySim.apdu.ts_102_222: APDU decoding for administrative commands
                —
                laforge /
                detail
- pySim-trace: display decoded result as JSON, not as python dict
                —
                laforge /
                detail
- pySim.apdu: Get rid of HexAdapter
                —
                laforge /
                detail
- runtime: add missing docstring
                —
                laforge /
                detail
- runtime: rename get_file_for_selectable to get_file_for_filename
                —
                laforge /
                detail
- ts_31_103_shared: fix file structure of EF.WebRTCURI
                —
                laforge /
                detail
- pySim-shell: fix comment formatting
                —
                laforge /
                detail
- pySim.ota: Add construct definition for SIM File + TK Param definition
                —
                laforge /
                detail
- pySim.apdu.global_platform: Decode the INSTALL command parameters
                —
                laforge /
                detail
- saip-tool: Fix TAR display for implicit TAR
                —
                laforge /
                detail
- pySim.global_platform.ota: Support KVN 0x70 for SCP02
                —
                laforge /
                detail
- pySim-shell: move export code into filesystem class model
                —
                laforge /
                detail
- pySim-shell: turn "ADF-escape-code" into an lchan method.
                —
                laforge /
                detail
- pySim-shell: fix reset command
                —
                laforge /
                detail
- pySim-shell: clean up method calls in do_switch_channel
                —
                laforge /
                detail
- pySim-shell: fix comment formatting
                —
                laforge /
                detail
- ara_m: fix sourcecode formatting
                —
                laforge /
                detail
- ara_m: fix misspelled object name
                —
                laforge /
                detail
- pySim.esim.saip: Add OID comparison functions
                —
                laforge /
                detail
- pySim.esim.saip: Decode each 'File' element in ProfileElement
                —
                laforge /
                detail
- pySim.tlv: Add convenience methods to IE class
                —
                laforge /
                detail
- pySim.runtime: Be more verbose if incompatible method is called
                —
                laforge /
                detail
- pySim.commands: Don't convert SwMatchError to ValueError
                —
                laforge /
                detail
- pySim.tlv: Separate {to,from}_val_dict() from {to,from}_dict()
                —
                laforge /
                detail
- pySim-shell: add "fsdump" command
                —
                laforge /
                detail
- pySim.commands: make use of status word interpreter for CHV
                —
                laforge /
                detail
- pySim.filesystem: Add Path for abstraction/utility around file system
                —
                laforge /
                detail
- pySim.ts_102_221: Fix FileDescriptor encoding for BER-TLV case
                —
                laforge /
                detail
- pySim.ts_102_221: Add ProprietaryInformation sub-IEs of TS 102 222
                —
                laforge /
                detail
- pySim.esim.saip: Initial support for parsing GenericFileManagement
                —
                laforge /
                detail
- Reference pySim.filesystem derived classes from SAIP templates
                —
                laforge /
                detail
- Fix missing AIDs in pySim.saip templates
                —
                laforge /
                detail
- pySim.esim.saip.templates: Build tree from template files
                —
                laforge /
                detail
- pySim.esim.saip: Refactor from_der() method to have class_for_petype()
                —
                laforge /
                detail
- pySim.esim.saip: Add subclasses for gsm-access, phonebook, 5gs, saip
                —
                laforge /
                detail
- ara_m: Fix pySim.tlv.IE.from_dict() calls
                —
                laforge /
                detail
- pySim.tlv: Fix from_dict of nested TLVs
                —
                laforge /
                detail
- Support EF.ICCID and EF.PL on classic TS 51.011 SIM
                —
                laforge /
                detail
- pySim-shell: Support hexadecimal ADM pin in 'verify_adm'
                —
                laforge /
                detail
- pySim-shell: Support other ADMx values beyond ADM1 from 'verify_adm'
                —
                laforge /
                detail
- pySim.esim.saip: Add subcasses for EAP, DF.SNPN and DF.5G_ProSe
                —
                laforge /
                detail
- pySim.esim.saip.template: Permit file-size for BER-TLV files
                —
                laforge /
                detail
- pySim.esim.saip.templates: Add a notion of the path of a file
                —
                laforge /
                detail
- pySim.esim.saip.templates: Update to SAIP v3.3.1 (July 2023)
                —
                laforge /
                detail
- pySim.filesystem: Add __len__ method to Path object
                —
                laforge /
                detail
- pySim.esim.saip.oid: Fix OID defininitions for v3.3.1 IoT templates
                —
                laforge /
                detail
- pySim-shell: fix typo
                —
                pmaier@sysmocom.de /
                detail
- pySim.esim.saip.templates: Add SaipSpecVersion
                —
                laforge /
                detail
- pySim.esim.saip.templates: Explicitly specifiy repeatable default value
                —
                laforge /
                detail
- pySim.esim.saip.templates: Fix '...' notation in default value
                —
                laforge /
                detail
- pySim.esim.saip.templates: Add expand_default_value() method
                —
                laforge /
                detail
- ara_m: fix --apdu-filter setting
                —
                pmaier@sysmocom.de /
                detail
- pySim.cards: Make file_exists() check for activated/deactivated
                —
                laforge /
                detail
- filesystem: add placeholder export method in CardFile base class
                —
                pmaier@sysmocom.de /
                detail
- filesystem: add export method for ADF files
                —
                pmaier@sysmocom.de /
                detail
- ara_m: add export support for the ARA-M application
                —
                pmaier@sysmocom.de /
                detail
- filesystem: fix typo
                —
                pmaier@sysmocom.de /
                detail
- runtime: integrate escape route for applications without ADF support
                —
                pmaier@sysmocom.de /
                detail
- runtime: add method to lookup a file by name without selecting it
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: improve export and enable exportation of DF and ADF files
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: improve fsdump
                —
                pmaier@sysmocom.de /
                detail
- pySim.esim.saip.templates: Introduce dependency/hierarchy information
                —
                laforge /
                detail
- pySim.ts_102_221: Make sure FileDescriptor for BER-TLV contains
                —
                laforge /
                detail
- pySim.filesystem: Permit Path object construction from FID integer list
                —
                laforge /
                detail
- saip-tool: Set default log level to INFO (instead of DEBUG)
                —
                laforge /
                detail
- pySim.esim.saip.oid: Allow OID instance in prefix_match()
                —
                laforge /
                detail
- contrib/saip-tool: Add command-line arguments to configure log level
                —
                laforge /
                detail
- pySim.esim.saip: Improve File.from_template feature support
                —
                laforge /
                detail
- pySim.esim.saip: Refactor file size encoding into a method
                —
                laforge /
                detail
- pySim.esim.saip: Move AKA specific post_dec + pre_enc to AKA subclass
                —
                laforge /
                detail
- pySim.esim.saip: pass up **kwargs from ProfileElement sub-class
                —
                laforge /
                detail
- pySim.esim.saip: Back-reference from ProfileElement to
                —
                laforge /
                detail
- pySim.esim.saip: Add some more docstring comments
                —
                laforge /
                detail
- pySim.esim.saip: Fix typo in ProfileElementAKA.set_mapping() method
                —
                laforge /
                detail
- pySim.esim.saip: Fix key used in FsProfileElement.files2pe
                —
                laforge /
                detail
- pySim.esim.saip.File: move away from stream for file content
                —
                laforge /
                detail
- jenkins: use osmo-clean-workspace.sh before and after build
                —
                laforge /
                detail
- pySim.esim.saip: maintain a parsed fileystem hierarchy
                —
                laforge /
                detail
- Fix pySim.esim.es2p.Param.timestamp._encode
                —
                laforge /
                detail
- osmo-smdpp: Proper error handling in case ctxParams1 is missing member
                —
                laforge /
                detail
- contrib/saip-tool: Add 'tree' command to display filesystem tree of
                —
                laforge /
                detail
- runtime: fix get_file_by_name
                —
                laforge /
                detail
- pySim-shell: fix CardKeyProvider for chv management commands
                —
                laforge /
                detail
- filesystem: fix double space in docstring
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: fix sourcecode formatting
                —
                pmaier@sysmocom.de /
                detail
- filesystem: add command to delete all contents from a BER-TLV EF
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell, cosmetic: define positional arguments last
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: prevent opening/closing logical channel 0
                —
                pmaier@sysmocom.de /
                detail
- pySim.esim.saip: Add missing entry for 'rfm' to class4petype
                —
                laforge /
                detail
- global_platform: fix help description for establish_scp03
                —
                pmaier@sysmocom.de /
                detail
- global_platform: use scp_key_identity ICCID for ADF.ISD
                —
                pmaier@sysmocom.de /
                detail
- ara_m: use class byte of current lchan
                —
                pmaier@sysmocom.de /
                detail
- commands: get rid of cla4lchan
                —
                pmaier@sysmocom.de /
                detail
- scp: fix key length in dek_encrypt and dek_decrypt
                —
                pmaier@sysmocom.de /
                detail
- ts_31_102: Add mssing help string for get_identity parameter
                —
                laforge /
                detail
- suci-tutorial: fix incorrect hnet_pubkey value
                —
                laforge /
                detail
- tests: move unittests into a sub directory
                —
                pmaier@sysmocom.de /
                detail
- contrib: script to generate "update" commands from diff of fsdumps
                —
                laforge /
                detail
- tests: move pySim-trace test and its data into a sub directory
                —
                pmaier@sysmocom.de /
                detail
- tests: move pySim-prog test and its data into a sub directory
                —
                pmaier@sysmocom.de /
                detail
- suci-tutorial: put download links for specs to the front
                —
                pmaier@sysmocom.de /
                detail
- suci-tutorial: fix spec reference
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog_test: tolerate empty reader slots
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog_test: tolerate missing .data files
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog_test: supress stderr when probing for cards
                —
                pmaier@sysmocom.de /
                detail
- contrib/jenkins.sh: Install dependencies before calling pylint
                —
                laforge /
                detail
- Migrate over to using pyosmocom
                —
                laforge /
                detail
- remove pySim.gsmtap as it has moved to osmopython.gsmtap
                —
                laforge /
                detail
- pySim.esim.saip: Fix weird DF names
                —
                laforge /
                detail
- pySim.esim.saip: Another naming irregularity.
                —
                laforge /
                detail
- pySim.esim.saip: Add missing initialization of File.df_name
                —
                laforge /
                detail
- pySim.esim.saip.File: Turn file_size into a computed property
                —
                laforge /
                detail
- pySim.esim.saip.ProfileElementGFM: Initialize 'fileManagementCMD'
                —
                laforge /
                detail
- esim.saip.templates: Fix expand_default_value_pattern for length==0
                —
                laforge /
                detail
- commands: avoid double lchan patching, get rid of cla_byte getter+setter
                —
                laforge /
                detail
- pySim-shell: rework startup procedure and introduce non interactive mode
                —
                laforge /
                detail
- suci-tutorial: add section about SUCI calculation by the USIM
                —
                laforge /
                detail
- pySim-shell: do not display 'AIDs:' when there are none
                —
                laforge /
                detail
- pySim-shell: use upper case letters for positional arguments
                —
                laforge /
                detail
- suci-tutorial: fix typo s/symo/sysmo/
                —
                laforge /
                detail
- transport: define TERMINAL RESPONSE content within ProactiveHandler
                —
                laforge /
                detail
- pySim.app: Properly reset card state after reading EID
                —
                laforge /
                detail
- pySim.transport: Add support for generic stdout apdu tracer
                —
                laforge /
                detail
- pySim.transport: Also trace card reset events in ApduTracer
                —
                laforge /
                detail
- pySim.commands: use _checksw during get_data() method
                —
                laforge /
                detail
- pySim.euicc: Add 'get_data sgp02_eid' in ADF.ECASD of M2M eUICC
                —
                laforge /
                detail
- pySim-shell: print cardinfo hexstrings in lowercase
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog: fix sourcecode formatting
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog: fix sourcecode formatting
                —
                pmaier@sysmocom.de /
                detail
- pySim/profile: Change match_with_profile from static to class method
                —
                laforge /
                detail
- pySim.profile: Further refactor card <-> profile matching
                —
                laforge /
                detail
- pySim-shell: Detect different eUICC types and print during start-up
                —
                laforge /
                detail
- docs: remove traces of modules migrated to pyosmocom
                —
                laforge /
                detail
- docs: Bring osmo-smdpp documentation up to date with code
                —
                laforge /
                detail
- update pyosmocom dependency to 0.0.3
                —
                laforge /
                detail
- pySim-prog: add FIXME note to tell that writing hlr.db files is broken
                —
                laforge /
                detail
- pySim-prog: treat --imsi and --iccid equally
                —
                laforge /
                detail
- pySim-prog: fix commandline parameter check for CSV mode
                —
                laforge /
                detail
- pySim-prog: rework documentation
                —
                laforge /
                detail
- runtime: add new API functions to get the record len and file size
                —
                laforge /
                detail
- filesystem, cosmetic: remove excess whitespace
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: improve command "desc"
                —
                pmaier@sysmocom.de /
                detail
- requirements: require at least construct version 2.10.70
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog_test: do not set an ICCID parameter for sysmoISIM-SJA2
                —
                laforge /
                detail
- pySim-prog_test: individual ICCIDs for all cards
                —
                laforge /
                detail
- pySim-shell: recognize ADP pins longer than 8 digits as hexadecimal
                —
                pmaier@sysmocom.de /
                detail
- pySim-prog_test: add test vectors for sysmoISIM-SJA5
                —
                pmaier@sysmocom.de /
                detail
- Add testsuite for pySim-shell with real cards
                —
                pmaier@sysmocom.de /
                detail
- gitignore: add files generated with jenkins.sh
                —
                Oliver Smith /
                detail
- contrib/jenkins: add SKIP_CLEAN_WORKSPACE
                —
                Oliver Smith /
                detail
- pySim-shell_test: disable test_list_and_rm_notif
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: New '-e' command line argument
                —
                laforge /
                detail
- filesystem: pass total_len to construct of when encoding file contents
                —
                pmaier@sysmocom.de /
                detail
- cosmetic: use **kwargs instead of **_kwargs
                —
                pmaier@sysmocom.de /
                detail
- ts_51_011: replace encoding of EF.MSISDN with construct model
                —
                pmaier@sysmocom.de /
                detail
- ts_51_011: fix unittest for EF.ADN
                —
                pmaier@sysmocom.de /
                detail
- ts_51_011: use _test_de_encode instead of _test_decode in EF.CFIS
                —
                pmaier@sysmocom.de /
                detail
- ts_102_221: se _test_de_encode instead of _test_decode in EF.DIR
                —
                pmaier@sysmocom.de /
                detail
- utils: move enc_msisdn and dec_msisdn to legacy/utils.py
                —
                pmaier@sysmocom.de /
                detail
- tests: sanitize all cards before running tests
                —
                laforge /
                detail
- jenkins: build docs in virtualenv as well
                —
                pmaier@sysmocom.de /
                detail
- docs/Makefile: make SPHINXBUILD work in venv
                —
                Oliver Smith /
                detail
- pySim.euicc: Fix ASN.1 encoding of integer values
                —
                Oliver Smith /
                detail
- pySim-shell_test: re-enable test_list_and_rm_notif
                —
                Oliver Smith /
                detail
- docs/shell: Add missing :ref: when referencing other command
                —
                laforge /
                detail
- pySim.esim.saip.templates: Fix DF_TELECOM FileID (7F10, not 7F11)
                —
                laforge /
                detail
- global_platform: ensure ArgumentParser gets a list for choices
                —
                pmaier@sysmocom.de /
                detail
- pySim.ts_31_102: Add support for EF.EARFCNList
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell_test/utils: delete log files in general
                —
                laforge /
                detail
- pySim-shell_test/utils: enumerate pySim-shell logs
                —
                laforge /
                detail
- pySim-shell_test/utils: display pySim-shell logfile content
                —
                laforge /
                detail
- commands: fix typo
                —
                pmaier@sysmocom.de /
                detail
- global_platform/scp: fix typo
                —
                pmaier@sysmocom.de /
                detail
- commands: fix double space character in apidoc
                —
                pmaier@sysmocom.de /
                detail
- commands: fix apidoc (wrong order of parameters)
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell-test: improve global platform tests
                —
                pmaier@sysmocom.de /
                detail
- global_platform/scp: mapdu may be undeclared
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell_test/utils: print logfile on all types of errors
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: allow checking of APDU responses
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: fix reset command for no-profile mode
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: add new commandline option "--skip-card-init"
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell_test/utils: treat cmd2 error "not a recognized command... as
                —
                pmaier@sysmocom.de /
                detail
- docs/osmo-smdpp: fix markup
                —
                pmaier@sysmocom.de /
                detail
- docs/osmo-smdpp: fix typo
                —
                pmaier@sysmocom.de /
                detail
- docs/legacy: remove unused '::' paragraph.
                —
                pmaier@sysmocom.de /
                detail
- docs/osmo-smdpp: restructure subsection "osmo-smdpp"
                —
                pmaier@sysmocom.de /
                detail
- global_platform/scp: refactor _wrap_cmd_apdu
                —
                pmaier@sysmocom.de /
                detail
- pySim/transport add support for T=1 protocol and fix APDU/TPDU layer
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell_test: add new testcase for card initialization
                —
                pmaier@sysmocom.de /
                detail
- docs: add topic about remote UICC/eUICC access
                —
                pmaier@sysmocom.de /
                detail
- esim.saip: Fix parsing/generating fillPattern + repeatPattern
                —
                laforge /
                detail
- pySim.esim.saip: Treat "Readable and Updateable when deactivated" flag
                —
                laforge /
                detail
- esim.saip: Compute number of records from efFileSize and record_len
                —
                laforge /
                detail
- esim.saip: Fix computation of file content
                —
                laforge /
                detail
- [cosmetic] esim.saip: Fix various typos in comments/docs/messages
                —
                laforge /
                detail
- [cosmetic] esim: Fix various typos in comments/messages/docs
                —
                laforge /
                detail
- esim.saip: New methods for inserting ProfileElement into sequence
                —
                laforge /
                detail
- esim.saip.File: Re-compute file_size when changing body
                —
                laforge /
                detail
- esim.saip.File: Proper ARR conversion of template (into) to file (bytes)
                —
                laforge /
                detail
- esim.saip.File: Suppress encoding attributes that are like template
                —
                laforge /
                detail
- esim.saip.FsProfileElement: Add create_file() method
                —
                laforge /
                detail
- esim.saip.ProfileElementUSIM: Fix IMSI decode if [only] template based
                —
                laforge /
                detail
- docs: Add documentation about contrib/sim-rest-{server,client}
                —
                laforge /
                detail
- contrib/esim-qrcode.py: Small command line tool to encode eSIM QR codes
                —
                laforge /
                detail
- contrib/suci-keytool.py: Convenience tool for SUCI key generation
                —
                laforge /
                detail
- es2p_client: Print the activation code after confirmOrder success
                —
                laforge /
                detail
- docs/shell: Fix documentation for eUICC ISD-R specific commands
                —
                laforge /
                detail
- Fixing 3-digit MNC PLMN Encoding/Decoding tests expected values for
                —
                jean-pierre.marcotte.1 /
                detail
- ts_31_102: fix testcase for EF_ePDGSelection
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: reset card in method equip
                —
                pmaier@sysmocom.de /
                detail
- pySim-shell: change Prompt character to "#" after "verify_adm"
                —
                pmaier@sysmocom.de /
                detail
- README.md update / re-wording
                —
                laforge /
                detail
- ara_m: fix spec reference.
                —
                pmaier@sysmocom.de /
                detail
- ara_m fix export of AID-REF-DO (empty)
                —
                pmaier@sysmocom.de /
                detail
- javacard, cosmetic: fix sourcecode fromatting and improve docstring
                —
                pmaier@sysmocom.de /
                detail
- global_platform: remove unused code
                —
                pmaier@sysmocom.de /
                detail
- global_platform: fix command "delete"
                —
                pmaier@sysmocom.de /
                detail
- global_platform: add spec reference to help of --install-parameters
                —
                pmaier@sysmocom.de /
                detail
- javacard: add parser for JAVA-card CAP file format
                —
                pmaier@sysmocom.de /
                detail
- cards: Avoid exception seen with (some) GSM-R SIM cards
                —
                laforge /
                detail
- global_platform: fix usage of the Key Version Number (kvn)
                —
                pmaier@sysmocom.de /
                detail
- global_platform: LOAD and INSTALL [for load] support
                —
                pmaier@sysmocom.de /
                detail
- global_platform: add new command "install_cap"
                —
                pmaier@sysmocom.de /
                detail
- ATR: use lowercase hex strings without spaces as ATR constants
                —
                pmaier@sysmocom.de /
                detail
- ATR: align get_atr() return value type
                —
                pmaier@sysmocom.de /
                detail
- pySim/transport: add abstract get_atr method to LinkBase
                —
                pmaier@sysmocom.de /
                detail
- .gitignore: dist subdir, may be created by pip
                —
                nhofmeyr /
                detail
- setup.py: install esim.asn1 resources, install esim.saip
                —
                nhofmeyr /
                detail
- euicc: Add euicc_memory_reset shell command
                —
                laforge /
                detail
- pySim-shell: obey quit command in startup commands+scripts
                —
                pmaier@sysmocom.de /
                detail
- docs/osmo-smdpp.rst: fix typo apostrophe
                —
                Neels Hofmeyr /
                detail
- osmo-smdpp.py: enable --host and --port cmdline args (and document)
                —
                Neels Hofmeyr /
                detail
- add PEM cert as used in docs/osmo-smdpp.rst
                —
                Neels Hofmeyr /
                detail
- .gitignore tags (from ctags)
                —
                Neels Hofmeyr /
                detail
- .gitignore: smdpp-data/sm-dp-sessions from running osmo-smdpp.py
                —
                Neels Hofmeyr /
                detail
- pylint: personalization.py: fix E1135: permitted_len
                —
                Neels Hofmeyr /
                detail
- pylint: ota.py: fix E0606 possibly-used-before-assignment
                —
                Neels Hofmeyr /
                detail
- filesystem: do not decode short TransRecEF records
                —
                laforge /
                detail
- es8p: fix typo
                —
                laforge /
                detail
- pySim/commands: Fix envelope command APDU case after T=1 support
                —
                laforge /
                detail
- [cosmetic] pySim.transport: Fix spelling/typos in comment
                —
                laforge /
                detail
- saip-tool: add function to write PE sequence
                —
                pmaier@sysmocom.de /
                detail
- saip-tool: add option to extact profile elements to file
                —
                pmaier@sysmocom.de /
                detail
- saip-tool: allow removing of profile elements by type
                —
                pmaier@sysmocom.de /
                detail
- saip-tool: add ProfileElement class for application PE
                —
                pmaier@sysmocom.de /
                detail
- pySim-smpp2sim.py: Simulate SMSC+CN+RAN+UE for OTA testing
                —
                laforge /
                detail
- saip-tool: add features to add, remove and inspect application PEs
                —
                laforge /
                detail
- ara_m: add command to lock write access to the ARA-M rules.
                —
                laforge /
                detail
- saip-tool: add commandline option to edit mandatory services list
                —
                pmaier@sysmocom.de /
                detail
- doc/card-key-provider: fix WARNING: Title underline too short
                —
                Vadim Yanitskiy /
                detail
- filesystem: fix WARNING: Block quote ends without a blank line
                —
                Vadim Yanitskiy /
                detail
- docs/saip-tool: fix ERROR: Unexpected indentation
                —
                Vadim Yanitskiy /
                detail
- edit_{binary,record}_decoded: Support hex-decode of bytes
                —
                laforge /
                detail
- osmo-smdpp: Renew SGP.26 TLS certificate for SM-DP+
                —
                laforge /
                detail
- Use osmocom.construct.{Bytes,GreedyBytes} for hexstring input support
                —
                laforge /
                detail
- jenkins.sh: workaround for 'usage: build.py' in docs
                —
                Vadim Yanitskiy /
                detail
- docs: Build the pySim.esim library documentation
                —
                laforge /
                detail
- docs: Better python doc-strings for better pySim.esim manual
                —
                laforge /
                detail
- Get rid of [now] superfluous HexAdapter
                —
                laforge /
                detail
- smdpp: optional deps
                —
                ewild /
                detail
- smdpp: update certs
                —
                benispeter /
                detail
- smdpp: verify request headers
                —
                benispeter /
                detail
- smdpp: Verify EID is within permitted range of EUM certificate
                —
                laforge /
                detail
- smdpp: reorder imports
                —
                ewild /
                detail
- smdpp: add proper tls support, cert generation FOR TESTING
                —
                ewild /
                detail
- smdp: clean up accidental commited trash
                —
                ewild /
                detail
- smdpp: less verbose by default
                —
                ewild /
                detail
- x509 cert: fix weird cert check
                —
                ewild /
                detail
- smdpp: verify cert chain
                —
                ewild /
                detail
- smdpp: add proper brp cert support
                —
                ewild /
                detail
- smdpp: fix asn1tool OBJECT IDENTIFIER decoding
                —
                ewild /
                detail
- memory backed ephermal session store for easy concurrent runs
                —
                ewild /
                detail
- smdp: update tls certs
                —
                benispeter /
                detail
- requirements: set cmd2>=2.6.2,<3.0
                —
                Oliver Smith /
                detail
- docs: fix authors line exceeding the page
                —
                Oliver Smith /
                detail
- Make sure to select MF before probing for files/Addons
                —
                laforge /
                detail
- Identify cards by Historical bytes of ATR
                —
                laforge /
                detail
- docs/suci-keytool.rst: spelling fix
                —
                laforge /
                detail
- bsp: fix maxpayloadsize
                —
                laforge /
                detail
- Fix typos
                —
                laforge /
                detail
- pySim.esim.saip.FsNodeADF: Fix __str__ method
                —
                laforge /
                detail
- Pass pylint 3.3.4 from debian trixie
                —
                Oliver Smith /
                detail