mirror of
https://github.com/systemd/systemd.git
synced 2024-11-05 23:51:28 +03:00
5c3ebbf35a
When a custom rule sets ACL_MANAGE to 0 to disable ACL management for a particular device, handle this as "disabled", by explicitly checking against "1" instead of "nonempty". Thanks to Rafał Rzepecki for pointing this out.
76 lines
2.4 KiB
Plaintext
76 lines
2.4 KiB
Plaintext
# 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"
|
|
|
|
# GPS devices
|
|
# Garmin GPSMap 60
|
|
SUBSYSTEM=="usb", ATTR{idVendor}=="091e", ATTR{idProduct}=="0003", 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}=="1", TEST=="/var/run/ConsoleKit/database", \
|
|
RUN+="udev-acl --action=$env{ACTION} --device=$env{DEVNAME}"
|
|
|
|
LABEL="acl_end"
|