1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-23 21:35:11 +03:00
Commit Graph

247 Commits

Author SHA1 Message Date
Kay Sievers
c8ff4b3db4 remove broken %e enumeration 2006-07-04 12:27:00 +02:00
Kay Sievers
fa33d857e2 don't remove symlinks if they are already there
Consecutive "add" events will not remove and recreate the same symlinks
anymore. No longer valid links, like after changing a filesystem label,
will still be removed.
2006-06-14 16:32:52 +02:00
Kay Sievers
d59c84effd allow NAME=="value" to check for already assigned value 2006-04-24 19:25:55 +02:00
Kay Sievers
4809b49e41 move all *_id programs to /lib/udev/ 2006-03-29 14:44:41 +02:00
Kay Sievers
36af2ddcb9 don't add $SUBSYSTEM automatically as $1 to programs
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2006-01-26 04:38:33 +01:00
Kay Sievers
03b24b71e0 fix BUS, ID, $id usage
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2006-01-16 06:12:49 +01:00
Kay Sievers
1aa1e24848 replace libsysfs
We never used any of the libsysfs convenience features. Here we replace
it completely with 300 lines of code, which are much simpler and a bit
faster cause udev(d) does not open any syfs file for a simple event which
does not need any parent device information.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2006-01-09 21:18:00 +01:00
Kay Sievers
fc55cf68ca remove "udev_db" option from config file
All udev state is kept in /$udev_root/.udev/ now. No option to
configure that anymore, it will always be there.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-11-16 04:14:15 +01:00
Kay Sievers
53899a171e fix tests and remove no longer useful stuff
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-11-10 01:50:06 +01:00
Kay Sievers
a8349b33e5 remove our own copy of klibc
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-11-09 15:42:07 +01:00
Kay Sievers
6d33ed7374 test: add "driver" and "bus" links to test sysfs tree
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-11-02 05:08:22 +01:00
Kay Sievers
90e037dbe2 remove no longer working udevd-test program
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-10-28 00:29:50 +02:00
Kay Sievers
916c5e4725 fix the new warnings I asked for
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-10-27 20:32:07 +02:00
Kay Sievers
49fb51c615 use DESTDIR on uninstall, no need to pass prefix to submake
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
2005-10-27 18:42:52 +02:00
Kay Sievers
85701baede add install test to 'make buildtest'
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-09-14 17:29:27 +02:00
Kay Sievers
db28d2ea4f EXTRAS: cleanup and sync all Makefiles
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-09-14 17:00:02 +02:00
Kay Sievers
077ed27c55 add edd_id tool to match BIOS EDD disk information
Thanks to:
    John Hull <John_Hull@Dell.com>
    Matt Domsch <Matt_Domsch@Dell.com>

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-09-06 12:18:04 +02:00
Kay Sievers
0e47c219fc Makefile: remove all the duplicated rules
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-08-30 17:03:25 +02:00
Kay Sievers
a8586078fc udev_test.pl: we replace untrusted chars with '_'
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-08-29 02:19:36 +02:00
Kay Sievers
764ce7f2ab start to enforce plain ascii or valid utf8
No device node or symlink can have other characters as plain
readable ascii or valid utf8. The /dev/disk/by-label/* symlinks
can no longer contain weird stuff read from untrusted sources.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-08-28 15:55:58 +02:00
Kay Sievers
5618b5611b ENV{TEST}=="1" compares and ENV{TEST}="1" sets the environment
This can be uses to export stuff to the event environment or
to carry a state from one rule to another, like enabling/disabling
later rules conditionally.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-08-16 04:25:20 +02:00
Greg KH
c1986ea33c added cdrom_id to the build check 2005-08-11 14:37:54 -07:00
Kay Sievers
bebbc31b90 add firmware_helper to load firmware
From: Bill Nottingham <notting@redhat.com>

Changed reading of firmware blob to mmap and let firmware_helper
follow the setting of the log level with UDEV_LOG.
2005-08-09 19:00:37 +02:00
Hannes Reinecke
bf375e3af6 create_floppy_devices: add tool to create floppy nodes based on sysfs info 2005-07-19 11:14:12 -04:00
Kay Sievers
594dd61025 allow rules to have labels and skip to next label
This will allow us to have whole blocks of rules to skip
conditionally. The following section creates the node "yes":
  GOTO="TEST"
  NAME="no"
  NAME="no2", LABEL="NO"
  NAME="yes", LABEL="TEST"
  NAME="no3"
2005-07-16 07:46:31 +02:00
Hannes Reinecke
15e5209b8e dasd_id: add s390 disk-label prober
Signed-off-by: Hannes Reinecke <hare@suse.de>
2005-07-13 11:35:51 +02:00
Kay Sievers
0bfb84e1ed IMPORT: add {parent} to import the persistent data of the parent device
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-07-12 14:46:36 +02:00
Kay Sievers
0cd4ac473a allow multiple values to be matched with KEY=="value1|value2"
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-07-12 12:52:56 +02:00
Kay Sievers
7b2bdb4b1b fix symlink values separated by multiple spaces
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-07-07 23:43:13 +02:00
Kay Sievers
a72e3f666b fix typo in group assignment
Thanks to: Georgi Georgiev
2005-07-07 22:40:09 +02:00
Kay Sievers
7618e112b4 add usb_id program to generate usb-storage device identifiers
Signed-off-by: Hannes Reinecke <hare@suse.de>
2005-07-04 17:02:25 +02:00
Kay Sievers
be0856c841 prepare RELEASE-NOTES
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-30 21:50:22 +02:00
Kay Sievers
670e470543 add ata_id to read serial numbers from ATA drives
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-25 23:54:28 +02:00
Kay Sievers
319c670016 IMPORT allow to import program returned keys into the env
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-25 18:58:49 +02:00
Kay Sievers
bd0ed2ffbe IMPORT=<file> allow to import a shell-var style config-file
This allows to source-in a file into the udev environment to have
the defined keys available for later processing by udev itself or
the forked helper programs.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-25 13:10:16 +02:00
Kay Sievers
6bf0ffe8fd allow rules to be compiled to one binary file
All the rule files can be compiled into a single file,
which can be mapped into the udev process to avoid parsing
the rules with every event.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-24 18:05:32 +02:00
Kay Sievers
bf5d296473 prepare for module loading rules and add MODALIAS key
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-20 00:29:38 +02:00
Kay Sievers
561d4c5a3a udevd: allow starting of udevd with stopped exec-queue
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-08 11:57:53 +02:00
Kay Sievers
995aec8759 udev: clear lists if a new value is assigned
Former values are cleared if SYMLINK=<value> is used. To add a value
SYMLINK+=<value> is now needed.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-05 05:13:33 +02:00
Kay Sievers
6a522681e1 udev: move dev.d/ handling to external helper
Modern rules are expected to call notification and postprocessing with    
the RUN key. For compatibility the current behavior can be emulated
with an external helper.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-05 05:11:29 +02:00
Kay Sievers
c974742bf4 udev: allow final assignments :=
The use of KEY:=<value> will make the key unchangeable by later rules.

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
2005-06-05 04:57:03 +02:00
Greg KH
13ca17798c remove detach_state files from the sysfs test tree.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-05-18 23:33:12 -07:00
Greg KH
1e50c2dee7 Update permissions on test scripts so they will run properly now.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-05-10 10:22:56 -07:00
Greg KH
49cedafaf8 hopefully fix up the symlinks in the test directory
Thanks to Kay for pointing this out.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-05-10 10:11:15 -07:00
Daniel Drake
0ca6adfed9 [PATCH] Writing udev rules docs update
Here's a long overdue update to the udev rules docs, based on lots of user
feedback from the last few months.

Mostly updates to keep up with the new udev features, some clarifications and
wording improvements. I added a section on rules for palm pilots due to the
excessive amount of mail I get about them. I removed the nvidia stuff because
it's out of date. Added another section about debugging using logs and
udevtest. Removed the thanks list because I haven't been updating it and there
are too many people to name now, sorry..!
2005-05-09 16:14:14 -07:00
Greg KH
27a71e49c2 Added symlinks thanks to Kay's script and git hacking.
Now the tests should work again...
2005-05-05 21:47:57 -07:00
tklauser@access.unizh.ch
15139b8a62 [PATCH] fix stupid all_partitions bug
> On Mon, 2005-04-11 at 14:55 +0200, Norbert Preining wrote:
> > On Mon, 11 Apr 2005, Kay Sievers wrote:
> > > > brw-rw----  1 root root 8, 0 2005-04-10 14:58 /dev/sdcard
> > > > brw-rw----  1 root root 8, 1 2005-04-10 14:58 /dev/sdcard1
> > > > brw-rw----  1 root root 8, 1 2005-04-10 14:58 /dev/sdcard2
> > > > brw-rw----  1 root root 8, 1 2005-04-10 14:58 /dev/sdcard3
> > > 
> > > This looks broken.
> > 
> > Good to hear.

Yeah, I guess it's broken. In create_node() in udev_add.c there is
always added 1 to the minor number, thus the error. The attached patch
should fix this.
2005-04-26 23:55:01 -07:00
kay.sievers@vrfy.org
05bd6efb41 [PATCH] add test for make -j4 to build-check 2005-04-26 23:55:01 -07:00
kay.sievers@vrfy.org
f040a4a271 [PATCH] udev-test.pl: add test for DEVNAME export to RUN environment 2005-04-26 23:55:00 -07:00
kay.sievers@vrfy.org
821d0ec803 [PATCH] add RUN key to be able to run rule based notification
SUBSYSTEM=="block", RUN="/sbin/program"
  will execute the program only for block device events.

ACTION="remove", SUBSYSTEM=="block", RUN"/sbin/program"
  will execute the program, if a block device is removed.
2005-04-26 23:55:00 -07:00
kay.sievers@vrfy.org
db949b0248 [PATCH] allow to match against empty key values 2005-04-26 23:55:00 -07:00
kay.sievers@vrfy.org
98bbc835f5 [PATCH] read %s{}-sysfs values at any device in the chain 2005-04-26 23:55:00 -07:00
kay.sievers@vrfy.org
18614ab25d [PATCH] remove untrusted chars read from sysfs-values or returned by PROGRAM
Better remove characters that are useless in a device node name.
It may be a security risk to pass any character read from e.g. a
sysfs attribute to a shell script we execute later.
  
Prevent the modification of the libsysfs attribute value
cache.

Clear PROGRAM result if the execution encountered an error.
2005-04-26 23:54:59 -07:00
kay.sievers@vrfy.org
65005a7f81 [PATCH] test-suite: remove UDEV_TEST, it's not needed anymore 2005-04-26 23:54:59 -07:00
kay.sievers@vrfy.org
0bb4387707 [PATCH] udev-test.pl: use more common user/group names 2005-04-26 23:54:59 -07:00
kay.sievers@vrfy.org
c827876312 [PATCH] udev-test.pl: add a test where the group cannot be found in /etc/passwd 2005-04-26 23:54:59 -07:00
kay.sievers@vrfy.org
9b434de102 [PATCH] udev-test.pl: add check for textual uid/gid 2005-04-26 23:53:54 -07:00
kay.sievers@vrfy.org
3e5958dee5 [PATCH] add ENV{} key to match agains environment variables 2005-04-26 23:53:18 -07:00
kay.sievers@vrfy.org
38285d23d7 [PATCH] add a test and simplify debug statement 2005-04-26 23:53:17 -07:00
kay.sievers@vrfy.org
28ce66de17 [PATCH] support =, ==, !=, += for the key match and assignment 2005-04-26 23:53:17 -07:00
kay.sievers@vrfy.org
3b6ed8bb06 [PATCH] add OPTION="last_rule" to skip any later rule 2005-04-26 23:53:17 -07:00
kay.sievers@vrfy.org
882af735ec [PATCH] remove PLACE key match
ID should do the same, cause we walk up the chain of devices on the
physical device and can match for the name of every device there with
the ID key.
2005-04-26 23:51:00 -07:00
kay.sievers@vrfy.org
51015808da [PATCH] udev-test.pl: remove useless tests 2005-04-26 23:48:48 -07:00
kay.sievers@vrfy.org
77313cd0d1 [PATCH] namedev: skip backslashes only if followed by newline
Fix from: Hannes Reinecke <hare@suse.de>
namedev_parse is a bit overzealous when in comes to handling backspaces;
it always eats up backspaces regardless of anything beyond that. This
means it is impossible to enter '\t' in a rule. Quite a bit of fun when
you're trying to write regexps.
2005-04-26 23:39:48 -07:00
kay.sievers@vrfy.org
1cec1c2416 [PATCH] remove the device node only if the major/minor number matches 2005-04-26 23:36:13 -07:00
kay.sievers@vrfy.org
fd9efc00a2 [PATCH] introduce OPTIONS=ignore_device, ignore_remove, all_partitions" key
Here we move all possible options into a own key to make it possible
to have options-only rules.

The options on the NAME key are removed from the man page and will
be removed from a future version of udev.

For ignore rules, OPTIONS="ignore" should be used.

The rule:
  SUBSYSTEM="block", SYSFS{removable}="1", OPTIONS="all_partitions"

will create all partitions for a block device which is known to have
removable media (a check for cdrom drives would be needed too).
2005-04-26 23:36:12 -07:00
gregkh@suse.de
5f2a5816cf [PATCH] allow simple-build-check.sh to go faster if MAKEOPTS is set
This lets my multiprocessor boxes do the testing quicker...
2005-04-26 23:35:15 -07:00
patmans@us.ibm.com
fd42f6a170 [PATCH] fix test for temporary nodes 2005-04-26 23:34:01 -07:00
kay.sievers@vrfy.org
6a24dc7477 [PATCH] fix special file mode mask for temporary device node 2005-04-26 23:33:50 -07:00
kay.sievers@vrfy.org
f22e9686fd [PATCH] udevstart: simplify "dev" file searching
Just stat() the "dev" file in the device directory instead of
opening the directory and iterating over all entries.

Make udevstart work with the settings in with udev.conf so we can
run a test program.

Add a test for udevstart.

Remove changelog stuff from code. We should never start with this
silly thing.
2005-04-26 23:31:07 -07:00
kay.sievers@vrfy.org
69aa6dfb70 [PATCH] add %P modifier to query the node name of the parent device
Events for partition devies may want to read the main block device
name to compose it's own name or read a disklabel from the main device.

SUBSYSTEM="block", KERNEL="*[1-9]", NAME="%P-p%n"
will append the partition number to the name of the main block device.
2005-04-26 23:31:03 -07:00
kay.sievers@vrfy.org
c1ab046124 [PATCH] provide temporary device node for callouts to access the device
%N will create a temporary node for a callout a be sustituted with the
name of the node.
2005-04-26 23:27:32 -07:00
kay.sievers@vrfy.org
61599bdd06 [PATCH] simple_build_check: make it possible to pass KERNEL_DIR 2005-04-26 23:24:19 -07:00
kay.sievers@vrfy.org
b9a8c4821a [PATCH] remove default_* permissions from udev.conf file
With the "permissions only rules" we can just place:
 
   MODE="0660", OWNER="root", GROUP="root"
 
at the beginning of the rules file and get exactly the same behavior.
If no values are given the compiled-in defaults are used.
2005-04-26 23:19:09 -07:00
kay.sievers@vrfy.org
eb8700908c [PATCH] update Fedora config files and add some more tests 2005-04-26 23:19:09 -07:00
kay.sievers@vrfy.org
e93901468c [PATCH] allow permissions only rules
On Mon, 2004-12-20 at 15:03 +0100, Marco d'Itri wrote:
> +# all block devices
> > +SUBSYSTEM="block",   NAME="%k", GROUP="disk"
> > +
> NAME="%k" here and in similar rules does not add any new information,
> what about making it optional, like it is for SYMLINK-only rules?
2005-04-26 23:19:09 -07:00
kay.sievers@vrfy.org
87da5b2c65 [PATCH] add SUBSYSTEM rule to catch all block devices and apply the disk permissions 2005-04-26 23:19:09 -07:00
kay.sievers@vrfy.org
9f8dfa19cf [PATCH] allow multiline rules by backslash at the end of the line
On Sun, 2004-12-19 at 18:31 +0100, Marco d'Itri wrote:
> > On Dec 19, Kay Sievers <kay.sievers@vrfy.org> wrote:
> 
> > (Feature request: would it be possible to extend the rules files parser
> > to support continuation lines? I'd like it to consider lines starting
> > with white space as part of the previous line.)
> 
> How about the usual backslash at the end of the line. Here is a simple
> patch.
2005-04-26 23:19:09 -07:00
kay.sievers@vrfy.org
4ae6d03f39 [PATCH] simplify rules file by setting default mode to 0660
On Sun, 2004-12-19 at 18:31 +0100, Marco d'Itri wrote:
> It may be better to use default_mode="0660", I do not think that there
> are any mode 600 devices. This would allow setting only the group for
> most of them.
2005-04-26 23:19:09 -07:00
kay.sievers@vrfy.org
2a270316e4 [PATCH] I broke the extras/ again. Add simple build test script now. 2005-04-26 23:19:08 -07:00
kay.sievers@vrfy.org
8b36cc0f17 [PATCH] complete removal of explicit udev permissions config file 2005-04-26 23:17:47 -07:00
Greg KH
18ebc43050 bleah, more merge fixes... 2005-04-26 23:15:56 -07:00
kay.sievers@vrfy.org
98446db553 [PATCH] udevd-test.pl: remove wrong date calculation
A hour wrap during the test run does not work :) Just remove
all the useless date conversions as we are only interested in the
seconds it takes to process.

[root@pim udevd-test]# ./udevd-test.pl 9
   ...
   device: /class/tty/console, action: remove 
   forking udev time:     Sat Dec 11 18:59:57 2004
   the delay time is:     3 s 

   device: /class/tty/ptmx, action: remove 
   forking udev time:     Sat Dec 11 19:00:07 2004
   the delay time is:     4013 s 

   the delay time is: 4013 
   udevd doesn't act properly.
2005-04-26 23:13:48 -07:00
greg@kroah.com
69bef84191 [PATCH] delete a bunch of files no longer needed.
Thanks to Kay for pointing it out.
2005-04-26 23:06:10 -07:00
kay.sievers@vrfy.org
8e2bf855bd [PATCH] fix udev-test/udev-test.pl to work with again 2005-04-26 23:06:10 -07:00
kay.sievers@vrfy.org
16ac31aaee [PATCH] don't call the hotplug scripts with a test run 2005-04-26 23:00:29 -07:00
Greg KH
b1e95455d2 fixups to get back to proper patch order
Damm, it's hard to merge a multi-line tree into one flat line at times...
2005-04-26 22:52:57 -07:00
greg@kroah.com
ad89f2be3b [PATCH] comment out ability to run udev-test.pl with valgrind 2005-04-26 22:43:27 -07:00
kay.sievers@vrfy.org
7efa217db0 [PATCH] add NAME{ignore_remove} attribute
Some broken ide drivers are generating high event traffic, with
add/remove events. With this attribute, it can be specified,
that the node is always available. It may be used in conjunction
with the new DRIVER= match to catch specific kernel device drivers.
2005-04-26 22:27:34 -07:00
kay.sievers@vrfy.org
2092fbcdeb [PATCH] support DRIVER as a rule key
Match with a rule against a device with a specific kernel driver.
2005-04-26 22:26:25 -07:00
kay.sievers@vrfy.org
6818c51d7a [PATCH] support SUBSYSTEM as a rule key
This should make it easier to catch e.g all block or net devices with
a single rule.
2005-04-26 22:25:38 -07:00
kay.sievers@vrfy.org
2b41e68a08 [PATCH] replace tdb database by simple lockless file database
This makes the udev operation completely lockless by storing a
file for every node in /dev/.udevdb/* This solved the problem
with deadlocking concurrent udev processes waiting for each other
to release the file lock under heavy load.
2005-04-26 22:16:40 -07:00
greg@kroah.com
800ab95bd5 [PATCH] make udev-test.pl test for root permissions before running
Should prevent false error reports from happening.
2005-04-26 22:09:26 -07:00
kay.sievers@vrfy.org
091215a597 [PATCH] Apply the default permissions even if we found a entry in 2005-04-26 22:08:27 -07:00
kay.sievers@vrfy.org
2b0f835ccc [PATCH] add test for format chars in multiple symlinks to replace 2005-04-26 22:08:27 -07:00
greg@kroah.com
948736dde7 [PATCH] add dumb script to show all sysfs devices in the system. 2005-04-26 22:08:27 -07:00
kay.sievers@vrfy.org
7a947ce515 [PATCH] big cleanup of internal udev api
Here is the first patch to cleanup the internal processing of the
various stages of an udev event. It should not change any behavior,
but if your system depends on udev, please always test it before reboot :)

We pass only one generic structure around between add, remove,
namedev, db and dev_d handling and make all relevant data available
to all internal stages. All udev structures are renamed to "udev".

We replace the fake parameter by a flag in the udev structure.

We open the class device in the main binaries and not in udev_add, to
make it possible to use libsysfs for udevstart directory crawling.

The last sleep parameters are removed.
2005-04-26 22:02:46 -07:00
greg@kroah.com
8e0871196c [PATCH] fix up the wait_for_sysfs_test script a bit.
We also emit the same things the -mm tree does now, so to make that easier
to test for.
2005-04-26 22:02:45 -07:00
greg@kroah.com
052de0cec6 [PATCH] take out & from wait_for_sysfs_test that I previously missed. 2005-04-26 22:02:45 -07:00
greg@kroah.com
a6150f4a8a [PATCH] add wait_for_sysfs test script to the tarball to help people debug their boxes. 2005-04-26 21:56:02 -07:00