chiark / gitweb /
elogind.git
13 years agoata_id: make sure, we do not have slashes in values
Kay Sievers [Thu, 20 Nov 2008 06:52:33 +0000 (07:52 +0100)]
ata_id: make sure, we do not have slashes in values

13 years agousb_id: replace chars in returned strings
Kay Sievers [Thu, 20 Nov 2008 01:44:08 +0000 (02:44 +0100)]
usb_id: replace chars in returned strings

Slashes are not funny in device names:
  |-- input
  |   |-- by-id
  |   |   `-- usb-Logitech_USB-PS
  |   |       |-- 2_Optical_Mouse-event-mouse -> ../../event2
  |   |       `-- 2_Optical_Mouse-mouse -> ../../mouse1

13 years agolibudev: accept NULL whitelist in util_replace_chars()
Kay Sievers [Thu, 20 Nov 2008 01:43:34 +0000 (02:43 +0100)]
libudev: accept NULL whitelist in util_replace_chars()

13 years agorules: v4l - add by-id/ links for USB devices
Kay Sievers [Thu, 20 Nov 2008 01:26:13 +0000 (02:26 +0100)]
rules: v4l - add by-id/ links for USB devices

/dev/v4l
|-- by-id
|   |-- usb-046d_09a4_C4B15020-video-index0 -> ../../video0
|   `-- usb-05a9_a511-video-index0 -> ../../video1
`-- by-path
    |-- pci-0000:00:1d.0-usb-0:1:1.0-video-index0 -> ../../video1
    `-- pci-0000:00:1d.7-usb-0:2:1.0-video-index0 -> ../../video0

13 years agorules: merge group "video" into default rules
Kay Sievers [Wed, 19 Nov 2008 20:47:07 +0000 (21:47 +0100)]
rules: merge group "video" into default rules

13 years agorules: add persistent rules for memory stick block devices
Harald Hoyer [Wed, 19 Nov 2008 10:24:03 +0000 (11:24 +0100)]
rules: add persistent rules for memory stick block devices

commit 5a9aed145ac0ffb3e29b1c8e0f19b34e277f9117
Author: Harald Hoyer <harald@redhat.com>
Date:   Wed Nov 19 11:22:30 2008 +0100

    added persistent rules for memory stick block devices

13 years agobump version
Kay Sievers [Tue, 18 Nov 2008 18:16:42 +0000 (19:16 +0100)]
bump version

13 years agovolume_id: update btrfs magic
Kay Sievers [Tue, 18 Nov 2008 18:14:37 +0000 (19:14 +0100)]
volume_id: update btrfs magic

13 years agoautogen.sh: fix -print-multi-os-directory usage
Kay Sievers [Tue, 18 Nov 2008 02:52:05 +0000 (03:52 +0100)]
autogen.sh: fix -print-multi-os-directory usage

13 years agorelease 133
Kay Sievers [Tue, 18 Nov 2008 01:50:58 +0000 (02:50 +0100)]
release 133

13 years agoupdate NEWS
Kay Sievers [Tue, 18 Nov 2008 01:49:08 +0000 (02:49 +0100)]
update NEWS

13 years agofix $links substitution for devices without any link
Kay Sievers [Mon, 17 Nov 2008 14:24:47 +0000 (15:24 +0100)]
fix $links substitution for devices without any link

Reported-by: Michel Hermier <michel.hermier@gmail.com>
13 years agoudevd: fix cleanup of /dev/.udev/uevent_seqnum
Kay Sievers [Mon, 17 Nov 2008 13:43:58 +0000 (14:43 +0100)]
udevd: fix cleanup of /dev/.udev/uevent_seqnum

13 years agolimit $attr(<symlink>) magic to well-known links only
Kay Sievers [Mon, 17 Nov 2008 01:01:37 +0000 (02:01 +0100)]
limit $attr(<symlink>) magic to well-known links only

13 years agoudevadm: fix option parsing breakage with klibc
Sergey Vlasov [Fri, 14 Nov 2008 21:34:43 +0000 (00:34 +0300)]
udevadm: fix option parsing breakage with klibc

The klibc implementation of getopt_long() behaves slightly different
from the glibc one - in particular, it treats the change of the option
string argument between invocations as start of parsing a different
command line, and resets its state.  However, the udevadm code
expected getopt_long() invocations in subcommands to continue parsing
the rest of command line after initial options has been parsed at the
top level; with klibc this broke, causing all udevadm subcommands to
stop recognizing their options.

Instead of relying on the glibc behavior, reset the getopt_long()
state properly before invoking the subcommand handler: move argv to
point to the subcommand name, decrease argc appropriately, and set
optind = 0.  This also fixes a minor bug visible with glibc - without
setting optind = 0 all getopt_long() calls in subcommand handlers were
behaving as if "+" was specified as the first character of the option
string (which disables option reordering), because that state was set
by the first getopt_long() call at the top level, and was not reset
when parsing subcommand options.

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
13 years agolibudev: device - handle disk "device" link for partitions in deprecated sysfs layout
Kay Sievers [Fri, 14 Nov 2008 17:26:49 +0000 (18:26 +0100)]
libudev: device - handle disk "device" link for partitions in deprecated sysfs layout

Thanks to Mikhail Kolesnik <mike@openbunker.org> for finding this.

13 years agovol_id: clarify error message
Kay Sievers [Thu, 13 Nov 2008 23:57:34 +0000 (00:57 +0100)]
vol_id: clarify error message

13 years agovolume_id: ntfs - mark as no other fs must match
Kay Sievers [Thu, 13 Nov 2008 20:44:28 +0000 (21:44 +0100)]
volume_id: ntfs - mark as no other fs must match

13 years agofix spelling in comment
Kay Sievers [Thu, 13 Nov 2008 19:46:25 +0000 (20:46 +0100)]
fix spelling in comment

13 years agovolume_id: fat - accept empty FAT32 fsinfo signature
Kay Sievers [Thu, 13 Nov 2008 18:40:24 +0000 (19:40 +0100)]
volume_id: fat - accept empty FAT32 fsinfo signature

13 years agovolume_id: always check for all filesystem types and skip conflicting results
Kay Sievers [Thu, 13 Nov 2008 18:34:41 +0000 (19:34 +0100)]
volume_id: always check for all filesystem types and skip conflicting results

We probe for all known filesystems to find conflicting signatures. If
we find multiple matching signatures and one of the detected filesystem
types claims that it can not co-exist with any other filesystem type,
we do not return a probing result.

We can not afford to mount a volume with the wrong filesystem code and
possibly corrupt it. Linux ssytems have the problem of dozens of possible
filesystem types, and volumes with left-over signatures from former
filesystem types. Invalid signature need to be removed from the volume
to make the filesystem detection successful.

We do not want to read that many bytes from probed floppies, skip volumes
smaller than a usual floppy disk.

13 years agovolume_id: bump revision
Kay Sievers [Thu, 13 Nov 2008 17:22:39 +0000 (18:22 +0100)]
volume_id: bump revision

13 years agoremove len == 0 check, the index root is always '\0'
Kay Sievers [Thu, 13 Nov 2008 17:21:28 +0000 (18:21 +0100)]
remove len == 0 check, the index root is always '\0'

13 years agovolume_id: fat - move check for msdos signature (0x55 0xaa)
Karel Zak [Thu, 13 Nov 2008 16:32:14 +0000 (17:32 +0100)]
volume_id: fat - move check for msdos signature (0x55 0xaa)

Make the msdos signature (0x55 0xaa) at 510 and 511 optional when
the standard FAT magic string is present.

13 years agoconfigure: add linux-hotplug mail address
Kay Sievers [Thu, 13 Nov 2008 07:16:55 +0000 (08:16 +0100)]
configure: add linux-hotplug mail address

13 years agoupdate NEWS
Kay Sievers [Thu, 13 Nov 2008 07:03:49 +0000 (08:03 +0100)]
update NEWS

13 years agorules: remove pnp shell script, acpi loads these modules properly
Kay Sievers [Thu, 13 Nov 2008 06:47:16 +0000 (07:47 +0100)]
rules: remove pnp shell script, acpi loads these modules properly

13 years agorules: remove DEVTYPE disk/partition
Kay Sievers [Thu, 13 Nov 2008 06:45:58 +0000 (07:45 +0100)]
rules: remove DEVTYPE disk/partition

13 years agoudevadm: info - unify -V and --version
Kay Sievers [Thu, 13 Nov 2008 06:31:04 +0000 (07:31 +0100)]
udevadm: info - unify -V and --version

13 years agoset errno = ENOSYS in inotify stub
Kay Sievers [Thu, 13 Nov 2008 00:52:33 +0000 (01:52 +0100)]
set errno = ENOSYS in inotify stub

13 years agoscsi_id: we don't use DEVPATH env var anymore, update man page
Alan Jenkins [Wed, 12 Nov 2008 16:23:17 +0000 (16:23 +0000)]
scsi_id: we don't use DEVPATH env var anymore, update man page

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agomerge trie nodes, childs and root into a single array
Kay Sievers [Wed, 12 Nov 2008 23:52:12 +0000 (00:52 +0100)]
merge trie nodes, childs and root into a single array

13 years agoreserve child slot 0
Kay Sievers [Wed, 12 Nov 2008 14:01:20 +0000 (15:01 +0100)]
reserve child slot 0

13 years agostring index - split nodes and childs to allow and unlimited number of childs
Kay Sievers [Wed, 12 Nov 2008 04:50:05 +0000 (05:50 +0100)]
string index - split nodes and childs to allow and unlimited number of childs

13 years agosilence "comparison between signed and unsigned"
Kay Sievers [Tue, 11 Nov 2008 22:47:01 +0000 (23:47 +0100)]
silence "comparison between signed and unsigned"

13 years agoudevd: de-duplicate strings in rules
Alan Jenkins [Tue, 11 Nov 2008 20:20:11 +0000 (20:20 +0000)]
udevd: de-duplicate strings in rules

On my Ubuntu installation this removes 15k of duplicate strings,
using a temporary index of about 25k.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agorelease 132
Kay Sievers [Fri, 7 Nov 2008 15:08:58 +0000 (16:08 +0100)]
release 132

13 years agoconvert debug string arrays to functions
Kay Sievers [Fri, 7 Nov 2008 14:59:58 +0000 (15:59 +0100)]
convert debug string arrays to functions

On Fri, Nov 7, 2008 at 13:07, Matthias Schwarzott <zzam@gentoo.org> wrote:
> I managed to let udev-131 segfault at startup.
>
> I configured it like this:
> CFLAGS="-Wall -ggdb" ./configure --prefix=/usr --sysconfdir=/etc --exec-prefix=
>
> Running it in gdb shows it segfaults at udev-rules.c:831
>
> (gdb) run
> Starting program: /tmp/udev-131/udev/udevd
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x0804ea06 in get_key (udev=0x9175008, line=0xafcdc8f0, key=0xafcdc5d8,
> op=0xafcdc5d0, value=0xafcdc5d4)
>    at udev-rules.c:831
> 831             dbg(udev, "%s '%s'-'%s'\n", operation_str[*op], *key, *value);

If compiled without optimization, the dbg() macro dereferences variables
which are not available. Convert the string array to a function, which just
returns NULL if compiled without DEBUG.

13 years agofix size_t compiler warning on 32 bit platforms
Kay Sievers [Fri, 7 Nov 2008 01:58:54 +0000 (02:58 +0100)]
fix size_t compiler warning on 32 bit platforms

13 years agorelease 131
Kay Sievers [Fri, 7 Nov 2008 01:36:20 +0000 (02:36 +0100)]
release 131

13 years agoudevadm: settle - exit if udevd exits
Kay Sievers [Thu, 6 Nov 2008 18:41:58 +0000 (19:41 +0100)]
udevadm: settle - exit if udevd exits

13 years agocleanup /dev/.udev/queue on startup and exit
Kay Sievers [Thu, 6 Nov 2008 16:43:12 +0000 (17:43 +0100)]
cleanup /dev/.udev/queue on startup and exit

13 years agorules: md - add mdadm 3 device naming
Kay Sievers [Thu, 6 Nov 2008 07:17:33 +0000 (08:17 +0100)]
rules: md - add mdadm 3 device naming

13 years agofix indentation
Kay Sievers [Thu, 6 Nov 2008 01:56:45 +0000 (02:56 +0100)]
fix indentation

13 years agoudevd: shrink struct token to 12 bytes
Alan Jenkins [Wed, 5 Nov 2008 21:28:52 +0000 (22:28 +0100)]
udevd: shrink struct token to 12 bytes

13 years ago$links should be relative
Kay Sievers [Wed, 5 Nov 2008 21:13:49 +0000 (22:13 +0100)]
$links should be relative

13 years agounify string replacement
Kay Sievers [Wed, 5 Nov 2008 20:49:52 +0000 (21:49 +0100)]
unify string replacement

13 years agousb_id: MassStorage SubClass 6 is "scsi" not "disk"
Kay Sievers [Wed, 5 Nov 2008 18:02:56 +0000 (19:02 +0100)]
usb_id: MassStorage SubClass 6 is "scsi" not "disk"

13 years agodo not import the "uevent" file when we only read the db to get old symlinks
Kay Sievers [Wed, 5 Nov 2008 11:23:06 +0000 (12:23 +0100)]
do not import the "uevent" file when we only read the db to get old symlinks

13 years agofix cleanup of possible left-over symlinks
Kay Sievers [Wed, 5 Nov 2008 03:45:23 +0000 (04:45 +0100)]
fix cleanup of possible left-over symlinks

13 years agofix $links substitution
Kay Sievers [Wed, 5 Nov 2008 03:08:44 +0000 (04:08 +0100)]
fix $links substitution

13 years agoinfo() PROGRAM and IMPORT execution
Kay Sievers [Wed, 5 Nov 2008 03:05:17 +0000 (04:05 +0100)]
info() PROGRAM and IMPORT execution

13 years agovolume_id: btrfs update
Kay Sievers [Wed, 5 Nov 2008 01:22:07 +0000 (02:22 +0100)]
volume_id: btrfs update

13 years agofix list handling in enumerate and rules file sorting
Kay Sievers [Tue, 4 Nov 2008 19:19:01 +0000 (20:19 +0100)]
fix list handling in enumerate and rules file sorting

13 years agofirmware.sh: record missing files in /dev/.udev/firmware-missing/
Kay Sievers [Tue, 4 Nov 2008 17:38:06 +0000 (18:38 +0100)]
firmware.sh: record missing files in /dev/.udev/firmware-missing/

13 years agomove debugging strings inside #ifdef DEBUG
Kay Sievers [Sat, 1 Nov 2008 20:05:25 +0000 (21:05 +0100)]
move debugging strings inside #ifdef DEBUG

13 years agoadd "devel" and "install" switches to autogen.sh
Kay Sievers [Sat, 1 Nov 2008 19:57:22 +0000 (20:57 +0100)]
add "devel" and "install" switches to autogen.sh

13 years agomove some info() to dbg()
Kay Sievers [Sat, 1 Nov 2008 19:16:24 +0000 (20:16 +0100)]
move some info() to dbg()

13 years agofix udev_node_update_old_links() logic
Kay Sievers [Sat, 1 Nov 2008 19:05:41 +0000 (20:05 +0100)]
fix udev_node_update_old_links() logic

No need to check if links that still belong to us, need to be updated.

13 years agoskip entire rule containing device naming keys, if no device can be named
Kay Sievers [Sat, 1 Nov 2008 18:12:20 +0000 (19:12 +0100)]
skip entire rule containing device naming keys, if no device can be named

If rules set NAME, SYMLINK, OWNER, GROUP, MODE, events without a device node
and remove events will skip the entire rule. The old parser did the same.

13 years agolog rules file and line number when NAME, SYMLINK, OWNER, GROUP, MODE, RUN is applied
Kay Sievers [Sat, 1 Nov 2008 17:34:54 +0000 (18:34 +0100)]
log rules file and line number when NAME, SYMLINK, OWNER, GROUP, MODE, RUN is applied

13 years agoudevd: be more careful when matching against parents
Alan Jenkins [Sat, 1 Nov 2008 16:32:16 +0000 (17:32 +0100)]
udevd: be more careful when matching against parents

I'm worried about what will happen with things like

KERNELS=="*" # pointless rule
KERNELS=="doesnt-match" # another pointless rule

Since TK_RULE < TK_M_PARENTS_MAX, we will try to match all three tokens
against parents of the current device.  I can't think of a bad case,
but it's not exactly good either.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agoudevd: fix termination of rule execution
Alan Jenkins [Sat, 1 Nov 2008 16:09:16 +0000 (16:09 +0000)]
udevd: fix termination of rule execution

LAST_RULE was broken, and I broke TK_END by making it do the same.
It used a "break" which exited the switch statement, but not the loop!

==2953== Invalid read of size 4
==2953==    at 0x4081EE: dump_token (udev-rules.c:859)
==2953==    by 0x40BADB: udev_rules_apply_to_event (udev-rules.c:1849)
==2953==    by 0x403F17: udev_event_execute_rules (udev-event.c:554)
==2953==    by 0x418626: main (test-udev.c:100)
==2953==  Address 0x55ab1f8 is 0 bytes after a block of size 80 alloc'd
==2953==    at 0x4C23082: realloc (vg_replace_malloc.c:429)
==2953==    by 0x40B13B: udev_rules_new (udev-rules.c:1670)
==2953==    by 0x418536: main (test-udev.c:84)
...

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agowrite trace log to stderr
Kay Sievers [Fri, 31 Oct 2008 15:22:55 +0000 (16:22 +0100)]
write trace log to stderr

13 years agofstab_import: add "change" event match
Kay Sievers [Thu, 30 Oct 2008 15:41:47 +0000 (16:41 +0100)]
fstab_import: add "change" event match

13 years agoedd_id: add "change" event match
Kay Sievers [Thu, 30 Oct 2008 15:41:27 +0000 (16:41 +0100)]
edd_id: add "change" event match

13 years agorules: remove "add" match from usb device node rule
Kay Sievers [Thu, 30 Oct 2008 15:11:49 +0000 (16:11 +0100)]
rules: remove "add" match from usb device node rule

13 years agorules: remove SCSI timeouts
Kay Sievers [Thu, 30 Oct 2008 08:20:03 +0000 (09:20 +0100)]
rules: remove SCSI timeouts

On Thu, Oct 30, 2008 at 03:55, Tejun Heo <tj@kernel.org> wrote:
The appropriate default timeout differs depending on the transport and
the type of the attached device, so the above two rules harm more than
help.  The affect of the above two rules weren't visible for some
reason but with recent block layer timeout update, they actually work
and cause problems.

13 years agoATTR{}== always fails if the attribute does not exist
Kay Sievers [Wed, 29 Oct 2008 21:22:12 +0000 (22:22 +0100)]
ATTR{}== always fails if the attribute does not exist

13 years agoudevd: merge exec and run queue to minimize devpath string compares
Kay Sievers [Wed, 29 Oct 2008 16:32:13 +0000 (17:32 +0100)]
udevd: merge exec and run queue to minimize devpath string compares

13 years agoudevd: simplify rules execution loop
Alan Jenkins [Tue, 28 Oct 2008 08:58:18 +0000 (08:58 +0000)]
udevd: simplify rules execution loop

cur can't become NULL, and the check for TK_END
can be folded into the switch statement.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agoupdate NEWS
Kay Sievers [Tue, 28 Oct 2008 01:26:35 +0000 (02:26 +0100)]
update NEWS

13 years agokerneldoc comment fixes
Alan Jenkins [Sun, 26 Oct 2008 14:48:48 +0000 (14:48 +0000)]
kerneldoc comment fixes

s/ressources/resources/

Also reduce commas per sentence and add a possessive apostrophe.

13 years agolibudev: device - allocate envp array only once
Kay Sievers [Sun, 26 Oct 2008 13:31:46 +0000 (14:31 +0100)]
libudev: device - allocate envp array only once

13 years agotest: add RUN+="socket: ..." to a test to run monitor code
Kay Sievers [Sun, 26 Oct 2008 03:35:32 +0000 (04:35 +0100)]
test: add RUN+="socket: ..." to a test to run monitor code

13 years agolibudev: device - fill envp array while composing monitor buffer
Kay Sievers [Sun, 26 Oct 2008 02:39:41 +0000 (03:39 +0100)]
libudev: device - fill envp array while composing monitor buffer

Thanks to Alan Jenkins, for the idea.

13 years agofix $attr{[<subsystem>/<sysname>]<attribute>} substitution
Kay Sievers [Sun, 26 Oct 2008 01:48:14 +0000 (02:48 +0100)]
fix $attr{[<subsystem>/<sysname>]<attribute>} substitution

13 years agodo not init string arrays, just clear first byte
Kay Sievers [Sun, 26 Oct 2008 01:31:54 +0000 (02:31 +0100)]
do not init string arrays, just clear first byte

13 years agomatch_attr() - copy attr value only when needed
Kay Sievers [Sun, 26 Oct 2008 01:16:54 +0000 (02:16 +0100)]
match_attr() - copy attr value only when needed

13 years agoudevd: avoid implicit memset in match_attr()
Alan Jenkins [Sat, 25 Oct 2008 14:51:19 +0000 (15:51 +0100)]
udevd: avoid implicit memset in match_attr()

Initializing a char array to "" is equivalent to a memset()
call - which is exactly what it gets compiled to.

Fixing this one callsite reduced memset() _user_ cpu cycles
from 2-4% to 0.05% on the EeePC.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agoudevd: use a tighter loop for compare_devpath()
Alan Jenkins [Sat, 25 Oct 2008 16:01:21 +0000 (17:01 +0100)]
udevd: use a tighter loop for compare_devpath()

This crops up in my threaded udevd profiles from time to time.
It's not consistent - probably due to variations in the number
of concurrent events - but it can hit 4% user time and higher.

The change halves the user time spent in compare_devpath().

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agofix handling of string_escape option
Alan Jenkins [Sat, 25 Oct 2008 13:19:48 +0000 (15:19 +0200)]
fix handling of string_escape option

13 years agomatch KEY="A|B" without temporary string copy
Kay Sievers [Sat, 25 Oct 2008 01:00:03 +0000 (03:00 +0200)]
match KEY="A|B" without temporary string copy

13 years agoremove debug printf
Kay Sievers [Fri, 24 Oct 2008 16:09:13 +0000 (18:09 +0200)]
remove debug printf

13 years agofix "unused" warnings
Kay Sievers [Fri, 24 Oct 2008 15:42:31 +0000 (17:42 +0200)]
fix "unused" warnings

13 years agolibudev: monitor - cache result of monitor send buffer
Kay Sievers [Fri, 24 Oct 2008 14:36:27 +0000 (16:36 +0200)]
libudev: monitor - cache result of monitor send buffer

13 years agolibudev: monitor - replace far too expensive snprintf() with strlcpy()
Kay Sievers [Fri, 24 Oct 2008 13:09:43 +0000 (15:09 +0200)]
libudev: monitor - replace far too expensive snprintf() with strlcpy()

13 years agospecial-case "?*" match to skip fnmatch()
Kay Sievers [Fri, 24 Oct 2008 12:19:42 +0000 (14:19 +0200)]
special-case "?*" match to skip fnmatch()

13 years agodetermine at rule parse time if we need to call fnmatch()
Kay Sievers [Fri, 24 Oct 2008 11:32:32 +0000 (13:32 +0200)]
determine at rule parse time if we need to call fnmatch()

This cuts down the large rule set's 120.000 calls to fnmatch() to
51.000, and we can just call strcmp for the simple matches.

13 years agodistinguish "match" from "assign" by (op < OP_MATCH_MAX)
Kay Sievers [Fri, 24 Oct 2008 09:38:05 +0000 (11:38 +0200)]
distinguish "match" from "assign" by (op < OP_MATCH_MAX)

13 years agocache uid/gid during rule parsing
Kay Sievers [Fri, 24 Oct 2008 08:51:04 +0000 (10:51 +0200)]
cache uid/gid during rule parsing

This cuts down the number of parsing /etc/group from ~700 to 11,
with some large rule files installed.

13 years agofix uninitialized variable warnings
Kay Sievers [Fri, 24 Oct 2008 07:37:37 +0000 (09:37 +0200)]
fix uninitialized variable warnings

13 years agorules: let empty strings added to buffer always return offset 0
Kay Sievers [Fri, 24 Oct 2008 06:07:37 +0000 (08:07 +0200)]
rules: let empty strings added to buffer always return offset 0

13 years agoskip SYMLINK rules for devices without a device node
Kay Sievers [Thu, 23 Oct 2008 19:42:23 +0000 (21:42 +0200)]
skip SYMLINK rules for devices without a device node

13 years agoudevd: fix WAIT_FOR_SYSFS execution order
Alan Jenkins [Thu, 23 Oct 2008 18:37:30 +0000 (19:37 +0100)]
udevd: fix WAIT_FOR_SYSFS execution order

The wait should be ordered after matching KERNEL, ENV, etc.
but before ATTR.

Without this, WAIT_FOR_SYSFS rules will be applied unconditionally
to all events.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agorule_generator: fix netif NAME= value extraction regex
Kay Sievers [Thu, 23 Oct 2008 13:44:34 +0000 (15:44 +0200)]
rule_generator: fix netif NAME= value extraction regex

  $ sed -n -r \
    -e 's/^#.*//' \
    -e 's/[[:space:],]NAME="(eth[0-9]*)"[[:space:]]*(,.*|\\|)$/\1/p' \
    /dev/null /etc/udev/rules.d/70-persistent-net.rules
  SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:16:41:e2:8d:c7", ATTR{type}=="1", KERNEL=="eth*",eth4

  $ sed -n -r \
    -e 's/^#.*//' \
    -e 's/.*[[:space:],]NAME="(eth[0-9]*)".*/\1/p' \
    /dev/null /etc/udev/rules.d/70-persistent-net.rules
  eth4

13 years agoudevd: fix memory leak
Alan Jenkins [Thu, 23 Oct 2008 09:27:36 +0000 (10:27 +0100)]
udevd: fix memory leak

Re: b99028c96307e729303be8f6750418979a7488b9 shrink struct udev_event

TEST 136: test multi matches 2
device '/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0' expecting node 'right'
==15011==
==15011== 7 bytes in 1 blocks are definitely lost in loss record 1 of 1
==15011==    at 0x47F9AB8: malloc (vg_replace_malloc.c:207)
==15011==    by 0x489CB5F: strdup (in /lib32/libc-2.7.so)
==15011==    by 0x8050F40: udev_rules_apply_to_event (udev-rules.c:1973)
==15011==    by 0x804A658: udev_event_execute_rules (udev-event.c:549)
==15011==    by 0x805A636: main (test-udev.c:100)
add:         ok
==15012==
==15012== 7 bytes in 1 blocks are definitely lost in loss record 1 of 1
==15012==    at 0x47F1AB8: malloc (vg_replace_malloc.c:207)
==15012==    by 0x4898B5F: strdup (in /lib32/libc-2.7.so)
==15012==    by 0x8050F40: udev_rules_apply_to_event (udev-rules.c:1973)
==15012==    by 0x804A9DF: udev_event_execute_rules (udev-event.c:658)
==15012==    by 0x805A636: main (test-udev.c:100)
remove:      ok

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
13 years agoshrink struct udev_event
Kay Sievers [Thu, 23 Oct 2008 00:57:08 +0000 (02:57 +0200)]
shrink struct udev_event

13 years agoshrink struct udev_event
Kay Sievers [Thu, 23 Oct 2008 00:34:22 +0000 (02:34 +0200)]
shrink struct udev_event

13 years agodo not create temporary node ($tempnode) if node already exists
Kay Sievers [Wed, 22 Oct 2008 23:13:52 +0000 (01:13 +0200)]
do not create temporary node ($tempnode) if node already exists