Hi Andreas, On Thursday 16 March 2006 11:56, Andreas Jellinghaus wrote: > to write a new driver you could help with: > a) cat/proc/bus/usb/devices - only the part for those devices, > so we can see how they look like / how to identify the hardware. > (usualy this is done with vendor and product id, but eutron had > several different tokens with the same values in the past making > this difficult)
Here it is: T: Bus=02 Lev=02 Prnt=110 Port=01 Cnt=02 Dev#=112 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=ff(vend.) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=073d ProdID=0005 Rev= 1.71 S: Manufacturer=Eutron S.p.a. S: Product=Crypto USB token C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr= 64mA I: If#= 0 Alt= 0 #EPs= 0 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none) I wonder if the FF class is causing the problem? According to 'lsusb -v', the device has no detectable "endpoints" (so maybe they must be blindly accessed? I don't know much about usb..) > b) use windows, install the sniffer (see openct page) and export > the resulting log as text file. best if the logs starts with a device > being inserted and then some playing around with some tool. http://affinix.com/~justin/usbsnoop.log (1.5MB) This is insert, loading SafeSign tokenadmin, waiting for tokenadmin to "see" the card, viewing the list of public objects on the card, closing tokenadmin, removing the card. I think SafeSign also has a background service of some sort, so that might account for the extra log activity even when tokenadmin wasn't running. > also if you want to give it a try, take a look at openct code, the > ikey*, etoken or eutron drivers. they are all plain simple: some magic > command sequences for initializing the hardware, and then simple > usb control transfers for sending / receiving apdus. if eutron kepts > the hardware as simple, the driver is only a couple of hours work > at most. Yes, ifd-eutron.c looks quite simple. Syslog reports "eutron: failed to activate token", which is in eutron_card_reset(), so I should probably first look for problems there. Could you briefly explain what each phase of this function is? There seems to be a lot of calls to ifd_usb_control() in chunks or in loops. -Justin _______________________________________________ opensc-devel mailing list opensc-devel@lists.opensc-project.org http://www.opensc-project.org/mailman/listinfo/opensc-devel