Skip to content

Commit 3c1aabd

Browse files
bluetechLudovicRousseau
authored andcommitted
Give pcscd group permission to CCID devices in udev rule
USB devices for CCID smart read readers will now have the group set to pcscd. Example: $ lsusb Bus 001 Device 002: ID 08e6:3437 Gemalto (was Gemplus) GemPC Twin SmartCard Reader [...] $ ls -l /dev/bus/usb/001/002 crw-rw-r--+ 1 root pcscd 189, 1 21 avril 13:14 /dev/bus/usb/001/002 Any process in group pcscd will have read and write access to the device. It allows pcscd process to run as a normal user instead of root and still have access to the device.
1 parent 73b0898 commit 3c1aabd

1 file changed

Lines changed: 54 additions & 1 deletion

File tree

src/92_pcscd_ccid.rules

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,59 @@ ACTION!="add", GOTO="pcscd_ccid_rules_end"
88
SUBSYSTEM!="usb", GOTO="pcscd_ccid_rules_end"
99
ENV{DEVTYPE}!="usb_device", GOTO="pcscd_ccid_rules_end"
1010

11+
# Generic CCID device (bInterfaceClass = 0x0b)
12+
ENV{ID_USB_INTERFACES}=="*:0b0000:*", GROUP="pcscd"
13+
14+
# Non CCID generic (InterfaceClass: 0xFF)
15+
# CherrySmartTerminalST2XXX.txt
16+
ATTRS{idVendor}=="046A", ATTRS{idProduct}=="003E", GROUP="pcscd"
17+
# SCR331-DI-NTTCom.txt
18+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="5120", GROUP="pcscd"
19+
# SCM_SDI011.txt
20+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="512B", GROUP="pcscd"
21+
# SCM_SDI011_512C.txt
22+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="512C", GROUP="pcscd"
23+
# SCL010.txt
24+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="5291", GROUP="pcscd"
25+
# SCL01x.txt
26+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="5292", GROUP="pcscd"
27+
# SCR3310-NTTCom.txt
28+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="511A", GROUP="pcscd"
29+
# SCR331-DI-NTTCom.txt
30+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="5120", GROUP="pcscd"
31+
# SCR331-DI.txt
32+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="5111", GROUP="pcscd"
33+
# SDI010.txt
34+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="5121", GROUP="pcscd"
35+
# SPR532.txt
36+
ATTRS{idVendor}=="04E6", ATTRS{idProduct}=="E003", GROUP="pcscd"
37+
# ReinerSCT.txt
38+
ATTRS{idVendor}=="0C4B", ATTRS{idProduct}=="0300", GROUP="pcscd"
39+
# ReinerSCT_cyberJack_RFID_standard.txt
40+
ATTRS{idVendor}=="0C4B", ATTRS{idProduct}=="0500", GROUP="pcscd"
41+
# OMNIKEY_5321_CLi_USB.txt
42+
ATTRS{idVendor}=="076B", ATTRS{idProduct}=="532A", GROUP="pcscd"
43+
# HID_5021_CL.txt
44+
ATTRS{idVendor}=="076B", ATTRS{idProduct}=="5340", GROUP="pcscd"
45+
# Gem_e-SealPro.txt
46+
ATTRS{idVendor}=="08E6", ATTRS{idProduct}=="2202", GROUP="pcscd"
47+
# MySmartPad.txt
48+
ATTRS{idVendor}=="09BE", ATTRS{idProduct}=="0002", GROUP="pcscd"
49+
# Verisign_secure_storage_token.txt
50+
ATTRS{idVendor}=="08E6", ATTRS{idProduct}=="1359", GROUP="pcscd"
51+
# Verisign_secure_token.txt
52+
ATTRS{idVendor}=="08E6", ATTRS{idProduct}=="ACE0", GROUP="pcscd"
53+
# e-gate.txt
54+
ATTRS{idVendor}=="0973", ATTRS{idProduct}=="0003", GROUP="pcscd"
55+
# Oberthur-CosmoCard.txt
56+
ATTRS{idVendor}=="1A74", ATTRS{idProduct}=="6354", GROUP="pcscd"
57+
# Oberthur-CosmoCard1.txt
58+
ATTRS{idVendor}=="1A74", ATTRS{idProduct}=="6356", GROUP="pcscd"
59+
# DUALi_DE-ABCM6.txt
60+
ATTRS{idVendor}=="1DB2", ATTRS{idProduct}=="0600", GROUP="pcscd"
61+
# DellSK-3106.txt
62+
ATTRS{idVendor}=="413C", ATTRS{idProduct}=="2100", GROUP="pcscd"
63+
1164
# Kobil mIDentity
1265
ATTRS{idVendor}=="0d46", ATTRS{idProduct}=="4081", RUN+="/usr/sbin/Kobil_mIDentity_switch"
1366

@@ -23,7 +76,7 @@ ATTR{idVendor}=="058f", ATTR{idProduct}=="9520", GOTO="pcscd_ccid_rules_end"
2376

2477

2578
# set USB power management to auto.
26-
ENV{ID_USB_INTERFACES}==":0b0000:", TEST=="power/control", ATTR{power/control}="auto"
79+
ENV{ID_USB_INTERFACES}=="*:0b0000:*", TEST=="power/control", ATTR{power/control}="auto"
2780

2881
# All done
2982
LABEL="pcscd_ccid_rules_end"

0 commit comments

Comments
 (0)