On Tue, Oct 18, 2016 at 11:23:42AM +0200, Holger Freyther wrote:
> 
> > On 17 Oct 2016, at 19:27, Ivaylo Kostov <[email protected]> wrote:
> > 
> >> ./pySim-read.py -p 0
> >> Reading ...
> >> Traceback (most recent call last):
> >>  File "./pySim-read.py", line 90, in <module>
> >>    (res, sw) = scc.read_binary(['3f00', '2fe2'])
> >>  File "/home/wirelesss/net/pysim/pySim/commands.py", line 51, in 
> >> read_binary
> >>    r = self.select_file(ef)
> >>  File "/home/wirelesss/net/pysim/pySim/commands.py", line 44, in 
> >> select_file
> >>    data, sw = self._tp.send_apdu_checksw(self.cla_byte + "a4000C02" + i)
> >>  File "/home/wirelesss/net/pysim/pySim/transport/__init__.py", line 87, in 
> >> send_apdu_checksw
> >>    raise RuntimeError("SW match failed ! Expected %s and got %s." % 
> >> (sw.lower(), rv[1]))
> >> RuntimeError: SW match failed ! Expected 9000 and got 6b00.
> 
> I think master has issues with the GR1 card, e.g. try 
> e9e5ecbe3068dae7e6e0959f22ed1855911dc892
> 
> holger

I can confirm: current pySim master fails for sysmosim-gr1.

My local pySim clone was still on the revision before that, which works
like a charm. As soon as I pulled the latest master, I got the same error
as Ivo, also confirmed by Max.

It looks like we should revert this commit, and/or make it configurable by a
command line option that is off by default, or maybe depend this on the SIM 
type in use?


commit 8c1b33c439fef423c3536e9243035722c52aba4c
Refs: {origin/HEAD}, {origin/master}, {origin/zecke/tmp}
Author:     Jan Balke <[email protected]>
AuthorDate: Mon Jan 26 11:18:28 2015 +0100
Commit:     Harald Welte <[email protected]>
CommitDate: Thu Aug 20 13:32:56 2015 +0200

    Do not return the FCI information while selecting a file

    The sysmoUSIM-SJS1 card does not support returning the FCI
    information.
    Plus, the FCI information are not used anyway.
---
 pySim/commands.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pySim/commands.py b/pySim/commands.py
index cb72a11..721b3d4 100644
--- a/pySim/commands.py
+++ b/pySim/commands.py
@@ -41,7 +41,7 @@ class SimCardCommands(object):
        def select_file(self, dir_list):
                rv = []
                for i in dir_list:
-                       data, sw = self._tp.send_apdu_checksw(self.cla_byte + 
"a4000002" + i)
+                       data, sw = self._tp.send_apdu_checksw(self.cla_byte + 
"a4000C02" + i)
                        rv.append(data)
                return rv


-- 
- Neels Hofmeyr <[email protected]>          http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschäftsführer / Managing Directors: Harald Welte

Attachment: signature.asc
Description: Digital signature

Reply via email to