summaryrefslogtreecommitdiff
path: root/extras/udev-acl/70-acl.rules
blob: 78e3ebae5351f43d0874c414a5e9147c107001da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# do not edit this file, it will be overwritten on update

ENV{MAJOR}=="", GOTO="acl_end"
ENV{ACL_MANAGE}=="0", GOTO="acl_end"
ACTION!="add|change", GOTO="acl_apply"

# PTP/MTP protocol devices, cameras, portable media players
SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="", ENV{DEVTYPE}=="usb_device", IMPORT{program}="usb_id --export %p"
SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:060101:*", ENV{ACL_MANAGE}="1"

# digicams with proprietary protocol
ENV{ID_GPHOTO2}=="*?", ENV{ACL_MANAGE}="1"

# SCSI scanners
KERNEL=="sg[0-9]*", ATTRS{type}=="6", ENV{ACL_MANAGE}="1"
KERNEL=="sg[0-9]*", ATTRS{type}=="3", ATTRS{vendor}=="HP|EPSON|Epson", ENV{ACL_MANAGE}="1"

# USB scanners
ENV{libsane_matched}=="yes", ENV{ACL_MANAGE}="1"

# HPLIP devices (necessary for ink level check and HP tool maintenance)
ENV{ID_HPLIP}=="1", ENV{ACL_MANAGE}="1"

# optical drives
SUBSYSTEM=="block", ENV{ID_CDROM}=="1", ENV{ACL_MANAGE}="1"

# sound devices
SUBSYSTEM=="sound", ENV{ACL_MANAGE}="1"
# sound jack-sense
SUBSYSTEM=="input", SUBSYSTEMS=="sound", ENV{ACL_MANAGE}="1"

# webcams, frame grabber, TV cards
SUBSYSTEM=="video4linux", ENV{ACL_MANAGE}="1"
SUBSYSTEM=="dvb", ENV{ACL_MANAGE}="1"

# IIDC devices: industrial cameras and some webcams
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*",  ENV{ACL_MANAGE}="1"
# AV/C devices: camcorders, set-top boxes, TV sets, audio devices, and more
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", ENV{ACL_MANAGE}="1"

# old style firewire devices
KERNEL=="dv1394-[0-9]*", ENV{ACL_MANAGE}="1"
KERNEL=="video1394-[0-9]*", ENV{ACL_MANAGE}="1"

# fingerprint readers
SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="2016", ENV{ACL_MANAGE}="1"

# DRI video devices
SUBSYSTEM=="drm", KERNEL=="card*", ENV{ACL_MANAGE}="1"

# KVM
SUBSYSTEM=="misc", KERNEL=="kvm", ENV{ACL_MANAGE}="1"

# smart-card readers
ENV{ID_SMARTCARD_READER}=="*?", ENV{ACL_MANAGE}="1"

# joysticks
SUBSYSTEM=="input", ENV{ID_INPUT_JOYSTICK}=="?*", ENV{ACL_MANAGE}="1"

# smart phones
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c02", ENV{ACL_MANAGE}="1"

# color measurement devices
ENV{COLOR_MEASUREMENT_DEVICE}=="*?", ENV{ACL_MANAGE}="1"

# apply ACL for all locally logged in users
LABEL="acl_apply", ENV{ACL_MANAGE}=="?*", TEST=="/var/run/ConsoleKit/database", \
  RUN+="udev-acl --action=$env{ACTION} --device=$env{DEVNAME}"

LABEL="acl_end"