Skip to content
Success

Changes

Summary

  1. pySim.esim.saip.personalization: Support Milenage customization (details)
  2. pyshark_gsmtap: Adjust display filter for some wireshark versions (details)
  3. ts_51_011/EF.SMSP: Fix parsing of parameter_indicators (details)
  4. unittest/test_files.TransparentEF_Test: Actually test encoder (details)
  5. unittests/test_files: Pass to-be-encoded length to encoder functions (details)
Commit ddbf91fc4aa8d033304b0cb1615ad9978c194357 by laforge
pySim.esim.saip.personalization: Support Milenage customization

Milenage offers the capability for operators to modify the r1-r5
rotation constants as well as the c1-c5 xor-ing constants; let's
add ConfigurableParameters for that.

Change-Id: I397df6c0c708a8061e4adc0fde03a3f746bcb5b6
Related: SYS#7787
The file was modifiedpySim/esim/saip/personalization.py
Commit 111f9da4f5b46c79b2fe0584a60ba52539c21503 by laforge
pyshark_gsmtap: Adjust display filter for some wireshark versions

On my debian unstable system with wireshark 4.6.2-3, the pyshark_gsmtap
APDU source misses to report any ATRs, as those are not part of what's
reported with the 'gsm_sim' display filter.  This is due to
wireshark.git commit bcd82e2370d18e20983b378d494964d89c191cef first part
of the 4.6.0 release, which splits the ATR dissection into a separate
sub-dissector.

We cannot use the seemingly logical 'gsmtap.type == 4' instead, as old
wireshark simply bypasses any output for the gsmtap header if the SIM
sub-dissector is used.

Hence, 'gsm_sim || iso7816.atr' is something compatible with older and
newer wireshark versions.

Change-Id: I53c1c8ed58a82c37cd4be4af3890af21da839e86
The file was modifiedpySim/apdu_source/pyshark_gsmtap.py
Commit a62fb2b987e6b08228177098f813cf6f95937d0a by laforge
ts_51_011/EF.SMSP: Fix parsing of parameter_indicators

There's a 3-bit RFU field that (unlike everything else in USIM/UICC)
considers '1' to be the default.  Let's make sure we get that right
during encode.

Change-Id: Ibe24a07f5f73d875d2077fa55471dbfc4e90da23
The file was modifiedtests/pySim-trace_test/pySim-trace_test_gsmtap.pcapng.ok
The file was modifiedpySim/ts_51_011.py
Commit 82b57403c79de04934da264e0be363ba99f5b797 by laforge
unittest/test_files.TransparentEF_Test: Actually test encoder

In the test_encode_file() method, we should actually test the encoder,
and not the decoder.  I suppose this was a copy+paste mistake at some
point?  In the LinearFixedEF_Test.test_encoder_record we were already
testing the encoder. Just TransparentEF_Test got it wrong...

Change-Id: Id23305a78ab9acd2e006f2b26b72408795844d23
The file was modifiedtests/unittests/test_files.py
Commit 9a23eab1634e8feb6c0cf4d4980a8a27c9b438bf by laforge
unittests/test_files: Pass to-be-encoded length to encoder functions

Some of the encoders can only generate valid output if they are told
the expected output size.  This is due to variable-length fields that
depend on the size of the total record (or file).  Let's always pass
the expected length to the encoder methods.

Change-Id: I88f957e49b0c88a121a266d3582e79822fa0e214
The file was modifiedtests/unittests/test_files.py