diff options
author | sschweizer@gmail.com <sschweizer@gmail.com> | 2004-12-02 22:23:21 -0800 |
---|---|---|
committer | Greg KH <gregkh@suse.de> | 2005-04-26 22:43:36 -0700 |
commit | 8a0dc204e902a47a5b251c6d4a29eddb8f4a634a (patch) | |
tree | 4739ec025f514009fa3cac23c16f273e0958bc39 | |
parent | ad89f2be3b045f37b7e17de10f5ad46dbb09664f (diff) |
[PATCH] Allow GROUP to have modifiers in it
-rw-r--r-- | etc/udev/udev.rules.gentoo | 2 | ||||
-rw-r--r-- | extras/ide-devfs.sh | 6 | ||||
-rw-r--r-- | namedev.c | 5 |
3 files changed, 9 insertions, 4 deletions
diff --git a/etc/udev/udev.rules.gentoo b/etc/udev/udev.rules.gentoo index 1809232ed0..997acb8a34 100644 --- a/etc/udev/udev.rules.gentoo +++ b/etc/udev/udev.rules.gentoo @@ -19,7 +19,7 @@ BUS="scsi", KERNEL="scd[a-z]", PROGRAM="/etc/udev/scripts/cdsymlinks.sh %k", SYM # devfs-names for ide-devices (uncomment only one) # /dev/ide/.../{disc,cd} and /dev/{cdroms,discs}/* type names -BUS="ide", KERNEL="hd*", PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", NAME="%k", SYMLINK="%c{1} %c{2}" +BUS="ide", KERNEL="hd*", PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", NAME="%k", SYMLINK="%c{1} %c{2}", GROUP="%c{3}" # dri devices KERNEL="card*", NAME="dri/card%n" diff --git a/extras/ide-devfs.sh b/extras/ide-devfs.sh index 4f20259480..580a751abe 100644 --- a/extras/ide-devfs.sh +++ b/extras/ide-devfs.sh @@ -36,11 +36,11 @@ get_dev_number() { if [ -z "$3" ] && [ -f /proc/ide/${1}/media ]; then MEDIA=`cat /proc/ide/${1}/media` if [ "${MEDIA}" = "cdrom" ]; then - echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/cd cdroms/cdrom`get_dev_number $1 cdrom` + echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/cd cdroms/cdrom`get_dev_number $1 cdrom` ${MEDIA} elif [ "${MEDIA}" = "floppy" ]; then - echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/disc floppies/floppy`get_dev_number $1 floppy`/disc + echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/disc floppies/floppy`get_dev_number $1 floppy`/disc ${MEDIA} elif [ "${MEDIA}" = "disk" ]; then - echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/disc discs/disc`get_dev_number $1 disk`/disc + echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/disc discs/disc`get_dev_number $1 disk`/disc ${MEDIA} fi else echo ide/host${HOST}/bus${BUS}/target${TARGET}/lun0/part$3 discs/disc`get_dev_number $1 disk`/part$3 @@ -809,6 +809,11 @@ found: udev->partitions = dev->partitions; udev->ignore_remove = dev->ignore_remove; + if (dev->group[0] != '\0') { + strfieldcpy(udev->group, dev->group); + apply_format(udev, udev->group, sizeof(udev->group), class_dev, sysfs_device); + } + /* get permissions given in rule */ set_empty_perms(udev, dev->mode, dev->owner, |