chiark / gitweb /
udev-acl: skip ACLs when systemd is running, disable by default
authorKay Sievers <kay.sievers@vrfy.org>
Thu, 14 Jul 2011 00:02:35 +0000 (02:02 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Thu, 14 Jul 2011 00:02:35 +0000 (02:02 +0200)
Makefile.am
configure.ac
extras/udev-acl/70-udev-acl.rules [moved from extras/udev-acl/70-acl.rules with 95% similarity]

index 0599bb24cf27b3c3daa995c72ba270f00ca93652..d2e9b855fe16a813ad95edde2a3511fcf4a0d120 100644 (file)
@@ -360,7 +360,7 @@ if ENABLE_UDEV_ACL
 extras_udev_acl_udev_acl_SOURCES = extras/udev-acl/udev-acl.c
 extras_udev_acl_udev_acl_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
 extras_udev_acl_udev_acl_LDADD = libudev/libudev-private.la -lacl $(GLIB_LIBS)
-dist_udevrules_DATA += extras/udev-acl/70-acl.rules
+dist_udevrules_DATA += extras/udev-acl/70-udev-acl.rules
 libexec_PROGRAMS += extras/udev-acl/udev-acl
 
 udevacl-install-hook:
index 7bdb229043a00e8b7314420c518f2598b57371d9..d1327ab5d24df223610b7e448c79f978e08cb3fb 100644 (file)
@@ -126,20 +126,6 @@ if test "x$enable_hwdb" = xyes; then
 fi
 AM_CONDITIONAL([ENABLE_HWDB], [test "x$enable_hwdb" = xyes])
 
-# ------------------------------------------------------------------------------
-# udev_acl - apply ACLs for users with local forground sessions
-# ------------------------------------------------------------------------------
-AC_ARG_ENABLE([udev_acl],
-       AS_HELP_STRING([--disable-udev_acl], [disable local user acl permissions support]),
-       [], [enable_udev_acl=yes])
-if test "x$enable_udev_acl" = xyes; then
-       AC_CHECK_LIB([acl], [acl_init], [:], AC_MSG_ERROR([libacl not found]))
-       AC_CHECK_HEADER([acl/libacl.h], [:], AC_MSG_ERROR([libacl header not found]))
-
-       PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0])
-fi
-AM_CONDITIONAL([ENABLE_UDEV_ACL], [test "x$enable_udev_acl" = xyes])
-
 # ------------------------------------------------------------------------------
 # GUdev - libudev gobject interface
 # ------------------------------------------------------------------------------
@@ -183,6 +169,20 @@ if test "x$enable_keymap" = xyes; then
 fi
 AM_CONDITIONAL([ENABLE_KEYMAP], [test "x$enable_keymap" = xyes])
 
+# ------------------------------------------------------------------------------
+# udev_acl - apply ACLs for users with local forground sessions
+# ------------------------------------------------------------------------------
+AC_ARG_ENABLE([udev_acl],
+       AS_HELP_STRING([--enable-udev_acl], [enable local user acl permissions support]),
+       [], [enable_udev_acl=no])
+if test "x$enable_udev_acl" = xyes; then
+       AC_CHECK_LIB([acl], [acl_init], [:], AC_MSG_ERROR([libacl not found]))
+       AC_CHECK_HEADER([acl/libacl.h], [:], AC_MSG_ERROR([libacl header not found]))
+
+       PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0])
+fi
+AM_CONDITIONAL([ENABLE_UDEV_ACL], [test "x$enable_udev_acl" = xyes])
+
 # ------------------------------------------------------------------------------
 # create_floppy_devices - historical floppy kernel device nodes (/dev/fd0h1440, ...)
 # ------------------------------------------------------------------------------
similarity index 95%
rename from extras/udev-acl/70-acl.rules
rename to extras/udev-acl/70-udev-acl.rules
index 5dc5ed0bfc0e1ee865a8d942dbcad98e451e5cdf..2dac283101aee6ef75f2e1e397d6d91c3a4c92c1 100644 (file)
@@ -6,6 +6,9 @@
 ENV{MAJOR}=="", GOTO="acl_end"
 ACTION=="remove", GOTO="acl_apply"
 
+# systemd replaces udev-acl entirely, skip if active
+TEST=="/sys/fs/cgroup/systemd", TAG=="uaccess", GOTO="acl_end"
+
 # PTP/MTP protocol devices, cameras, portable media players
 SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:060101:*", TAG+="udev-acl"