PySim-shell: File not found errors

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Harald Welte laforge at osmocom.org
Sun Jun 6 20:37:42 UTC 2021


Hi Bryan,

On Sun, Jun 06, 2021 at 12:18:48PM -0400, bryan coxwell wrote:
> I'm using pySim-Shell with a SysmoISIM-SJA2 as well as a SysmoUSIM-SJS1 and
> on both cards I get quite a few "File not found" errors trying to access
> different EFs. 

This is more or less expected, given that the card profiles always reflect
the time at which they were created.  sysmoUSIM-SJS1 was specified in 2014,
and it certainly doesn't contain any files that were introduced in later 3GPP
releases.  At that time, our main goal was to provide a USIM at all, having
previously only provided 2G SIMs.

For sysmoISIM-SJA2: It should have most files of 3GPP Rel15.  So here it's
quite rare you would end up missing some files.

Right now we're working on sysmoISIM-SJA2 v2 (avaliable in ~ 2 months from
now) which then is updated to 3GPP Release 16 files, and the first card to
also contain BER-TLV EFs.

> 1) ./pySim-shell -p0
> 2) verify_adm <adm1 key>
> 3) select ADF.USIM
> 
> Now when I run "dir" in ADF.USIM it lists a number of EFs I'm interested
> in, including EF.NCP-IP. Since this requires service number 80 to be
> available in EF.UST, I run "select EF.UST" followed by
> "ust_service_activate 80". This runs without issue.

The file will be present whether or not you activate the service. The two
are completely independent of each other on the CardOS side.  Only the UE
and the 3GPP specs mandate that those two reflect/mirror each other.  To
the CardOS, EF.UST is just a file with some opaque binary data. It doesn't
know its logical meaning.

> When I run select ADF.USIM now followed by select EF.NCP-IP, the card
> returns a "File not found" error. So my questions are:

Is this with a sysmoISIM-SJA2?  I am looking at dumps I created of SJA2
cards and they definitely contain  EF.NCP-IP.

Can you please provide a copy+paste of your pySim-shell session with
'set apdu_trace true' while you try to select that file on a sysmoISIM-SJA2?

> Is this file not supported on the SJA2 and SJS1?

Only on SJA2.

> Is there a way for me to add those files to ADF.USIM?

No, the filesystem is fixed at the profile creation time.  This is why
I've tried very hard with the SJA2 to include any and all files that I
could find in all relevant specs (SIM, UICC, USIM, ISIM, HPSIM) at the
time of profile creation - to ensure the maximum flexibility for our
users.

> Is there a list of the known supported EFs of the SJA2 and SJS1? I looked
> and couldn't find anything.

Unfortunately it is not available.  It would be great if somebody would add
a 'brute force scan' to pySim-shell, which basically tries all possible 65535
file IDs, and if it's selectable and a DF, recursively continues to do so.

This approach would be universal and work with all cards, past, present
or future.  And it would be guaranteed correct, unlike any manually
maintained lists in some manual or wiki...

Kind regards,
	Harald
-- 
- Harald Welte <laforge at osmocom.org>            http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
                                                  (ETSI EN 300 175-7 Ch. A6)



More information about the OpenBSC mailing list