commit a2ab76a31c3796783aebb6f2ee88523c7961c24b Author: Daniele ViganĂ² Date: Sun Nov 23 11:40:48 2014 +0100 Initial commit diff --git a/etc/openct.conf b/etc/openct.conf new file mode 100644 index 0000000..dfa5972 --- /dev/null +++ b/etc/openct.conf @@ -0,0 +1,172 @@ +# Set debug level +debug = 0; +# +# Enable hot plugging +hotplug = yes; + +# +# Path to ifdhandler +ifdhandler { + program = /usr/sbin/ifdhandler; + # + # Safe to disable force_poll: + # >=linux-2.6.27.14 + # >=linux-2.6.28.3 + # + force_poll = 1; +# user = openctd; +# groups = { +# usb, +# }; +}; + +# +# Configuration for ifdproxy (if you use it) +ifdproxy { +# server-port = /var/run/openct/.ifdproxy, +# device-port = :6666; +}; + +# Configure static, non-hotplug aware readers here +# +# For a list of drivers try command 'ifdhandler -i', please +# notice that not all drivers have serial device capability. + +#reader towitoko { +# driver = towitoko; +# device = serial:/dev/ttyS0; +#}; + +#reader gempc { +# driver = gempc; +# device = serial:/dev/ttyS0; +#}; + +#reader cm4000 { +# driver = cm4000; +# device = pcmcia:/dev/cmm0; +#}; + +#reader cm4040 { +# driver = ccid; +# device = pcmcia_block:/dev/cmx0; +#}; + +#reader pertosmart1030 { +# driver = pertosmart1030; +# device = serial:/dev/ttyS0; +#}; + +# +# Hotplug IDs +driver egate { + ids = { + usb:0973/0001, + }; +}; + +driver ePass3000 { + ids = { + usb:096e/0401, + }; +}; + +driver etoken { + ids = { + usb:0529/050c, + usb:0529/0514, + }; +}; +driver etoken64 { + ids = { + usb:0529/0600, + usb:0529/0700, + }; +}; +driver eutron { + ids = { + usb:073d/0005, + }; +}; +driver ikey2k { + ids = { + usb:04b9/1202, + }; +}; +driver ikey3k { + ids = { + usb:04b9/1300, + }; +}; +driver starkey { + ids = { + usb:096e/0005, + }; +}; +driver cardman { + ids = { +# usb:076b/0596, # OMNIKEY CardMan 2020 +# usb:076b/1784, # OMNIKEY CardMan 6020 +# usb:08d4/0009, # Fujitsu Siemens SCR USB Reader + }; +}; +driver ccid { + ids = { + usb:03f0/1024, # HP Keyboard with CCID reader + usb:046a/0010, # Cherry smartboard G83-6744 + usb:04e6/5115, + usb:04e6/5116, + usb:04e6/5117, # SCM Micro token size reader + usb:04e6/511d, # SCM Micro SCR3311 + usb:04e6/E001, + usb:04e6/E003, + usb:073d/0c00, # Eutron SimPocket (doesn't work yet) + usb:076b/1021, # OmniKey CardMan 1021 + usb:076b/3021, + usb:076b/5121, + usb:076b/5321, # OmniKey CardMan 5321 + usb:076b/6622, # OmniKey CardMan 6121 + usb:0783/0003, + usb:08e6/3437, # Gemplus + usb:08e6/3438, # Gemplus GemPC Key SmartCard Reader + usb:08e6/4433, # Gemplus + usb:0b97/7762, # O2 Micro, Inc. Oz776 SmartCard Reader + usb:0b97/7772, # O2 Micro, Inc. Oz776 SmartCard Reader + usb:0bf8/1006, # fujitsu siemens 3.5" drive size reader + usb:0dc3/1004, # Athena Smartcard Solutions, Inc. ASEKey + usb:0a89/0030, # Aktiv Rutoken ECP + }; +}; +driver pertosmart1030 { + ids = { + usb:072f/0001, + usb:072f/8009, + }; +}; +driver pertosmart1038 { + ids = { + usb:072f/9000, + usb:072f/9006, # ACS CryptoMate Token + usb:072f/9007, # ACS ACR 100 SIMFlash + usb:072f/90d0, + }; +}; +#driver wbeiuu { # driver not working yet +# ids = { +# usb:104f/0004, +# }; +#}; + +# Tested with USBID 0c4b:0100. These are red readers: one with LCD, +# another one without. +driver cyberjack { + ids = { + usb:0c4b/0100, + }; +}; +driver rutoken { + ids = { + usb:0a89/0020, # Aktiv Rutoken S + usb:0a89/0012, # Aktiv uaToken S + }; +}; diff --git a/etc/udev/rules.d/60-openct.rules b/etc/udev/rules.d/60-openct.rules new file mode 100644 index 0000000..9b0ace9 --- /dev/null +++ b/etc/udev/rules.d/60-openct.rules @@ -0,0 +1,86 @@ +# udev rules file for openct + +# Update 2009-11-25 +# Thanks to Scott James Remnant and Martin Pitt for helping on irc +# to figure out the new syntax / rules for udev. + +# COMPATIBILITY NOTES +# new versions of udev want DRIVERS, older versions only support DRIVER +# new versions of udev want SUBSYSTEMS, older versions only support BUS +# +# new combinations of udev and linux kernel do not create proper events +# (or udev processes them "too fast" / race conditions) or similar. +# as a result there is no way to get openct-control run when a usb smart +# card reader is plugged in. restarting the init script will help as a +# crude workaround. +# +SUBSYSTEM!="usb", GOTO="openct_usb_rules_end" +ACTION!="add", GOTO="openct_usb_rules_end" + +# last file created by the kernel, if this is present everything should be +# KERNEL=="[0-9]*:*", WAIT_FOR_ATTR="bInterfaceProtocol" +# 2010-01-06 removed, as latest udev doesn't know WAIT_FOR_ATTR any more. + +# sleep for 100ms - the wait_for_sysfs might not be enough +# Disabled in this package - see https://bugzilla.redhat.com/287871 +# PROGRAM="/bin/sleep 0.1" + +# ccid +ATTR{bInterfaceClass}=="0b", ATTR{bInterfaceSubClass}=="00", ATTR{bInterfaceProtocol}=="00", ATTRS{idVendor}=="?*" RUN+="/lib/udev/openct_usb /dev/$parent" + +# egate +ATTR{idVendor}=="0973", ATTR{idProduct}=="0001", RUN+="/lib/udev/openct_usb /dev/$name" +# eToken +ATTR{idVendor}=="0529", ATTR{idProduct}=="050c", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="0529", ATTR{idProduct}=="0514", RUN+="/lib/udev/openct_usb /dev/$name" +# eToken 64 +ATTR{idVendor}=="0529", ATTR{idProduct}=="0600", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="0529", ATTR{idProduct}=="0700", RUN+="/lib/udev/openct_usb /dev/$name" +# eutron +ATTR{idVendor}=="073d", ATTR{idProduct}=="0005", RUN+="/lib/udev/openct_usb /dev/$name" +# ikey2k +ATTR{idVendor}=="04b9", ATTR{idProduct}=="1200", RUN+="/lib/udev/openct_usb /dev/$name" +# ikey3k +ATTR{idVendor}=="04b9", ATTR{idProduct}=="1300", RUN+="/lib/udev/openct_usb /dev/$name" +# starkey +ATTR{idVendor}=="096e", ATTR{idProduct}=="0005", RUN+="/lib/udev/openct_usb /dev/$name" +# cardman +#ATTR{idVendor}=="076b", ATTR{idProduct}=="0596", RUN+="/lib/udev/openct_usb /dev/$name" +#ATTR{idVendor}=="076b", ATTR{idProduct}=="1784", RUN+="/lib/udev/openct_usb /dev/$name" +#ATTR{idVendor}=="08d4", ATTR{idProduct}=="0009", RUN+="/lib/udev/openct_usb /dev/$name" + +# spr 532 - ccid, but with wrong interface class (vendor) :( +ATTR{idVendor}=="04e6", ATTR{idProduct}=="0003", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="04e6", ATTR{idProduct}=="E003", RUN+="/lib/udev/openct_usb /dev/$name" +# pertosmart1030 +ATTR{idVendor}=="072f", ATTR{idProduct}=="0001", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="072f", ATTR{idProduct}=="8009", RUN+="/lib/udev/openct_usb /dev/$name" +# pertosmart1038 +ATTR{idVendor}=="072f", ATTR{idProduct}=="9000", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="072f", ATTR{idProduct}=="9006", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="072f", ATTR{idProduct}=="9007", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="072f", ATTR{idProduct}=="90d0", RUN+="/lib/udev/openct_usb /dev/$name" +# wbeiuu - driver not working yet. +#ATTR{idVendor}=="104f", ATTR{idProduct}=="0004", RUN+="/lib/udev/openct_usb /dev/$name" +# cyberjack +ATTR{idVendor}=="0c4b", ATTR{idProduct}=="0100", RUN+="/lib/udev/openct_usb /dev/$name" +# rutoken +ATTR{idVendor}=="0a89", ATTR{idProduct}=="0020", RUN+="/lib/udev/openct_usb /dev/$name" +ATTR{idVendor}=="0a89", ATTR{idProduct}=="0012", RUN+="/lib/udev/openct_usb /dev/$name" +# ePass3000 +ATTR{idVendor}=="096e", ATTR{idProduct}=="0401", RUN+="/lib/udev/openct_usb /dev/$name" + +LABEL="openct_usb_rules_end" + +# udev pcmcia rules file for openct +# +SUBSYSTEMS!="pcmcia", GOTO="openct_pcmcia_rules_end" +ACTION!="add", GOTO="openct_pcmcia_rules_end" + +# omnikey cardman 4040 +SUBSYSTEM=="cardman_4040", RUN+="/lib/udev/openct_pcmcia /dev/$name" + +# Gemplus PCMCIA Card +DRIVERS=="serial_cs", ATTR{prod_id1}=="Gemplus", ATTR{prod_id2}=="SerialPort", ATTR{prod_id3}=="GemPC Card", RUN+="/lib/udev/openct_serial /dev/$name" + +LABEL="openct_pcmcia_rules_end"