From fc71f7e6f27829a389dacc38622eb687109133f6 Mon Sep 17 00:00:00 2001 From: Luca Ceresoli Date: Mon, 11 Jul 2011 12:25:51 +0200 Subject: busybox: provide /etc/mdev.conf if mdev is used Without an mdev.conf file installed, mdev generates some /dev entries in an incorrect or non-standard way. Some examples: 1. /dev/null has permissions 660, but it should be accessible to normal users; 2. alsa devices get created in /dev, not /dev/snd as is more common, and as the default value of BR2_PACKAGE_ALSA_LIB_DEVDIR suggests; 3. event files are created in /dev, not /dev/input. This mdev.conf is a selection from the examples provided in the busybox sources with minor tweaks. Signed-off-by: Luca Ceresoli Signed-off-by: Peter Korsgaard --- package/busybox/busybox.mk | 6 ++++++ package/busybox/mdev.conf | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 package/busybox/mdev.conf diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk index 509c3bb9f..8998ca083 100644 --- a/package/busybox/busybox.mk +++ b/package/busybox/busybox.mk @@ -33,6 +33,11 @@ ifeq ($(BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV),y) define BUSYBOX_INSTALL_MDEV_SCRIPT install -m 0755 package/busybox/S10mdev $(TARGET_DIR)/etc/init.d endef +define BUSYBOX_INSTALL_MDEV_CONF + [ -f $(TARGET_DIR)/etc/mdev.conf ] || \ + install -D -m 0644 package/busybox/mdev.conf \ + $(TARGET_DIR)/etc/mdev.conf +endef define BUSYBOX_SET_MDEV $(call KCONFIG_ENABLE_OPT,CONFIG_MDEV,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_MDEV_CONF,$(BUSYBOX_BUILD_CONFIG)) @@ -159,6 +164,7 @@ define BUSYBOX_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/share/udhcpc/default.script; \ fi $(BUSYBOX_INSTALL_MDEV_SCRIPT) + $(BUSYBOX_INSTALL_MDEV_CONF) $(BUSYBOX_INSTALL_LOGGING_SCRIPT) endef diff --git a/package/busybox/mdev.conf b/package/busybox/mdev.conf new file mode 100644 index 000000000..247c0ed02 --- /dev/null +++ b/package/busybox/mdev.conf @@ -0,0 +1,35 @@ +# null may already exist; therefore ownership has to be changed with command +null root:root 666 @chmod 666 $MDEV +zero root:root 666 +full root:root 666 +random root:root 444 +urandom root:root 444 +hwrandom root:root 444 +grsec root:root 660 + +kmem root:root 640 +mem root:root 640 +port root:root 640 +# console may already exist; therefore ownership has to be changed with command +console root:tty 600 @chmod 600 $MDEV +ptmx root:tty 666 +pty.* root:tty 660 + +# Typical devices +tty root:tty 666 +tty[0-9]* root:tty 660 +vcsa*[0-9]* root:tty 660 +ttyS[0-9]* root:root 660 + +# alsa sound devices +pcm.* root:audio 660 =snd/ +control.* root:audio 660 =snd/ +midi.* root:audio 660 =snd/ +seq root:audio 660 =snd/ +timer root:audio 660 =snd/ + +# input stuff +event[0-9]+ root:root 640 =input/ +mice root:root 640 =input/ +mouse[0-9] root:root 640 =input/ +ts[0-9] root:root 600 =input/ -- cgit v1.2.3