rpms/udev/FC-4 firmware_helper.c, NONE, 1.1 hotplug.rules, NONE, 1.1 path_id, NONE, 1.1 udev-071-rh.patch, NONE, 1.1 sources, 1.22, 1.23 start_udev, 1.36, 1.37 udev.rules, 1.27, 1.28 udev.spec, 1.92, 1.93 ata_identify-Makefile, 1.3, NONE ata_identify.c, 1.4, NONE udev-039-dircheck.patch, 1.1, NONE udev-039-media.patch, 1.1, NONE udev-039-scsi_id-tmp_dir.patch, 1.1, NONE udev-039-static.patch, 1.3, NONE udev-048-selinux.patch, 1.1, NONE udev-056-selinux.patch, 1.1, NONE udev.get_persistent_device_name.sh, 1.3, NONE udev.get_unique_drive_id.sh, 1.3, NONE udev.get_unique_hardware_path.sh, 1.3, NONE udev.permissions, 1.9, NONE udev.rules.persistent, 1.5, NONE
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Wed Jan 25 10:03:34 UTC 2006
Author: harald
Update of /cvs/dist/rpms/udev/FC-4
In directory cvs.devel.redhat.com:/tmp/cvs-serv24008
Modified Files:
sources start_udev udev.rules udev.spec
Added Files:
firmware_helper.c hotplug.rules path_id udev-071-rh.patch
Removed Files:
ata_identify-Makefile ata_identify.c udev-039-dircheck.patch
udev-039-media.patch udev-039-scsi_id-tmp_dir.patch
udev-039-static.patch udev-048-selinux.patch
udev-056-selinux.patch udev.get_persistent_device_name.sh
udev.get_unique_drive_id.sh udev.get_unique_hardware_path.sh
udev.permissions udev.rules.persistent
Log Message:
- version 071 for FC-4
--- NEW FILE firmware_helper.c ---
/*
* A simple firmware helper program.
*
* Copyright 2005 Red Hat, Inc.
*
* This software may be freely redistributed under the terms of the GNU
* public license.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <syslog.h>
#include <unistd.h>
#include <sys/stat.h>
#define FIRMWARE_PATH "/lib/firmware"
void log_err(char *firmware, int err) {
char *driver;
driver = getenv("PHYSDEVDRIVER");
if (!driver)
driver = "(unknown)";
openlog("firmware_helper",LOG_PID,LOG_USER);
syslog(LOG_ERR,"Loading of %s for %s driver failed: %s",firmware, driver, strerror(err));
closelog();
}
/* Set the 'loading' attribute for a firmware device.
* 1 == currently loading
* 0 == done loading
* -1 == error
*/
int set_loading(char *device, int value) {
char *path;
int rc;
FILE *f;
path = alloca(strlen(device)+15);
sprintf(path,"/sys/%s/loading", device);
f = fopen(path, "w");
if (!f)
return 1;
rc = fprintf(f, "%d", value);
fclose(f);
if (rc < 0)
return rc;
return 0;
}
int main(int argc, char **argv) {
char *devpath, *firmware, *action;
struct stat sbuf;
int fw_fd, count;
int rc;
char *fw_path, *data_path;
char *fw_buffer;
devpath = getenv("DEVPATH");
if (!devpath) return 0;
firmware = getenv("FIRMWARE");
if (!firmware) return 0;
action = getenv("ACTION");
if (strcmp(action,"add"))
return 0;
set_loading(devpath, 1);
fw_path = malloc(strlen(FIRMWARE_PATH) + strlen(firmware) + 2);
if (!fw_path) {
rc = errno;
goto out_err;
}
sprintf(fw_path,"%s/%s", FIRMWARE_PATH, firmware);
fw_fd = open(fw_path, O_RDONLY);
if (fw_fd == -1) {
rc = errno;
goto out_err;
}
fstat(fw_fd, &sbuf);
fw_buffer = malloc(sbuf.st_size);
if (!fw_buffer) {
rc = errno;
goto out_err;
}
if (read(fw_fd, fw_buffer, sbuf.st_size) != sbuf.st_size) {
rc = errno;
goto out_err;
}
close(fw_fd);
data_path = malloc(strlen(devpath) + 12);
if (!data_path) {
rc = errno;
goto out_err;
}
sprintf(data_path,"/sys/%s/data", devpath);
fw_fd = open(data_path, O_RDWR);
if (fw_fd == -1) {
rc = errno;
goto out_err;
}
count = 0;
while (count < sbuf.st_size) {
int c;
c = write(fw_fd,fw_buffer+count,sbuf.st_size-count);
if (c <= 0) {
rc = errno;
goto out_err;
}
count += c;
}
close(fw_fd);
set_loading(devpath, 0);
return 0;
out_err:
close(fw_fd);
set_loading(devpath, -1);
log_err(fw_path, rc);
return rc;
}
--- NEW FILE hotplug.rules ---
# do not call hotplug.d and dev.d for "drivers" and "module" events
SUBSYSTEM=="drivers", OPTIONS="last_rule"
SUBSYSTEM=="module", OPTIONS="last_rule"
# compatibility support for the obsolete hotplug.d and dev.d directories
ENV{UDEVD_EVENT}=="1", RUN+="/sbin/udev_run_hotplugd"
RUN+="/sbin/udev_run_devd"
--- NEW FILE path_id ---
#!/bin/sh
# provide the shortest possible unique hardware path to a block device
# for the udev persistent disk device naming scheme
#
# Copyright (C) 2005 SUSE Linux Products GmbH
# Licensed under the GPL v2.
#
# to be called from a udev rule to return the name for a symlink
# DEVPATH=/block/sda/sda3 $0 (or similar)
# $0 /block/sda
# $0 /sys/block/sda
# example for all:
# for i in `find /sys/block -name dev` ;do DEVPATH="`echo $i | sed -e 's@^/sys\|/dev@@g'`" $0 ; done
# examples:
# SCSI cdrom
# /block/sr0 -> /devices/pci0002:30/0002:30:0c.0/host0/0:0:1:0
# result: pci-0002:30:0c.0-scsi-0:0:1:0
# SCSI disk
# /block/sda -> /devices/pci0002:30/0002:30:0c.0/host0/0:0:4:0
# result: pci-0002:30:0c.0-scsi-0:0:4:0
# SATA disk, 4 channels per controller
# /block/sda -> /devices/pci0001:00/0001:00:07.0/0001:05:0c.0/host0/0:0:0:0
# result: pci-0001:05:0c.0-scsi-0:0:0:0
# IDE disk
# /block/hda -> /devices/pci0002:02/0002:02:0d.0/ide0/0.0
# result: pci-0002:02:0d.0-ide-0.0
# IDE cdrom on a Mac ASIC:
# /block/hdc -> /devices/pci0001:01/0001:01:17.0/0.80000000:mac-io/0.00020000:ata-3/ide1/1.0
# result: mac-io_ata-3_master
# IDE cdrom on a Mac ASIC, with ide-scsi:
# /block/sr0 -> /devices/pci0001:01/0001:01:17.0/0.80000000:mac-io/0.0001f000:ata-4/ide0/0.1/host2/2:0:0:0
# result: mac-io_ata-4_slave
# USB CDrom drive without 'serial' number:
# reusing 'product' and 'manufacturer' string, if available
# /block/sr0 -> /devices/pci0001:00/0001:00:04.0/0001:02:0b.0/usb4/4-2/4-2:1.0/host4/4:0:0:0
# result: usb-storage-odd-Freecom-USIDERev930:0:0:0
# devices may have several interfaces on one PCI device, like IDE:
# pci-0001:00:04.0_ide1-master
# pci-0001:00:04.0_ide2-master
# pci-0001:00:04.0_ide2-slave
# they are marked as ports, it is expected that the driver shows
# ide1 even if there is nothing connected to either master or slave
# interface
#
# match order is important.
# first IDE to find ide-scsi devices.
# then SCSI
# first usb-storage
# then firewire sbp2
# then the rest
SYSFS=/sys
RESULT=1
CDROM=
TYPE=
OPWD="`pwd`"
# Check for 'pwd -P'
if $(pwd -P > /dev/null 2>&1); then
pwd_cmd="pwd -P"
else
pwd_cmd="pwd"
fi
full_sysfs_class_path=
full_sysfs_device_path=
if [ -z "$DEVPATH" -a -z "$1" ] ; then
exit 1
fi
if [ -z "$DEVPATH" ] ; then
case "$1" in
$SYSFS/*)
DEVPATH="${1#$SYSFS}"
;;
*)
DEVPATH=$1
;;
esac
fi
if [ ! -d $SYSFS$DEVPATH ] ; then
exit 1
fi
if [ ! -f $SYSFS$DEVPATH/dev ] ; then
exit 1
fi
case "$DEVPATH" in
/block/*)
TYPE=block
;;
/class/*)
TYPE="${DEVPATH#/class/}"
TYPE="${TYPE%%/*}"
;;
*)
exit 1
;;
esac
#
##
#
get_port () {
local type offset port
type=$1
offset=$2
for i in $type[0-9]* ; do
: i $i
port="${i#$type}"
if [ "$port" -lt "$offset" ] ; then offset=$port ; fi
done
if [ "$port" != "0" ] ; then
echo $(($2 - $offset))
fi
}
handle_block_ide () {
: handle_block_ide $*
local DEV=$1
local port idedev idecontroller
# IDE
: DEV $DEV
d=$DEV
case "$DEV" in
# remove ide-scsi part, leave only channel info
*/ide[0-9]*/host[0-9]*)
while [ ! -z "$d" ] ; do
case "$d" in
*/host[0-9]*)
d="${d%/*}"
continue
;;
*)
break
;;
esac
done
;;
esac
idedev=$d
while [ ! -z "$d" ] ; do
case "$d" in
*/ide[0-9]*)
port="${d##*/}"
d="${d%/*}"
continue
;;
*)
break
;;
esac
done
idecontroller=$d
# port info if the controller has more than one interface
port="${port#ide}"
: port $port d $d
: idedev $idedev kernel_port $port
case "${idedev##*.}" in
0)
channel=0
;;
1)
channel=1
;;
*)
echo "Error: $idedev is neither master or slave" >&2
esac
case "$d" in
*:mac-io/*)
: mac-io: $d
d="`echo $d | sed -e 's@^.*:mac-io[^:]\+:\([^/]\+\).*@mac-io_\1@'`"
;;
/sys/devices)
# PCMCIA devices
ifname=${full_sysfs_class_path##*/}
set -- `sed -n "/$ifname/p" /var/lib/pcmcia/stab`
d="pcmcia-$1"
;;
*)
d="pci-${d##*/}"
# d="`echo $d | sed -e 's@^.*/\([^/]\{1,\}\)/. at pci-\1@'`"
;;
esac
cd $idecontroller
port="`get_port ide $port`"
cd "$OPWD"
: hardware_port $port
if [ -z "$port" ] ; then
d="${d}-ide-0:$channel"
else
d="${d}-ide-${port}:$channel"
fi
RESULT=0
}
handle_block_scsi () {
: handle_block_scsi $*
local DEV=$1
local cil controller_port controller_dev
# SCSI device
cil="${DEV##*/}"
cil="${cil#*:}"
controller_dev=$DEV
while [ ! -z "$controller_dev" ] ; do
case "$controller_dev" in
*/host[0-9]*)
controller_port=$controller_dev
controller_dev="${controller_dev%/*}"
;;
*) break ;;
esac
done
: controller_dev $controller_dev
: controller_port $controller_port
# a host controller may have more than one interface/port
controller_port="${controller_port##*/}"
controller_port="${controller_port##host}"
#
case "$controller_dev" in
# grand central, old powermacs
*:gc/*)
adapter="`echo $controller_dev | sed -e 's@/[^/]\{1,\}$@@;s@^.*/@@;s@^.*:@@'`"
bus="gc"
;;
*)
adapter="${controller_dev##*/}"
bus="pci"
;;
esac
cd "$controller_dev"
controller_port="`get_port host $controller_port`"
cd "$OPWD"
d="$bus-$adapter"
if [ -z "$controller_port" ] ; then
controller_port=0
fi
d="${d}-scsi-${controller_port}:${cil}"
RESULT=0
}
handle_block_usb_storage () {
: handle_block_usb_storage $*
local DEV=$1
cil="${DEV##*/}"
cil="${cil#*:}"
controller_dev=$DEV
while [ ! -z "$controller_dev" ] ; do
case "$controller_dev" in
*/host[0-9]*)
controller_dev="${controller_dev%/*}"
;;
*) break ;;
esac
done
: controller_dev $controller_dev
#
# usb-storage devs have a serial number, hopefully unique
serial=
if [ -f $controller_dev/../serial ] ; then
serial="`sed -e 's@^[ -]\{1,\}\|[ -]\{1,\}$@@g;s@[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_0123456789]@@g' < $controller_dev/../serial`"
: serial XXX_${serial}_XXX
d="usb-$serial"
serial="`echo $serial | sed -e 's@[ 0]\{1,\}@@g'`"
fi
if [ -z "$serial" ] ; then
# no serial, broken device
# has eventually binary junk in vpd
identifier=
if [ -f $controller_dev/../product ] ; then
product="`sed -e 's@^[ -]\{1,\}\|[ -]\{1,\}$@@g;s@[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_0123456789]@@g' < $controller_dev/../product`"
fi
if [ -f $controller_dev/../manufacturer ] ; then
manufacturer="`sed -e 's@^[ -]\{1,\}\|[ -]\{1,\}$@@g;s@[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_0123456789]@@g' < $controller_dev/../manufacturer`"
fi
if [ -z "$product" -o -z "$manufacturer" ] ; then
read idvendor < $controller_dev/../idVendor
read idproduct < $controller_dev/../idProduct
identifier="0x${idvendor}-0x${idproduct}"
else
identifier="${manufacturer}-${product}"
fi
d="usb-${identifier}"
fi
d="$d:$cil"
RESULT=0
}
handle_block () {
full_sysfs_class_path="$SYSFS$DEVPATH"
if [ ! -f $full_sysfs_class_path/dev ] ; then return ; fi
# the main device has (hopefully) a symlink to the real device
# a partition is a subdir of the main (raw) device
if [ ! -L $full_sysfs_class_path/device ] ; then
if [ -f $full_sysfs_class_path/range ] ; then return ; fi
full_sysfs_class_path="${full_sysfs_class_path%/*}"
: full_sysfs_class_path "$full_sysfs_class_path"
if [ ! -L $full_sysfs_class_path/device -o ! -f $full_sysfs_class_path/dev ] ; then
return
fi
fi
cd $full_sysfs_class_path/device
full_sysfs_device_path="`$pwd_cmd`"
cd "$OPWD"
D=$full_sysfs_device_path
case "$D" in
*/ide[0-9]/[0-9].[0-9]*|*/ide[0-9][0-9]/[0-9][0-9].[0-9]*)
handle_block_ide "$D"
;;
*/usb[0-9]*/[0-9]*/host[0-9]*/[0-9]*:[0-9]*:[0-9]*:[0-9]*)
handle_block_usb_storage "$D"
;;
*/css0/*)
if [ -r $full_sysfs_device_path/wwpn ]; then
read wwpn < $full_sysfs_device_path/wwpn
fi
if [ -r $full_sysfs_device_path/fcp_lun ]; then
read lun < $full_sysfs_device_path/fcp_lun
fi
if [ -r $full_sysfs_device_path/hba_id ]; then
read bus_id < $full_sysfs_device_path/hba_id
fi
if [ "$bus_id" -a "$wwpn" -a "$lun" ]; then
# S/390 zfcp adapter
d="ccw-$bus_id-zfcp-$wwpn:$lun"
RESULT=0
else
# DASD devices
bus="ccw"
adapter=${D##*/}
d="$bus-$adapter"
RESULT=0
fi
;;
*/host[0-9]*/[0-9]*:[0-9]*:[0-9]*:[0-9]*)
# check for ieee1394 sbp2
if test -f $D/ieee1394_id ; then
read ieee1394_id < $D/ieee1394_id
d="`echo ieee1394-${ieee1394_id} | sed -e 's@:@- at g'`"
RESULT=0
else
handle_block_scsi "$D"
fi
;;
*)
: not handled
RESULT=1
return
;;
esac
# look for a partition
if [ "$full_sysfs_class_path" != "$SYSFS$DEVPATH" ] ; then
dp="`echo $SYSFS$DEVPATH | sed -e 's@^/.*/@@;s@^[^0-9]\{1,\}@@;s at .*_@@'`"
case "$d" in
*[0-9])
d="${d}p${dp}"
;;
*)
d="${d}${dp}"
;;
esac
fi
# done
echo "ID_PATH=$d"
}
case "$TYPE" in
block)
handle_block
;;
*)
RESULT=1
;;
esac
exit $RESULT
udev-071-rh.patch:
Makefile | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
--- NEW FILE udev-071-rh.patch ---
--- udev-071/Makefile.rh 2006-01-25 09:47:52.000000000 +0100
+++ udev-071/Makefile 2006-01-25 09:48:00.000000000 +0100
@@ -206,7 +206,7 @@
ifeq ($(strip $(USE_SELINUX)),true)
UDEV_OBJS += udev_selinux.o
- LIB_OBJS += -lselinux -lsepol
+ LIB_OBJS += -lselinux
CFLAGS += -DUSE_SELINUX
endif
Index: sources
===================================================================
RCS file: /cvs/dist/rpms/udev/FC-4/sources,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- sources 21 May 2005 03:38:00 -0000 1.22
+++ sources 25 Jan 2006 10:03:30 -0000 1.23
@@ -1 +1 @@
-03be2f56cc13c7f24b0ebf296166d48a udev-058.tar.bz2
+6325fda7a6f29ef9fce3bcf73db3ad89 udev-071.tar.bz2
Index: start_udev
===================================================================
RCS file: /cvs/dist/rpms/udev/FC-4/start_udev,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- start_udev 5 May 2005 16:24:22 -0000 1.36
+++ start_udev 25 Jan 2006 10:03:30 -0000 1.37
@@ -24,6 +24,8 @@
sysfs_dir=/sys
+export TZ=/etc/localtime
+
[ -d $sysfs_dir/class ] || exit 1
[ -r /proc/mounts ] || exit 1
[ -x /sbin/udev ] || exit 1
@@ -138,26 +140,19 @@
# call hotplug with the scsi devices
scsi_replay () {
- HOTPLUG=$(cat /proc/sys/kernel/hotplug)
- [ -z "$HOTPLUG" ] && return 1
+ HOTPLUG="/sbin/udevsend"
scsi_hosts=$(find_d /sys/devices host\*)
- SEQNUM=1
for host in $scsi_hosts;do
[ -d $host ] || continue
devs=$(find_f $host type)
for dev in $devs;do
[ -f $dev ] || continue
- export SEQNUM
DEVPATH=${dev%/type}
DEVPATH=${DEVPATH#/sys}
- export DEVPATH
- export ACTION=add
- $HOTPLUG scsi_device
- SEQNUM=$[$SEQNUM + 1]
- $HOTPLUG scsi
- SEQNUM=$[$SEQNUM + 1]
+ /bin/env -i DEVPATH="$DEVPATH" SUBSYSTEM=scsi_device ACTION=add $HOTPLUG scsi_device
+ /bin/env -i DEVPATH="$DEVPATH" ACTION=add SUBSYSTEM=scsi $HOTPLUG scsi
done
done
return 0
@@ -197,7 +192,7 @@
ret=0
STRING=$"Starting $prog: "
# propagate $udev_root from /sys
-echo -n "$STRING "
+echo -n $STRING
# mount the tmpfs on ${udev_root%/}, if not already done
LANG=C awk "\$2 == \"${udev_root%/}\" && \$3 == \"tmpfs\" { exit 1 }" /proc/mounts && {
@@ -227,6 +222,7 @@
rm -fr "$udev_db"
make_extra_nodes
kill_udevd > "$udev_root/null" 2>&1
+udevd -d
scsi_replay > "$udev_root/null" 2>&1
ret=$[$ret + $?]
ide_scan > "$udev_root/null" 2>&1
Index: udev.rules
===================================================================
RCS file: /cvs/dist/rpms/udev/FC-4/udev.rules,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- udev.rules 30 Sep 2005 12:29:27 -0000 1.27
+++ udev.rules 25 Jan 2006 10:03:30 -0000 1.28
@@ -3,38 +3,38 @@
#
# default is OWNER="root" GROUP="root", MODE="0600"
#
+KERNEL="*", OWNER="root" GROUP="root", MODE="0600"
# all block devices
SUBSYSTEM=="block", GROUP="disk", MODE="0640"
+KERNEL=="root", GROUP="disk", MODE="0640"
# console devices
-KERNEL=="tty", MODE="0666"
-KERNEL=="tty[0-9]", GROUP="tty", MODE="0660"
-KERNEL=="tty[0-9][0-9]*", GROUP="tty", MODE="0660"
-KERNEL=="vc/[0-9]*", GROUP="tty", MODE="0660"
+KERNEL=="tty", MODE="0666", OPTIONS="last_rule"
+KERNEL=="console", MODE="0600", OPTIONS="last_rule"
+KERNEL=="tty[0-9]", GROUP="tty", MODE="0660", OPTIONS="last_rule"
+KERNEL=="tty[0-9][0-9]*", GROUP="tty", MODE="0660", OPTIONS="last_rule"
+KERNEL=="vc/[0-9]*", GROUP="tty", MODE="0660", OPTIONS="last_rule"
# pty devices
# Set this to 0660 if you only want users belonging to tty group
# to be able to allocate PTYs
-KERNEL=="ptmx", GROUP="tty", MODE="0666"
-KERNEL=="pty[p-za-e][0-9a-f]*", GROUP="tty", MODE="0660"
-KERNEL=="tty[p-za-e][0-9a-f]*", GROUP="tty", MODE="0660"
-KERNEL=="pty/m*", GROUP="tty", MODE="0660"
-KERNEL=="vc/s*", GROUP="tty", MODE="0660"
+KERNEL=="ptmx", GROUP="tty", MODE="0666", OPTIONS="last_rule"
+KERNEL=="pty[p-za-e][0-9a-f]*", GROUP="tty", MODE="0660", OPTIONS="last_rule"
+KERNEL=="tty[p-za-e][0-9a-f]*", GROUP="tty", MODE="0660", OPTIONS="last_rule"
+KERNEL=="pty/m*", GROUP="tty", MODE="0660", OPTIONS="last_rule"
+KERNEL=="vc/s*", GROUP="tty", MODE="0660", OPTIONS="last_rule"
# serial+dialup devices
-KERNEL=="ttyS*", GROUP="uucp", MODE="0660"
-KERNEL=="ttyACM*", GROUP="uucp", MODE="0660"
+KERNEL=="ttyS*", GROUP="uucp", MODE="0660", OPTIONS="last_rule"
+KERNEL=="ttyACM*", GROUP="uucp", MODE="0660", OPTIONS="last_rule"
+KERNEL=="ttyUSB*", GROUP="uucp", MODE="0660", OPTIONS="last_rule"
KERNEL=="ippp*", MODE="0660"
KERNEL=="isdn*", MODE="0660"
KERNEL=="isdnctrl*", MODE="0660"
-SYSFS{dev}="68:0", NAME="capi20"
-SYSFS{dev}="191:[0-9]*", NAME="capi/%n"
KERNEL=="capi*", MODE="0660"
-
KERNEL=="dcbri*", MODE="0660"
KERNEL=="ircomm*", GROUP="uucp", MODE="0660"
-KERNEL=="ttyUSB*", GROUP="uucp", MODE="0660"
KERNEL=="tts/[0-9]*", GROUP="uucp", MODE="0660"
KERNEL=="tts/USB[0-9]*", GROUP="uucp", MODE="0660"
@@ -90,14 +90,14 @@
KERNEL=="usb/lp*", GROUP="lp", MODE="0660"
# tape devices
-KERNEL=="ht*", GROUP="disk", MODE="0640"
-KERNEL=="nht*", GROUP="disk", MODE="0640"
-KERNEL=="pt[0-9]*", GROUP="disk", MODE="0640"
-KERNEL=="npt*", GROUP="disk", MODE="0640"
-KERNEL=="st*", GROUP="disk", MODE="0640"
-KERNEL=="nst*", GROUP="disk", MODE="0640"
-KERNEL=="osst*", GROUP="disk", MODE="0640"
-KERNEL=="nosst*", GROUP="disk", MODE="0640"
+KERNEL=="ht*", GROUP="disk", MODE="0660"
+KERNEL=="nht*", GROUP="disk", MODE="0660"
+KERNEL=="pt[0-9]*", GROUP="disk", MODE="0660"
+KERNEL=="npt*", GROUP="disk", MODE="0660"
+KERNEL=="st*", GROUP="disk", MODE="0660"
+KERNEL=="nst*", GROUP="disk", MODE="0660"
+KERNEL=="osst*", GROUP="disk", MODE="0660"
+KERNEL=="nosst*", GROUP="disk", MODE="0660"
# diskonkey devices
KERNEL=="diskonkey*", GROUP="disk", MODE="0640"
@@ -134,9 +134,9 @@
KERNEL=="dri/*", MODE="0666"
# usb devices
-KERNEL=="usb/dabusb*", GROUP="usb", MODE="0660"
-KERNEL=="usb/mdc800*", GROUP="usb", MODE="0660"
-KERNEL=="usb/rio500", GROUP="usb", MODE="0660"
+KERNEL=="usb/dabusb*", MODE="0660"
+KERNEL=="usb/mdc800*", MODE="0660"
+KERNEL=="usb/rio500", MODE="0660"
# s390 devices
KERNEL=="z90crypt", MODE="0666"
@@ -148,7 +148,7 @@
# create a symlink named after the device map name
# note devmap_name comes with extras/multipath
-#KERNEL=="dm-[0-9]*", PROGRAM="/sbin/devmap_name %M %m", NAME="%k", SYMLINK="%c"
+#KERNEL=="dm-[0-9]*", PROGRAM="/sbin/devmap_name %M %m", NAME="%k", SYMLINK+="%c"
# DRI devices always go into a subdirectory (as per the LSB spec)
KERNEL=="card*", NAME="dri/card%n"
@@ -165,51 +165,51 @@
KERNEL=="mice", NAME="input/%k"
KERNEL=="mouse*", NAME="input/%k"
KERNEL=="event*", NAME="input/%k"
-KERNEL=="js*", NAME="input/%k"
+KERNEL=="js*", NAME="input/%k", SYMLINK+="%k"
KERNEL=="ts*", NAME="input/%k"
# IEEE1394 (firewire) devices (must be before raw devices below)
-KERNEL=="raw1394", NAME="%k"
-KERNEL=="dv1394*", NAME="dv1394/%n"
-KERNEL=="video1394*", NAME="video1394/%n"
+KERNEL=="raw1394", NAME="%k"
+KERNEL=="dv1394*", NAME="dv1394/%n"
+KERNEL=="video1394*", NAME="video1394/%n"
KERNEL=="raw[0-9]*", NAME="raw/%k"
-KERNEL=="lp[0-9]*", SYMLINK="par%n"
+KERNEL=="lp[0-9]*", SYMLINK+="par%n"
BUS=="usb", KERNEL=="lp[0-9]*", NAME="usb/%k"
KERNEL=="microcode", NAME="cpu/%k"
-# provide symlinks for backwards compatibility
-KERNEL="msr[0-9]*", NAME="cpu/%n/msr", SYMLINK="cpu/%k"
-KERNEL="cpu[0-9]*", NAME="cpu/%n/cpu", SYMLINK="cpu/%k", SYMLINK="%k"
-
-KERNEL=="ram1", SYMLINK="ram"
-KERNEL=="video0", SYMLINK="video"
-KERNEL=="radio0", SYMLINK="radio"
-KERNEL=="audio0", SYMLINK="audio"
-KERNEL=="dsp0", SYMLINK="dsp"
-KERNEL=="fb0", SYMLINK="fb"
-KERNEL=="qft0", SYMLINK="ftape"
-KERNEL=="isdnctrl0", SYMLINK="isdnctrl"
-KERNEL=="mixer0", SYMLINK="mixer"
-KERNEL=="ram0", SYMLINK="ramdisk"
-KERNEL=="sbpcd0", SYMLINK="sbpcd"
-KERNEL=="radio0", SYMLINK="radio"
-KERNEL=="tty0", SYMLINK="systty"
-KERNEL=="vbi0", SYMLINK="vbi"
-KERNEL=="null", SYMLINK="XOR"
+KERNEL="msr[0-9]*", NAME="cpu/%n/msr"
+KERNEL="cpu[0-9]*", NAME="cpu/%n/cpuid"
+
+KERNEL=="ram1", SYMLINK+="ram"
+KERNEL=="video0", SYMLINK+="video"
+KERNEL=="radio0", SYMLINK+="radio"
+KERNEL=="audio0", SYMLINK+="audio"
+KERNEL=="dsp0", SYMLINK+="dsp"
+KERNEL=="fb0", SYMLINK+="fb"
+KERNEL=="qft0", SYMLINK+="ftape"
+KERNEL=="isdnctrl0", SYMLINK+="isdnctrl"
+KERNEL=="mixer0", SYMLINK+="mixer"
+KERNEL=="ram0", SYMLINK+="ramdisk"
+KERNEL=="sbpcd0", SYMLINK+="sbpcd"
+KERNEL=="radio0", SYMLINK+="radio"
+KERNEL=="tty0", SYMLINK+="systty"
+KERNEL=="vbi0", SYMLINK+="vbi"
+KERNEL=="null", SYMLINK+="XOR"
KERNEL=="tun", NAME="net/%k"
KERNEL=="device-mapper", NAME="mapper/control"
# old compat symlinks with enumeration
-KERNEL=="sr[0-9]*", SYMLINK="cdrom%e"
-KERNEL=="scd[0-9]*", SYMLINK="cdrom%e"
-KERNEL=="pcd[0-9]*", SYMLINK="cdrom%e"
-KERNEL=="fd[0-9]*", SYMLINK="floppy%e"
-KERNEL=="nst[0-9]", BUS=="scsi", SYMLINK="tape%e"
-KERNEL=="nosst[0-9]", BUS=="scsi", SYMLINK="tape%e"
+KERNEL=="sr[0-9]*", SYMLINK+="cdrom%e"
+KERNEL=="scd[0-9]*", SYMLINK+="cdrom%e"
+KERNEL=="pcd[0-9]*", SYMLINK+="cdrom%e"
+KERNEL=="fd[0-9]*", SYMLINK+="floppy%e"
+KERNEL=="nst[0-9]", BUS=="scsi", SYMLINK+="tape%e", MODE="0660"
+KERNEL=="nosst[0-9]", BUS=="scsi", SYMLINK+="tape%e", MODE="0660"
+KERNEL=="sg[0-9]*", BUS="scsi", SYSFS{type}=="6", SYMLINK+="scanner%e", MODE="0660"
KERNEL=="umad*", NAME="infiniband/%k"
KERNEL=="issm*", NAME="infiniband/%k"
@@ -221,22 +221,109 @@
KERNEL=="zappseudo", NAME="zap/pseudo"
KERNEL=="zap[0-9]*", NAME="zap/%n"
+BUS=="scsi", KERNEL=="sg[0-9]*", SYSFS{type}=="6", NAME="%k", SYMLINK="scanner%e", MODE="0660"
+
# do not seperate the next 2 lines!!
-KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/ide-media.sh %k", RESULT=="floppy", SYMLINK="floppy%e", NAME{ignore_remove, all_partitions}="%k"
+KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/ide-media.sh %k", RESULT=="floppy", SYMLINK+="floppy%e", NAME{ignore_remove, all_partitions}="%k"
-KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", RESULT=="cdrom", SYMLINK="cdrom%e"
+KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", RESULT=="cdrom", SYMLINK+="cdrom%e"
-KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD", SYMLINK="dvd%e"
-KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD", SYMLINK="dvd%e"
+KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD", SYMLINK+="dvd%e"
+KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD", SYMLINK+="dvd%e"
-KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k CD-R", SYMLINK="cdwriter%e"
-KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k CD-R", SYMLINK="cdwriter%e"
+KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k CD-R", SYMLINK+="cdwriter%e"
+KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k CD-R", SYMLINK+="cdwriter%e"
-KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM="/etc/udev/scripts/check-cdrom.sh %k DVD-R", SYMLINK="dvdwriter%e"
-KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD-R", SYMLINK="dvdwriter%e"
+KERNEL=="hd[a-z]", BUS=="ide", SYSFS{removable}=="1", PROGRAM="/etc/udev/scripts/check-cdrom.sh %k DVD-R", SYMLINK+="dvdwriter%e"
+KERNEL=="sr[0-9]*", BUS=="scsi", PROGRAM=="/etc/udev/scripts/check-cdrom.sh %k DVD-R", SYMLINK+="dvdwriter%e"
# rename sr* to scd*
KERNEL=="sr[0-9]*", BUS=="scsi", NAME="scd%n"
KERNEL=="hd[a-z]*", BUS=="ide", SYSFS{removable}=="1", NAME{ignore_remove}="%k"
KERNEL=="dvb*", PROGRAM=="/etc/udev/scripts/dvb.sh %k", NAME="%c"
+
+#######################################
+# Persistent block device stuff - begin
+#######################################
+# persistent disk links: /dev/disk/{by-id,by-uuid,by-label,by-path}
+# scheme based on "Linux persistent device names", 2004, Hannes Reinecke <hare at suse.de>
+
+ACTION!="add", GOTO="persistent_end"
+SUBSYSTEM!="block", GOTO="persistent_end"
+
+# skip rules for inappropriate block devices
+KERNEL=="ram*|loop*|fd*|nbd*", GOTO="persistent_end"
+
+# never access removable ide devices, the drivers are causing event loops on open()
+BUS=="ide", DRIVER!="ide-cdrom", SYSFS{removable}="1", GOTO="persistent_end"
+
+# by-id (hardware serial number)
+KERNEL=="hd*[!0-9]", IMPORT{program}="/sbin/ata_id --export $tempnode"
+KERNEL=="hd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}"
+KERNEL=="hd*[0-9]", IMPORT{parent}=="ID_*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}-part%n"
+
+KERNEL=="sd*[!0-9]|sr*", SYSFS{ieee1394_id}=="*", ENV{ID_SERIAL}="$sysfs{ieee1394_id}", ENV{ID_BUS}="ieee1394"
+KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}=="", IMPORT{program}="/sbin/usb_id -x"
+KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}=="", IMPORT{program}="/sbin/scsi_id -g -x -s %p -d $tempnode"
+KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}=="", IMPORT{program}="/sbin/scsi_id -g -x -a -s %p -d $tempnode"
+KERNEL=="dasd*[!0-9]", IMPORT{program}="/sbin/dasd_id --export $tempnode"
+KERNEL=="sd*[!0-9]|sr*|dasd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
+
+# for partitions import parent information
+KERNEL=="sd*[0-9]|dasd*[0-9]", IMPORT{parent}=="ID_*"
+KERNEL=="sd*[0-9]|dasd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
+
+# by-path (shortest physical path)
+KERNEL=="*[!0-9]|sr*", ENV{ID_TYPE}=="?*", IMPORT{program}="/sbin/path_id %p", SYMLINK+="disk/by-path/$env{ID_PATH}"
+KERNEL=="sr*", GOTO="persistent_end"
+KERNEL=="*[0-9]", IMPORT{parent}=="ID_*"
+KERNEL=="*[0-9]", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"
+
+# by-label/by-uuid (filesystem properties)
+KERNEL=="*[!0-9]", SYSFS{removable}=="1", GOTO="persistent_end"
+IMPORT{program}="/sbin/vol_id --export $tempnode"
+ENV{ID_FS_UUID}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID}"
+ENV{ID_FS_LABEL_SAFE}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_SAFE}"
+
+# BIOS Enhanced Disk Device
+KERNEL=="*[!0-9]", IMPORT{program}="/sbin/edd_id --export $tempnode"
+KERNEL=="*[!0-9]", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}"
+KERNEL=="*[0-9]", ENV{ID_EDD}=="?*", SYMLINK+="disk/by-id/edd-$env{ID_EDD}-part%n"
+
+LABEL="persistent_end"
+
+#####################################
+# Persistent block device stuff - end
+#####################################
+
+ACTION=="add", SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'X=%k X=$${X#usbdev} B=$${X%%%%.*} D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c"
+
+ACTION=="add", SUBSYSTEM=="?*", MODALIAS=="?*", RUN+="/sbin/modprobe $modalias"
+
+ACTION=="add", SUBSYSTEM=="pcmcia", MODALIAS=="*", \
+ RUN+="/bin/sh -c 'echo 1 > /sys/$DEVPATH/allow_func_id_match'"
+
+ACTION=="add", SUBSYSTEM=="ieee1394", MODALIAS=="*", \
+ RUN+="/sbin/modprobe $modalias"
+
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="[07]", \
+ RUN+="/sbin/modprobe sd_mod"
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="14", \
+ RUN+="/sbin/modprobe sd_mod"
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="[45]", \
+ RUN+="/sbin/modprobe sr_mod"
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="1", SYSFS{vendor}=="On[sS]tream", \
+ SYSFS{model}!="ADR*", RUN+="/sbin/modprobe osst"
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="1", SYSFS{vendor}=="On[sS]tream", \
+ SYSFS{model}=="ADR*", RUN+="/sbin/modprobe st"
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="1", SYSFS{vendor}!="On[sS]tream", \
+ RUN+="/sbin/modprobe st"
+ACTION=="add", SUBSYSTEM=="scsi", SYSFS{type}=="[23689]", \
+ RUN+="/sbin/modprobe sg"
+
+ACTION=="add", SUBSYSTEM=="firmware", ENV{FIRMWARE}=="*", \
+ RUN+="/sbin/firmware_helper"
+
+RUN+="socket:/org/kernel/udev/monitor"
+
Index: udev.spec
===================================================================
RCS file: /cvs/dist/rpms/udev/FC-4/udev.spec,v
retrieving revision 1.92
retrieving revision 1.93
diff -u -r1.92 -r1.93
--- udev.spec 30 Sep 2005 12:29:27 -0000 1.92
+++ udev.spec 25 Jan 2006 10:03:30 -0000 1.93
@@ -2,31 +2,21 @@
%define debug false
-%define with_persistent 0
-
Summary: A userspace implementation of devfs
Name: udev
-Version: 058
-Release: 1.0.FC4.1
+Version: 071
+Release: 0.FC4.1
License: GPL
Group: System Environment/Base
-%if !%{with_persistent}
Provides: udev-persistent = 0:%{version}-%{release}
Obsoletes: udev-persistent < 0:030-5
-%endif
Source: ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/%{name}-%{version}.tar.bz2
Source1: udev.rules
Source3: udev.conf
Source4: pam_console.dev
Source5: MAKEDEV.dev
-Source11: ata_identify.c
-Source12: ata_identify-Makefile
-
-Source13: udev.get_persistent_device_name.sh
-Source14: udev.get_unique_hardware_path.sh
-Source15: udev.get_unique_drive_id.sh
-Source16: udev.rules.persistent
+Source10: hotplug.rules
Source17: check-cdrom.sh
Source18: ide-media.sh
@@ -38,15 +28,18 @@
Source23: udevpermconv.sh
-Patch1: udev-039-static.patch
-Patch50: udev-039-scsi_id-tmp_dir.patch
+Source24: path_id
+
+Source30: firmware_helper.c
+
+Patch1: udev-071-rh.patch
ExclusiveOS: Linux
URL: http://kernel.org/pub/linux/utils/kernel/hotplug/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
Prereq: /bin/sh fileutils hotplug
Prereq: MAKEDEV >= 0:3.11
-BuildRequires: sed libselinux-devel >= 0:1.17.9-2 flex
+BuildRequires: sed libselinux-devel >= 0:1.17.9-2 flex
Requires: libselinux >= 0:1.17.9-2 MAKEDEV
Conflicts: kernel < 0:2.6 mkinitrd <= 0:4.1.11-1 initscripts < 7.84
Obsoletes: dev
@@ -59,73 +52,53 @@
udev is a implementation of devfs in userspace using sysfs and
/sbin/hotplug. It requires a 2.6 kernel to run properly.
-%if %{with_persistent}
-%package -n udev-persistent
-Summary: Persistent device naming with udev
-Group: Utilities/System
-PreReq: udev = 0:%{version}-%{release}
-Requires: sed
-
-%description -n udev-persistent
-udev-persistent enables persistent device naming with udev.
-%endif
-
-%define add %{nil}
-
%prep
%setup -q
-
-#%patch1 -p1 -b .glibcstatic
-%patch50 -p1 -b .tmp_dir
-
-touch etc/init.d/udev.debian
-
-%if %{with_persistent}
- mkdir ata_identify
- cp %{SOURCE11} ata_identify
- cp %{SOURCE12} ata_identify/Makefile
-%endif
-
+%patch1 -p1 -b .rh
cp %{SOURCE21} .
%build
# Do not USE_LOG in udev.static, cause it causes segfaults on openlog (bug 136005)
-make CC="gcc $RPM_OPT_FLAGS -DUDEV_STATIC" LD="gcc $RPM_OPT_FLAGS -static" \
+make \
USE_KLIBC=false \
USE_SELINUX=true \
USE_STATIC=true \
+ STRIP="/bin/true" \
udevdir="/dev" \
USE_LOG=false DEBUG=%{debug} \
- EXTRAS="extras/scsi_id \
-%if %{with_persistent}
- ata_identify \
-%endif
+ EXTRAS="extras/scsi_id extras/ata_id extras/edd_id \
" all
mv udev udev.static
mv udevstart udevstart.static
mv extras/scsi_id/scsi_id extras/scsi_id/scsi_id.static
-%if %{with_persistent}
- mv ata_identify/ata_identify ata_identify/ata_identify.static
-%endif
+mv extras/ata_id/ata_id extras/ata_id/ata_id.static
+mv extras/edd_id/edd_id extras/edd_id/edd_id.static
make clean
-make CC="gcc $RPM_OPT_FLAGS" \
+make CC="gcc $RPM_OPT_FLAGS -fpie -pie" LDFLAGS="-pie" \
USE_KLIBC=false \
USE_SELINUX=true \
udevdir="/dev" \
USE_LOG=true \
DEBUG=%{debug} \
+ STRIP="/bin/true" \
EXTRAS=" \
extras/scsi_id \
- extras/chassis_id \
-%if %{with_persistent}
- ata_identify \
+ extras/ata_id \
+ extras/usb_id \
+ extras/edd_id \
+ extras/volume_id \
+%ifarch s390 s390x
+ extras/dasd_id \
%endif
+ extras/run_directory \
"
#extras/volume_id
+%{__cc} %{optflags} -o firmware_helper %{SOURCE30}
+
%install
rm -rf $RPM_BUILD_ROOT
@@ -134,10 +107,14 @@
make DESTDIR=$RPM_BUILD_ROOT install \
EXTRAS=" \
extras/scsi_id \
- extras/chassis_id \
-%if %{with_persistent}
- ata_identify \
+ extras/ata_id \
+ extras/usb_id \
+ extras/edd_id \
+ extras/volume_id \
+%ifarch s390 s390x
+ extras/dasd_id \
%endif
+ extras/run_directory \
"
@@ -149,30 +126,18 @@
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/dev.d/{default,block}
install -m 0644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/50-udev.rules
+# Backwards compat
+install -m 0644 %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/hotplug.rules
install -m 0644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/udev/udev.conf
-mv $RPM_BUILD_ROOT%{_sysconfdir}/dev.d/net/hotplug.dev $RPM_BUILD_ROOT%{_sysconfdir}/udev/scripts/
-ln -s ../../udev/scripts/hotplug.dev $RPM_BUILD_ROOT%{_sysconfdir}/dev.d/net/
-# obsoleted by selinux patch
-#install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/dev.d/default
install -m 0755 udev.static $RPM_BUILD_ROOT/sbin/udev.static
install -m 0755 udevstart.static $RPM_BUILD_ROOT/sbin/udevstart.static
install -m 0755 extras/scsi_id/scsi_id.static $RPM_BUILD_ROOT/sbin/scsi_id.static
-%if %{with_persistent}
- install -m 0755 ata_identify/ata_identify.static $RPM_BUILD_ROOT/sbin/ata_identify.static
-%endif
+install -m 0755 extras/ata_id/ata_id.static $RPM_BUILD_ROOT/sbin/ata_id.static
+install -m 0755 extras/edd_id/edd_id.static $RPM_BUILD_ROOT/sbin/edd_id.static
-%if %{with_persistent}
-#persistent
-install -m 0755 %{SOURCE13} $RPM_BUILD_ROOT/sbin
-install -m 0755 %{SOURCE14} $RPM_BUILD_ROOT/sbin
-install -m 0755 %{SOURCE15} $RPM_BUILD_ROOT/sbin
-install -m 0644 %{SOURCE16} $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/49-udev-persistent.rules
-#install -m 0644 extras/volume_id/s390-dasd.rules $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/52-udev-s390-persistent.rules
-%endif
-
install -m 0755 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/udev/scripts/
ln -s ../../udev/scripts/pam_console.dev $RPM_BUILD_ROOT%{_sysconfdir}/dev.d/default/05-pam_console.dev
@@ -183,8 +148,11 @@
install -m 0755 %{SOURCE22} $RPM_BUILD_ROOT%{_sysconfdir}/udev/makedev.d/50-udev.nodes
+
+
mkdir -p $RPM_BUILD_ROOT%{_datadir}/udev
install -m 0644 %{SOURCE20} $RPM_BUILD_ROOT/sbin/start_udev
+install -m 0644 %{SOURCE24} $RPM_BUILD_ROOT/sbin/path_id
# floppy madness
for i in 0 1 2 3;do
@@ -193,7 +161,9 @@
done
install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/udev/scripts/
+install -m 0755 firmware_helper $RPM_BUILD_ROOT/sbin
+mkdir -p -m 0755 $RPM_BUILD_ROOT/lib/firmware
%preun
if [ $1 = 0 -a -f %{_initrddir}/udev ]; then
@@ -227,23 +197,38 @@
%files
%defattr(-,root,root)
-%doc COPYING README TODO ChangeLog HOWTO* docs/* udev.html
+%doc COPYING README TODO ChangeLog HOWTO* RELEASE-NOTES docs/* udev.html
%doc etc/udev/redhat/udev.rules
%attr(0755,root,root) /sbin/udev
%attr(0755,root,root) /sbin/udev.static
+%attr(0755,root,root) /sbin/udevcontrol
%attr(0755,root,root) /sbin/udevsend
%attr(0755,root,root) /sbin/udevd
%attr(0755,root,root) /sbin/udevstart
%attr(0755,root,root) /sbin/udevstart.static
%attr(0755,root,root) /sbin/start_udev
#%attr(755,root,root) /sbin/udev_volume_id
-%attr(755,root,root) /sbin/chassis_id
+%attr(0755,root,root) /sbin/udev_run_devd
+%attr(0755,root,root) /sbin/udev_run_hotplugd
%attr(755,root,root) /sbin/scsi_id
%attr(755,root,root) /sbin/scsi_id.static
+%attr(755,root,root) /sbin/ata_id
+%attr(755,root,root) /sbin/ata_id.static
+%attr(755,root,root) /sbin/edd_id
+%attr(755,root,root) /sbin/edd_id.static
+%attr(755,root,root) /sbin/usb_id
+%attr(755,root,root) /sbin/vol_id
+%attr(755,root,root) /sbin/path_id
+%ifarch s390 s390x
+%attr(755,root,root) /sbin/dasd_id
+%endif
+%attr(755,root,root) /sbin/firmware_helper
%attr(0755,root,root) %{_bindir}/udevtest
%attr(0755,root,root) %{_bindir}/udevinfo
+%attr(0755,root,root) %{_sbindir}/udevmonitor
+
%attr(0755,root,root) %dir %{_sysconfdir}/udev/
%attr(0755,root,root) %dir %{_sysconfdir}/udev/rules.d/
%attr(0755,root,root) %dir %{_sysconfdir}/udev/scripts/
@@ -251,10 +236,8 @@
%attr(0755,root,root) %dir %{_sysconfdir}/udev/makedev.d/
%attr(0755,root,root) %{_sysconfdir}/udev/scripts/pam_console.dev
%config(missingok) %{_sysconfdir}/dev.d/default/05-pam_console.dev
-%config(missingok) %{_sysconfdir}/dev.d/net/hotplug.dev
%attr(0755,root,root) %dir %{_sysconfdir}/dev.d/default
-%attr(0755,root,root) %dir %{_sysconfdir}/dev.d/net
# floppy madness
%attr(0755,root,root) %dir %{_sysconfdir}/dev.d/
@@ -265,7 +248,6 @@
%config(missingok) %{_sysconfdir}/dev.d/fd?/*
%attr(0755,root,root) %{_sysconfdir}/udev/scripts/MAKEDEV.dev
-%attr(0755,root,root) %{_sysconfdir}/udev/scripts/hotplug.dev
%attr(0755,root,root) %{_sysconfdir}/udev/scripts/check-cdrom.sh
%attr(0755,root,root) %{_sysconfdir}/udev/scripts/ide-media.sh
%attr(0755,root,root) %{_sysconfdir}/udev/scripts/dvb.sh
@@ -273,34 +255,84 @@
%config %attr(0644,root,root) %{_sysconfdir}/udev/udev.conf
%config %attr(0644,root,root) %{_sysconfdir}/udev/rules.d/50-udev.rules
+%config %attr(0644,root,root) %{_sysconfdir}/udev/rules.d/hotplug.rules
%config %attr(0644,root,root) %dir %{_sysconfdir}/udev/makedev.d/50-udev.nodes
#%config(missingok) %{_sysconfdir}/hotplug.d/default/10-udev.hotplug
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/scsi_id.config
+%dir %attr(0755,root,root) /lib/firmware
%attr(0644,root,root) %{_mandir}/man8/udev*.8*
%attr(0644,root,root) %{_mandir}/man8/scsi_id*.8*
-%if %{with_persistent}
-%files -n udev-persistent
- %if %{with_persistent}
- %attr(0755,root,root) /sbin/ata_identify
- %attr(0755,root,root) /sbin/ata_identify.static
- %endif
-
- %config %attr(0644,root,root) %{_sysconfdir}/udev/rules.d/49-udev-persistent.rules
- %attr(0755,root,root) /sbin/udev.get_persistent_device_name.sh
- %attr(0755,root,root) /sbin/udev.get_unique_hardware_path.sh
- %attr(0755,root,root) /sbin/udev.get_unique_drive_id.sh
-#%attr(0644,root,root) %{_sysconfdir}/udev/rules.d/52-udev-s390-persistent.rules
-%endif
-
%changelog
-* Fri Sep 30 2005 Harald Hoyer <harald at redhat.com> - 058-1.0.FC4.1
+* Wed Jan 25 2006 Harald Hoyer <harald at redhat.com> - 071-0.FC4.1
+- version 071 for FC-4
+
+* Mon Oct 10 2005 Harald Hoyer <harald at redhat.com> - 069-10
+- removed group usb
+
+* Mon Oct 10 2005 Harald Hoyer <harald at redhat.com> - 069-9
+- added libsepol-devel BuildReq
+- refined persistent rules
+
+* Mon Oct 10 2005 Harald Hoyer <harald at redhat.com> - 069-8
+- corrected c&p edd_id rule, symlink for js devices
+- added -lsepol
+
+* Thu Oct 06 2005 Harald Hoyer <harald at redhat.com> - 069-7
+- added edd_id
+
+* Fri Sep 30 2005 Harald Hoyer <harald at redhat.com> - 069-6
- special handling of IEEE1394 firewire devices (bug #168093)
-- more msr and cpu symlinks
-- special handling of capi20 and capi
-- added ttyACM
+
+* Fri Sep 23 2005 Harald Hoyer <harald at redhat.com> - 069-5
+- added missing path_id
+
+* Wed Sep 21 2005 Harald Hoyer <harald at redhat.com> - 069-4
+- readded volume_id now known as vol_id, bug #168883
+
+* Thu Sep 15 2005 Bill Nottingham <notting at redhat.com> - 069-3
+- fix firmware loading
+
+* Wed Sep 14 2005 Bill Nottingham <notting at redhat.com> - 069-2
+- own /lib/firmware (#167016)
+
+* Wed Sep 14 2005 Harald Hoyer <harald at redhat.com> - 069-1
+- version 069
+
+* Thu Aug 04 2005 Harald Hoyer <harald at redhat.com> - 063-6
+- compile with pie .. again... (#158935)
+- fixed typo in echo (#138509)
+
+* Tue Aug 02 2005 Harald Hoyer <harald at redhat.com> - 063-5
+- fixed scsi hotplug replay
+
+* Tue Aug 02 2005 Bill Nottingham <notting at redhat.com> - 063-5
+- add rule to allow function id matching for pcmcia after loading
+ modules (#164665)
+
+* Tue Aug 02 2005 Harald Hoyer <harald at redhat.com> - 063-4
+- fixed typo for tape devices and changed mode to 0660
+
+* Thu Jul 28 2005 Harald Hoyer <harald at redhat.com> - 063-3
+- changed "SYMLINK=" to "SYMLINK+="
+
+* Sun Jul 24 2005 Bill Nottingham <notting at redhat.com> - 063-2
+- don't set SEQNUM for scsi replay events (#163729)
+
+* Tue Jul 19 2005 Bill Nottingham <notting at redhat.com> - 063-1
+- update to 063
+- handle the hotplug events for ieee1394, scsi, firmware
+
+* Fri Jul 08 2005 Bill Nottingham <notting at redhat.com> - 062-2
+- update to 062
+- use included ata_id, build usb_id
+- load modules for pci, usb, pcmcia
+- ship RELEASE-NOTES in %%doc
+
+* Thu Jul 07 2005 Harald Hoyer <harald at redhat.com> - 058-2
+- compile with pie
* Fri May 20 2005 Bill Nottingham <notting at redhat.com> - 058-1
- update to 058, fixes conflict with newer kernels (#158371)
--- ata_identify-Makefile DELETED ---
--- ata_identify.c DELETED ---
--- udev-039-dircheck.patch DELETED ---
--- udev-039-media.patch DELETED ---
--- udev-039-scsi_id-tmp_dir.patch DELETED ---
--- udev-039-static.patch DELETED ---
--- udev-048-selinux.patch DELETED ---
--- udev-056-selinux.patch DELETED ---
--- udev.get_persistent_device_name.sh DELETED ---
--- udev.get_unique_drive_id.sh DELETED ---
--- udev.get_unique_hardware_path.sh DELETED ---
--- udev.permissions DELETED ---
--- udev.rules.persistent DELETED ---
More information about the fedora-cvs-commits
mailing list