chiark / gitweb /
Add ACLs for FFADO supported sound cards
[elogind.git] / extras / udev-acl / 70-acl.rules
1 # do not edit this file, it will be overwritten on update
2
3 # Do not use TAG+="udev-acl" outside of this file. This variable is private to
4 # udev-acl of this udev release and may be replaced at any time.
5
6 ENV{MAJOR}=="", GOTO="acl_end"
7 ACTION=="remove", GOTO="acl_apply"
8
9 # PTP/MTP protocol devices, cameras, portable media players
10 SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="", ENV{DEVTYPE}=="usb_device", IMPORT{program}="usb_id --export %p"
11 SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:060101:*", TAG+="udev-acl"
12
13 # digicams with proprietary protocol
14 ENV{ID_GPHOTO2}=="*?", TAG+="udev-acl"
15
16 # SCSI and USB scanners
17 ENV{libsane_matched}=="yes", TAG+="udev-acl"
18
19 # HPLIP devices (necessary for ink level check and HP tool maintenance)
20 ENV{ID_HPLIP}=="1", TAG+="udev-acl"
21
22 # optical drives
23 SUBSYSTEM=="block", ENV{ID_CDROM}=="1", TAG+="udev-acl"
24
25 # sound devices
26 SUBSYSTEM=="sound", TAG+="udev-acl"
27 # sound jack-sense
28 SUBSYSTEM=="input", SUBSYSTEMS=="sound", TAG+="udev-acl"
29 # ffado is an userspace driver for firewire sound cards
30 SUBSYSTEM=="firewire", ENV{ID_FFADO}=="1", TAG+="udev-acl"
31
32 # webcams, frame grabber, TV cards
33 SUBSYSTEM=="video4linux", TAG+="udev-acl"
34 SUBSYSTEM=="dvb", TAG+="udev-acl"
35
36 # IIDC devices: industrial cameras and some webcams
37 SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*",  TAG+="udev-acl"
38 SUBSYSTEM=="firewire", ATTR{units}=="*0x00b09d:0x00010*",  TAG+="udev-acl"
39 # AV/C devices: camcorders, set-top boxes, TV sets, audio devices, and more
40 SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", TAG+="udev-acl"
41 SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x014001*", TAG+="udev-acl"
42
43 # DRI video devices
44 SUBSYSTEM=="drm", KERNEL=="card*", TAG+="udev-acl"
45
46 # KVM
47 SUBSYSTEM=="misc", KERNEL=="kvm", TAG+="udev-acl"
48
49 # smart-card readers
50 ENV{ID_SMARTCARD_READER}=="*?", TAG+="udev-acl"
51
52 # PDA devices
53 ENV{ID_PDA}=="*?", TAG+="udev-acl"
54
55 # joysticks
56 SUBSYSTEM=="input", ENV{ID_INPUT_JOYSTICK}=="?*", TAG+="udev-acl"
57
58 # color measurement devices
59 ENV{COLOR_MEASUREMENT_DEVICE}=="*?", TAG+="udev-acl"
60
61 # DDC/CI device, usually high-end monitors such as the DreamColor
62 ENV{DDC_DEVICE}=="*?", TAG+="udev-acl"
63
64 # media player raw devices (for user-mode drivers, Android SDK, etc.)
65 SUBSYSTEM=="usb", ENV{ID_MEDIA_PLAYER}=="?*", TAG+="udev-acl"
66
67 # apply ACL for all locally logged in users
68 LABEL="acl_apply", TAG=="udev-acl", TEST=="/var/run/ConsoleKit/database", \
69   RUN+="udev-acl --action=$env{ACTION} --device=$env{DEVNAME}"
70
71 LABEL="acl_end"