chiark / gitweb /
17 years ago[PATCH] SCSI logical and physical names for udev [Tue, 23 Mar 2004 06:43:07 +0000 (22:43 -0800)]
[PATCH] SCSI logical and physical names for udev

  Hi, Greg. Appended is, a script for udev to implement
devfs-style names for SCSI hard discs, CD-ROM's and generic devices.
This has been tested with both hard discs and CD-ROM's. The SCSI
generic support should be OK for when there is sysfs/udev support for
SCSI generic devices. SCSI tapes are not yet implemented because I
don't have one to test with.

In addition, this script supports physical names, based on PCI bus
location, both longhand (/udev/bus/pci/...) and shorthand

17 years ago[PATCH] Increase the name size as requested by Richard Gooch <> [Tue, 23 Mar 2004 06:39:39 +0000 (22:39 -0800)]
[PATCH] Increase the name size as requested by Richard Gooch <>

17 years ago[PATCH] fix udevtest to build properly after the big udev_lib change. [Tue, 23 Mar 2004 06:32:34 +0000 (22:32 -0800)]
[PATCH] fix udevtest to build properly after the big udev_lib change.

17 years ago[PATCH] replace fgets() with mmap() and introduce udev_lib.[hc] [Tue, 23 Mar 2004 06:22:20 +0000 (22:22 -0800)]
[PATCH] replace fgets() with mmap() and introduce udev_lib.[hc]

Here we replace the various fgets() with a mmap() call for the config
file reading, due to the reported performance problems with klibc.

Thanks to Patrick's testing, it makes a very small, close to nothing
speed gain for libc users, but a 6 times speed increase for klibc users
with a 1000 line config file.

I've created a udev_lib.[hc] for this and also moved all the generic
stuff from udev.h in there and uninlined the functions.

17 years ago[PATCH] Trivial man page typo fixes to udev [Tue, 23 Mar 2004 06:19:37 +0000 (22:19 -0800)]
[PATCH] Trivial man page typo fixes to udev

 Fix minor man page typo's.

17 years ago[PATCH] make udevtest a real program :) [Tue, 23 Mar 2004 06:18:34 +0000 (22:18 -0800)]
[PATCH] make udevtest a real program :)

Here are the missing pieces for udevtest. A simple man page is added,
the blacklist is removed, cause it can't work without having a subsystem.
The Makefile removes all manpages now with a uninstall and installs
udevtest in /usr/bin/.
Any old version from /sbin/ should be deleted by hand.

The only expected argument is the sysfs devpath, here I changed it to be
more tolerant to the input. The path may now be specified with or
without a leading slash and optionally with the /sys moutpoint prepended.

I hope this will end the confusion about the use of this program :)

17 years ago[PATCH] 022 release 022 [Sat, 13 Mar 2004 07:53:38 +0000 (23:53 -0800)]
[PATCH] 022 release

17 years ago[PATCH] make spotless [Sat, 13 Mar 2004 07:52:21 +0000 (23:52 -0800)]
[PATCH] make spotless

klibc has a target make spotless, this patch makes it possible to clean
the whole udev tree and start from scratch.

17 years ago[PATCH] fix HOWTO-udev_for_dev for udevdir [Sat, 13 Mar 2004 07:52:17 +0000 (23:52 -0800)]
[PATCH] fix HOWTO-udev_for_dev for udevdir

17 years ago[PATCH] cleanup [Sat, 13 Mar 2004 02:18:58 +0000 (18:18 -0800)]
[PATCH] cleanup

Here is a small name change, so all expected values are named exp_*

17 years ago[PATCH] add big major tests to [Sat, 13 Mar 2004 02:00:39 +0000 (18:00 -0800)]
[PATCH] add big major tests to

17 years ago[PATCH] add a test for a minor over 255 [Sat, 13 Mar 2004 01:39:59 +0000 (17:39 -0800)]
[PATCH] add a test for a minor over 255

17 years ago[PATCH] print out major:minor and perm test "ok" if is ok. [Sat, 13 Mar 2004 01:27:44 +0000 (17:27 -0800)]
[PATCH] print out major:minor and perm test "ok" if is ok.

17 years ago[PATCH] make perm and major:minor test errors be reported properly. [Sat, 13 Mar 2004 01:19:50 +0000 (17:19 -0800)]
[PATCH] make perm and major:minor test errors be reported properly.

17 years ago[PATCH] add dev node test to [Sat, 13 Mar 2004 01:13:59 +0000 (17:13 -0800)]
[PATCH] add dev node test to

> Nice, that's a good start.  Now we need to check the major:minor values
> too somehow...

I better do it immediately, before you put it in the empty TODO :)

Patch is a bit big, cause spaces are changed to tabs to get
space for the longer names.

17 years ago[PATCH] remove extra ; in namedev_parse.c [Sat, 13 Mar 2004 00:43:31 +0000 (16:43 -0800)]
[PATCH] remove extra ; in namedev_parse.c

Thanks to Olaf Hering <> for pointing this out.

17 years ago[PATCH] udev* segfaults with new klibc [Fri, 12 Mar 2004 09:06:55 +0000 (01:06 -0800)]
[PATCH] udev* segfaults with new klibc

current klibc uses regparm on i386. This leads to nice segfaults in all
udev apps. Using the content of the just included MCONFIG file fixes it.

17 years ago[PATCH] fix a type in docs/libsysfs.txt [Fri, 12 Mar 2004 08:58:38 +0000 (00:58 -0800)]
[PATCH] fix a type in docs/libsysfs.txt

Mary Edie Merideth noticed this typo. I think this is what it was supposed
to be. Judging by the pattern.

17 years ago[PATCH] add permission tests [Fri, 12 Mar 2004 08:58:33 +0000 (00:58 -0800)]
[PATCH] add permission tests

> Any chance on being able to add a test for this kind of stuff to the
> script?

Sure, not brilliant but seems to work :)
Only numeric id's are supported so far.

17 years ago[PATCH] more Libsysfs updates [Fri, 12 Mar 2004 08:57:36 +0000 (00:57 -0800)]
[PATCH] more Libsysfs updates

On Thu, Mar 11, 2004 at 02:36:23PM +0100, Kay Sievers wrote:
> On Thu, 2004-03-11 at 15:02, Ananth N Mavinakayanahalli wrote:
> > On Thu, Mar 11, 2004 at 02:04:36PM +0100, Kay Sievers wrote:
> > > On Thu, Mar 11, 2004 at 11:53:50AM +0500, Ananth N Mavinakayanahalli wrote:
> > >
> > > > +#define safestrcpy(to, from) strncpy(to, from, sizeof(to)-1)
> > > > +#define safestrcat(to, from) strncat(to, from, sizeof(to) - strlen(to)-1)
> > >
> > > These strings are not terminated with '\0' if from is longer than
> > > the sizeof to.
> >
> > Did not do it on purpose as the "to" elements are either calloc'd or memset to
> > '0' explicitly in the library. Thats the reason I mentioned "scaled down" :)
> Ahh, sounds good.
> > > > +#define safestrncpy(to, from, maxsize) \
> > > > +do { \
> > > > + to[maxsize-1] = '\0'; \
> > > > + strncpy(to, from, maxsize-1); \
> > > > +} while (0)
> > > > +
> > > > +#define safestrncat(to, from, maxsize) \
> > > > +do { \
> > > > + to[maxsize-1] = '\0'; \
> > > > + strncat(to, from, maxsize - strlen(to)-1); \
> > > > +} while (0)
> > >
> > > We all expect a similar behavior like strncat/strncpy according to the
> > > names, but these macros are limiting by the target size and do not limit
> > > the count of chars copied.
> > > This is confusing I think and suggest using a different name like
> > > 'safestrcopymax()' or something.
> >
> > Good point.. will make the change
> Nice. I've had these *n* names too and I forgot about the logic and only
> 10 days later I introduced a ugly bug cause I can't limit the count of
> copied chars :)

Inlined is the patch for this... applies on the earlier _BIG_ patch.

17 years ago[PATCH] Libsysfs updates [Fri, 12 Mar 2004 08:57:30 +0000 (00:57 -0800)]
[PATCH] Libsysfs updates

Please find attached a _BIG_ patch to update udev's libsysfs. Patch applies
on udev-021 and contains:

1. Updates to get udev's libsysfs to the latest (to be released) level.
2. Changes for C++ compatibility (use "char" and not "unsigned char"
unless absolutely necessary).
3. More importantly, take care of buffer overflows. Libsysfs now uses a
        scaled down version of Kay's "safe" macros.

Tested using a usb-storage device.

I will send you a doc update shortly.

17 years ago[PATCH] "symlink only" test [Thu, 11 Mar 2004 09:39:53 +0000 (01:39 -0800)]
[PATCH] "symlink only" test

Here is a test for the "symlink only" rule.

Any reason to do the apply_format() inside the loop?
I've changed it.

17 years ago[PATCH] callout part selector tweak [Thu, 11 Mar 2004 09:37:18 +0000 (01:37 -0800)]
[PATCH] callout part selector tweak

Martin Schwenke <> asked for this feature and posted a

 The following patch almost let's me have the following configuration:

  PROGRAM="/sbin/aliaser %b %k %n %M %m", RESULT="?*", NAME="%c{1}", SYMLINK="%c{2+}"

 allowing me to specify an arbitrary number of symlinks by saying
 "giveme the second and later words"."

Here is the actual version with tests and a few words in the man page.

17 years ago[PATCH] cleanup callout fork [Thu, 11 Mar 2004 09:36:12 +0000 (01:36 -0800)]
[PATCH] cleanup callout fork

Here I change the callout fork logic.
The current cersion is unable to read a pipe which is not flushed at once,
Now we read until it's closed.

The maximum argument count is calculated by the strlen now. We have 100
chars for our result buffer so we can't have more than 50 parameters.
So it's much more clear what will happen now and not some magic boundary
where we use shell behind it.

Parameter can be combined to one by using apostrophes.

this on works now:
  BUS="scsi", PROGRAM="/bin/sh -c 'echo foo3 foo4 foo5 foo6 foo7 foo8 foo9 | sed  s/foo9/bar9/'", KERNEL="sda3", NAME="%c{7}"

Two new test are also added.

17 years ago[PATCH] Added multipath-tools 0.1.1 release [Thu, 11 Mar 2004 06:40:39 +0000 (22:40 -0800)]
[PATCH] Added multipath-tools 0.1.1 release

17 years ago[PATCH] deleted current extras/multipath directory [Thu, 11 Mar 2004 06:38:58 +0000 (22:38 -0800)]
[PATCH] deleted current extras/multipath directory

17 years ago[PATCH] allow to specify node permissions in the rule [Thu, 11 Mar 2004 06:35:37 +0000 (22:35 -0800)]
[PATCH] allow to specify node permissions in the rule

This allows to set the permissions along with the rule.

This is not a general replacement for the permissions config, but it
may be easier sometimes for the user to specify the permissions along
with the rule, cause the permissions config file wants the final node
name to match, which seems sometimes a bit difficult to guess, if
format % chars are used in the NAME field.

Any value not given in the rule is still be read from the permissions
file or set to the default. This one will also work:

  BUS="usb", KERNEL="video*", NAME="my-%k", OWNER="$local"

A few words to man page are also added and add_perm_dev() is moved into
namedev_parse.c where it belongs to.

17 years ago[PATCH] Added line to udev.permissions.redhat [Wed, 10 Mar 2004 03:55:17 +0000 (19:55 -0800)]
[PATCH] Added line to udev.permissions.redhat

Added this line to have xterms provide a prompt.

17 years ago[PATCH] man page beauty [Wed, 10 Mar 2004 03:50:30 +0000 (19:50 -0800)]
[PATCH] man page beauty

Thanks to Christian Gierke, he sent me a beauty patch for our man pages.
Some typos are fixed and a few word are clarified.

17 years ago[PATCH] put symlink only rules to the man page [Wed, 10 Mar 2004 03:50:22 +0000 (19:50 -0800)]
[PATCH] put symlink only rules to the man page

Here we mention the "symlink only - add it to another rule" feature
to the man page. Andrey, does this describe what you have implemented :)

17 years ago[PATCH] rename strn*() macros to strmax [Wed, 10 Mar 2004 03:50:15 +0000 (19:50 -0800)]
[PATCH] rename strn*() macros to strmax

Hey, I wrote the strn*() macros just 10 days ago and yesterday this trap
caught me with the %c{x} bug.
The names are misleading cause we all expect that the from field is limited by
the size argument, but we actually limit the overall size of the destination
string to prevent a overflow.

Here we rename all strn*() macros to str*max(). That should be
more self-explanatory.

17 years ago[PATCH] udevstart fixes
md@Linux.IT [Fri, 5 Mar 2004 03:10:02 +0000 (19:10 -0800)]
[PATCH] udevstart fixes

udevstart_no_retval: currently udevstart will always return rc=22
because of the error handling code. I completely removed it because it
is not used, and returning a generic error to the init script is not
much useful anyway.

17 years ago[PATCH] Include more examples in the docs area for gentoo and redhat [Fri, 5 Mar 2004 02:59:18 +0000 (18:59 -0800)]
[PATCH] Include more examples in the docs area for gentoo and redhat

Here's a patch that puts the udev.rules and udev.permissions files in the
docs dir. This should help people out who install with just the rpm.

17 years ago[PATCH] conditional remove of trailing sysfs whitespace [Fri, 5 Mar 2004 02:59:13 +0000 (18:59 -0800)]
[PATCH] conditional remove of trailing sysfs whitespace

Hey, it may never happen, that one wants to distinguish attributes by
trailing spaces, but we should not lose the control over it, just for
being lazy :)

Here we remove the trailing spaces of the sysfs attribute only if the
configured value to match doesn't have any trailing spaces by itself.
So if you put a attribute in a rule with spaces at the end, the sysfs
attribute _must_ match exactly.

Is that cool for everyone?

As usual, 2 tests are added for it with a artificial sysfs file and
a few words to the man page.

17 years ago[PATCH] clarify udevinfo text [Fri, 5 Mar 2004 02:58:02 +0000 (18:58 -0800)]
[PATCH] clarify udevinfo text

Make udevinfo attribute printing note so clear,
that's nearly impossible to misunderstand it in the future.

17 years ago[PATCH] better fix for NAME="foo-%c{N}" gets a truncated name [Fri, 5 Mar 2004 02:55:34 +0000 (18:55 -0800)]
[PATCH] better fix for NAME="foo-%c{N}" gets a truncated name

On Wed, Mar 03, 2004 at 04:56:34PM -0800, Greg KH wrote:
> On Wed, Mar 03, 2004 at 03:57:04PM -0800, Patrick Mansfield wrote:
> >
> > Here is a patch for some new tests.
> Applied, thanks.

Here is a small improvement, which looks much better.

Hey Pat, thanks a lot for finding the recent bug, hope this one will
not break it again :)

17 years ago[PATCH] Small fix to remove extra "will" in man page [Thu, 4 Mar 2004 09:17:08 +0000 (01:17 -0800)]
[PATCH] Small fix to remove extra "will" in man page

  remove extraneous word.

17 years ago[PATCH] overall trivial trivial cleanup [Thu, 4 Mar 2004 08:57:29 +0000 (00:57 -0800)]
[PATCH] overall trivial trivial cleanup

Here I try to make the style a bit more consistant in the different
files, so that new patches just copy the 'right' one :)

Some "magic" numbers are replaced and udevtest.c is catched up with udev.

17 years ago[PATCH] add tests for NAME="foo-%c{N}" [Thu, 4 Mar 2004 08:55:22 +0000 (00:55 -0800)]
[PATCH] add tests for NAME="foo-%c{N}"

Here is a patch for some new tests.

17 years ago[PATCH] fix NAME="foo-%c{N}" gets a truncated name [Thu, 4 Mar 2004 08:54:13 +0000 (00:54 -0800)]
[PATCH] fix NAME="foo-%c{N}" gets a truncated name

On Wed, Mar 03, 2004 at 02:43:34PM -0800, Patrick Mansfield wrote:
> Here is a fix and a new test for the problem Atul hit, where if we have a
> NAME based on a result of the form:
>  NAME="foo-%c{7}"
> udev truncates the name. Without any prefix (the foo- in this example),
> the rule was working OK.

Here is a fix for the fix :)

Sorry, I broke it yesterday.

17 years ago[PATCH] 021_bk mark [Thu, 4 Mar 2004 08:52:05 +0000 (00:52 -0800)]
[PATCH] 021_bk mark

17 years ago[PATCH] fix the build for older versions of gcc [Thu, 4 Mar 2004 08:51:28 +0000 (00:51 -0800)]
[PATCH] fix the build for older versions of gcc

17 years ago[PATCH] cleanup mult field string handling [Thu, 4 Mar 2004 02:16:35 +0000 (18:16 -0800)]
[PATCH] cleanup mult field string handling

Here I try to cleanup our various multifield iteration over the strings.
Inspired by our nice list.h we now have a macro to iterate over the string
and process the parts of it:
It makes the code more readable and we don't change the string while we
process it like the former strsep() does.


  foreach_strpart(dev->symlink, " ", pos, len) {
   if (strncmp(&dev->symlink[pos], find_name, len) != 0)


For the callout part selector %c{2} we separate now not only by space but
also newline and return characters, cause some programs may give multiline
values back. A possible RESULT match must contain wildcards for these

Also a bug in the recent udevinfo symlink query feature is fixed.

17 years ago[PATCH] 021 release 021 [Wed, 3 Mar 2004 08:01:22 +0000 (00:01 -0800)]
[PATCH] 021 release

17 years ago[PATCH] fix udev.spec to find udevinfo now that it has moved to /usr/bin [Wed, 3 Mar 2004 07:51:50 +0000 (23:51 -0800)]
[PATCH] fix udev.spec to find udevinfo now that it has moved to /usr/bin

17 years ago[PATCH] install udevinfo in /usr/bin [Wed, 3 Mar 2004 07:49:08 +0000 (23:49 -0800)]
[PATCH] install udevinfo in /usr/bin

Here we rename the former tiny $(HELPER) to $(INFO)
cause it's no longer only a helper :)
And install it in /usr/bin instead of /sbin cause any user
may want to call it and we don't need it on startup.

17 years ago[PATCH] blacklist pcmcia_socket [Wed, 3 Mar 2004 07:49:04 +0000 (23:49 -0800)]
[PATCH] blacklist pcmcia_socket

Is this something for the blacklist?

|-- pcmcia_socket0
|   |-- device -> ../../../devices/pci0000:00/0000:00:1e.0/0000:02:00.0
|   `-- driver -> ../../../bus/pci/drivers/yenta_cardbus
`-- pcmcia_socket1
    |-- device -> ../../../devices/pci0000:00/0000:00:1e.0/0000:02:00.1
        `-- driver -> ../../../bus/pci/drivers/yenta_cardbus

17 years ago[PATCH] Fix another problem with Makefile installing initscript [Wed, 3 Mar 2004 07:47:22 +0000 (23:47 -0800)]
[PATCH] Fix another problem with Makefile installing initscript

17 years ago[PATCH] fix the Makefile to install the init script into the proper directory [Wed, 3 Mar 2004 07:33:52 +0000 (23:33 -0800)]
[PATCH] fix the Makefile to install the init script into the proper directory


17 years ago[PATCH] make spec file turn off selinux support by default. [Wed, 3 Mar 2004 06:54:00 +0000 (22:54 -0800)]
[PATCH] make spec file turn off selinux support by default.

17 years ago[PATCH] 020 release 020 [Wed, 3 Mar 2004 06:51:13 +0000 (22:51 -0800)]
[PATCH] 020 release

17 years ago[PATCH] update the TODO list as we already have a devfs config file. [Wed, 3 Mar 2004 06:46:24 +0000 (22:46 -0800)]
[PATCH] update the TODO list as we already have a devfs config file.

17 years ago[PATCH] make start_udev use udevstart binary [Wed, 3 Mar 2004 06:45:22 +0000 (22:45 -0800)]
[PATCH] make start_udev use udevstart binary

17 years ago[PATCH] man page udevstart [Wed, 3 Mar 2004 06:43:00 +0000 (22:43 -0800)]
[PATCH] man page udevstart

17 years ago[PATCH] install udevstart [Wed, 3 Mar 2004 06:34:40 +0000 (22:34 -0800)]
[PATCH] install udevstart

17 years ago[PATCH] cleanup udevstart [Wed, 3 Mar 2004 06:15:20 +0000 (22:15 -0800)]
[PATCH] cleanup udevstart

I just wanted to terminate the snprintf() strings, cause I can see a
overflow with closed eyes after all the audit :)

But then I changed a bit more to bring it in line with the style of the
other files. I replaced the exec_udev() function with the one from
udevd, cause we don't need to read the stdout from udev.

Please have a look if it still works for you too and not
only for usernames with 3 characters :)

17 years ago[PATCH] automatically install correct initscript [Wed, 3 Mar 2004 04:27:53 +0000 (20:27 -0800)]
[PATCH] automatically install correct initscript

On Mon, 2004-03-01 at 20:08, Robert Love wrote:

> Ack, I did not even see that!  Thanks.
> Let's rip that out, and always use the new built-in logic to determine
> what initscript to install.

Hm, looks like we do not need the %{lsb} and USE_LSB logic at all,

Here is the patch, updated, removing both completely.

17 years ago[PATCH] bugfix for local user [Wed, 3 Mar 2004 04:27:12 +0000 (20:27 -0800)]
[PATCH] bugfix for local user

While moving the local user logic in it's own function I missed to
change the "secure" string macro. We copy only the first 3 bytes
of the username. Guess why I didn't notice it :)

17 years ago[PATCH] Remove Debian permission files as the Debian maintainer doesn't seem to want... [Wed, 3 Mar 2004 04:24:26 +0000 (20:24 -0800)]
[PATCH] Remove Debian permission files as the Debian maintainer doesn't seem to want to share :(

17 years ago[PATCH] update the Gentoo rules files. [Wed, 3 Mar 2004 04:23:36 +0000 (20:23 -0800)]
[PATCH] update the Gentoo rules files.

17 years ago[PATCH] Add Red Hat rules and permissions files [Wed, 3 Mar 2004 04:21:03 +0000 (20:21 -0800)]
[PATCH] Add Red Hat rules and permissions files

Taken from udev-018-2.src.rpm from Fedora Devel.

17 years ago[PATCH] add udevstart program based on a old patch from Harald Hoyer <harald@redhat... [Tue, 2 Mar 2004 09:30:38 +0000 (01:30 -0800)]
[PATCH] add udevstart program based on a old patch from Harald Hoyer <>

This can be used instead of the start_udev script for systems
that do not have a shell, or some other problem...

17 years ago[PATCH] - unlink bugfix [Tue, 2 Mar 2004 08:21:27 +0000 (00:21 -0800)]
[PATCH] - unlink bugfix

Fix for recent unlink patch.

17 years ago[PATCH] TODO update [Tue, 2 Mar 2004 08:09:27 +0000 (00:09 -0800)]
[PATCH] TODO update

I promise, that I will not take every item you put in the TODO list :)

17 years ago[PATCH] clarify udevinfo device walk [Tue, 2 Mar 2004 08:08:28 +0000 (00:08 -0800)]
[PATCH] clarify udevinfo device walk

It seems that the long attribute list can confuse the user.
Se here we print a few words on top the attributes.

17 years ago[PATCH] udevinfo symlink reverse query [Tue, 2 Mar 2004 07:47:59 +0000 (23:47 -0800)]
[PATCH] udevinfo symlink reverse query

Thanks to Olaf Hering <> for this patch. It's possible now to
feed the -n option of udevinfo with a symlink.

I've also added a 'all' attribute, but no more text, it's all in the
included man page :)

17 years ago[PATCH] unlink the file before we try to create it. [Tue, 2 Mar 2004 07:31:06 +0000 (23:31 -0800)]
[PATCH] unlink the file before we try to create it.

Based on the patch in the Gentoo repo.

17 years ago[PATCH] fix stroul endptr use [Tue, 2 Mar 2004 07:17:59 +0000 (23:17 -0800)]
[PATCH] fix stroul endptr use

The endptr is never NULL, so here we hopefully do the right thing.

17 years ago[PATCH] update documetation for $local [Tue, 2 Mar 2004 07:16:39 +0000 (23:16 -0800)]
[PATCH] update documetation for $local

On Mon, 2004-03-01 at 17:44, Greg KH wrote:
> Hm, that should be Robert's job actually, he should do something for
> real...  :)

Hey, I wrote the nifty local user detection snippet - but, I owe Kay, so
here is an updated man page.

17 years ago[PATCH] multipath update [Tue, 2 Mar 2004 07:08:47 +0000 (23:08 -0800)]
[PATCH] multipath update

17 years ago[PATCH] add $local user spport for permissions [Tue, 2 Mar 2004 06:42:30 +0000 (22:42 -0800)]
[PATCH] add $local user spport for permissions

17 years ago[PATCH] udev - man page update [Tue, 2 Mar 2004 06:38:44 +0000 (22:38 -0800)]
[PATCH] udev - man page update

Here is a small change to the udev man page:

  - clarify the use of the NAME{all_partitions} syntax
    and add a example to udev.rules.example
  - mention the empty NAME field to ignore the device
  - prepare a SYMLINK field for the addition of Andrey's
    "multiple symlinks" documentation :)

17 years ago[PATCH] no error on enoent
md@Linux.IT [Tue, 2 Mar 2004 06:34:12 +0000 (22:34 -0800)]
[PATCH] no error on enoent

no_error_on_enoent: do not exit with an error and delete all files
when a device or directory does not exist.

17 years ago[PATCH] escape dashes in man pages
md@Linux.IT [Tue, 2 Mar 2004 06:34:10 +0000 (22:34 -0800)]
[PATCH] escape dashes in man pages

man-dashes.diff: escape dashes in man pages, helps with UTF-8 locales
(by Philipp Matthias Hahn).

17 years ago[PATCH] remove usage of expr in
md@Linux.IT [Tue, 2 Mar 2004 06:34:08 +0000 (22:34 -0800)]
[PATCH] remove usage of expr in

fix_expr: remove usage of expr in, because it may be in
/usr/bin and not available at early boot time.

17 years ago[PATCH] udev - fix debug info for multiple rule file config [Tue, 2 Mar 2004 06:28:51 +0000 (22:28 -0800)]
[PATCH] udev - fix debug info for multiple rule file config

On Sat, Feb 28, 2004 at 09:56:32PM +0100, Kay Sievers wrote:
> Andrey pointed out that we don't print the right filename in the debug
> output. Here is a fix for that. It applies on top of Andrey's symlink
> patch, cause we are touching the same part of the code.

The copy/paste devil catched me :)
Here is a fixed one.

17 years ago[PATCH] udev - activate formt length attribute [Sat, 28 Feb 2004 14:53:25 +0000 (06:53 -0800)]
[PATCH] udev - activate formt length attribute

We carried the the old callout part selector syntax for two releases
now after it was replaced by the new %c{1} syntax. So here we remove
the old syntax and use the code to possibly specify the maximum count
of chars to insert into the string. It will work with all of our format
I don't know if somebody will use it, but the code is already there :)

's%3s{vendor}' returns "IBM" now, instead of "IBM-ESXS".

Also added is a test for it and a few words in the man page.

17 years ago[PATCH] 019_bk mark [Sat, 28 Feb 2004 09:59:44 +0000 (01:59 -0800)]
[PATCH] 019_bk mark

17 years ago[PATCH] Add symlink only rules support [Tue, 2 Mar 2004 06:23:39 +0000 (22:23 -0800)]
[PATCH] Add symlink only rules support

17 years ago[PATCH] udev - kill udevd on install [Tue, 2 Mar 2004 06:23:35 +0000 (22:23 -0800)]
[PATCH] udev - kill udevd on install

We want to kill udevd after installing a new version, cause the event
contains a magic with the version number of udev.

17 years ago[PATCH] udev - safer sprintf() use [Sat, 28 Feb 2004 09:59:02 +0000 (01:59 -0800)]
[PATCH] udev - safer sprintf() use

Here is for now my last patch to the string handling for a rather
theorethical case, where the node is very very very long. :)

We have accordant to strfieldcat(to, from) now a strintcat(to, i) macro,
which appends the ascii representation of a integer to a string in a
safe way.

17 years ago[PATCH] 018 release 019 [Sat, 28 Feb 2004 09:11:20 +0000 (01:11 -0800)]
[PATCH] 018 release

17 years ago[PATCH] update udev scsi_id to scsi_id 0.4 [Sat, 28 Feb 2004 09:00:36 +0000 (01:00 -0800)]
[PATCH] update udev scsi_id to scsi_id 0.4

This patch syncs the scsi_id in the udev tree to version 0.4.

17 years ago[PATCH] add new TODO item about local user permissions. [Sat, 28 Feb 2004 08:55:25 +0000 (00:55 -0800)]
[PATCH] add new TODO item about local user permissions.

17 years ago[PATCH] TODO update [Sat, 28 Feb 2004 08:54:52 +0000 (00:54 -0800)]
[PATCH] TODO update

On Thu, Feb 12, 2004 at 05:26:37PM -0800, Greg KH wrote:
> On Fri, Feb 13, 2004 at 12:45:38AM +0100, Kay Sievers wrote:
> >
> > Here a few questions about my favorite file in the tree :)
> > - better permission handling
> >
> > What is missing here?
> I don't know for sure.  Just a vague feeling that the way we currently
> handle permissions is pretty lousy.  Anyone else feel this way too?

Seems that nobody cares and perhaps the recent klibc permission changes
and the multiple file config directory are enough to kill these lines? :)

17 years ago[PATCH] udev - correct relative symlink [Sat, 28 Feb 2004 08:54:49 +0000 (00:54 -0800)]
[PATCH] udev - correct relative symlink

Here we remove the useless leading "./" of the linktargets.
Thanks to Olaf Hering <>, who asked why we do this :)

We have now:

  |-- camera0 -> video0
  |-- kamera0 -> video0
  `-- video0

17 years ago[PATCH] Add initial SELinux support for udev [Sat, 28 Feb 2004 08:52:20 +0000 (00:52 -0800)]
[PATCH] Add initial SELinux support for udev

Based on a patch from Daniel J Walsh <>

17 years ago[PATCH] fix build for very old versions of make. [Sat, 28 Feb 2004 08:30:24 +0000 (00:30 -0800)]
[PATCH] fix build for very old versions of make.

Should get rid of some more error reports of libsysfs header issues.

17 years ago[PATCH] remove limit of the number of args passed to PROGRAM [Fri, 27 Feb 2004 05:29:49 +0000 (21:29 -0800)]
[PATCH] remove limit of the number of args passed to PROGRAM

If we go over our internal limit of 7, then we call out to /bin/sh
otherwise we handle it ourself without relying on a shell.

17 years ago[PATCH] udev - safer string handling - part four [Fri, 27 Feb 2004 03:40:40 +0000 (19:40 -0800)]
[PATCH] udev - safer string handling - part four

Mainly a cleanup of the earlier patches with a few missing pieces
and some cosmetical changes.

I've moved the udev_init_config() to very early init, otherwise we
don't get any logging for the processing of the input. What would I
do without gdb :)

Greg, it's the 7th patch in your box to apply. I will stop now and
wait for you :)

17 years ago[PATCH] udev - safer string handling - part three [Fri, 27 Feb 2004 03:40:32 +0000 (19:40 -0800)]
[PATCH] udev - safer string handling - part three

Here we truncate our input strings from the environment to our
defined limit. It's a bit theroretical but better check for it.

It cleans up some magic length definitions and removes the code
duplication in udev, udevtest and udevsend.

udevd needs to be killed after installation, cause the message size
is changed with this patch.
Should we do this with the 'make install', like we do with the '.udevdb'?

17 years ago[PATCH] udev - safer string handling - part two [Fri, 27 Feb 2004 03:40:22 +0000 (19:40 -0800)]
[PATCH] udev - safer string handling - part two

As promised, here is the next round. We provide in addition to the
already used macros:

  strfieldcpy(to, from)
  strfieldcat(to, from)

the corresponding friends, if the size of the target is not known and
must be provided by the caller:

  strnfieldcpy(to, from, maxsize)
  strnfieldcat(to, from, maxsize)

and switch nearly all possibly unsafe users of strcat(), strncat(),
strcpy() and strncpy() to these safer macros.

The last known remaining issue seems the use of sprintf() and
snprintf(). I will take on it later today or tomorrow.

17 years ago[PATCH] udev - man page update [Fri, 27 Feb 2004 03:39:33 +0000 (19:39 -0800)]
[PATCH] udev - man page update

Hey it's not longer the "goal" to provide a dynamic dev directory,
we have just arrived. So I  change it to more self-confident words :)

I've also added the completly missing environment variables to the
man pages.

To stop the misuse of the PROGRAM= call paramenters, we better mention
its limitations.

17 years ago[PATCH] udev - safer string handling all over the place [Fri, 27 Feb 2004 03:37:47 +0000 (19:37 -0800)]
[PATCH] udev - safer string handling all over the place

On Tue, Feb 24, 2004 at 11:50:52PM +0100, Kay Sievers wrote:
> Here is the first step towards a safer string handling.
> More will follow, but for now only the easy ones :)
> Thanks to all who pointed this out. strncat() isn't a nice function. We
> all should remember that the destination string is not terminated if the
> given lenght is shorter than the strlen of the source string.
> And shame on the various implementers of strfieldcat() I found in the
> unapplied patches on this list, it's not really better than strncpy()
> and hides the real problem.

Hmm, bk didn't checked in one file, maybe I edited it again as root.
Nevermind, here is the more complete version.

17 years ago[PATCH] manpage update [Fri, 27 Feb 2004 03:35:38 +0000 (19:35 -0800)]
[PATCH] manpage update

Nice, here is the corresponding man update which also removes the
mention of the limitation of getgrname() and friends with klibc.

17 years ago[PATCH] do not remove real .udev.tdb during RPM build [Tue, 24 Feb 2004 03:31:19 +0000 (19:31 -0800)]
[PATCH] do not remove real .udev.tdb during RPM build

17 years ago[PATCH] udev - allow all files in a directory as the config [Tue, 24 Feb 2004 03:31:14 +0000 (19:31 -0800)]
[PATCH] udev - allow all files in a directory as the config

I was on the train for 5 hours today and the TODO is almost empty :)
So, at least four people wanted this feature, then here is a actual
working patch.

We may specify now in udev.conf:


and udev will scan the whole directory for files ending with *.rules,
sort it in lexical order and create our rule list from all of the files.
A plain given file will still work and the same applies to the *.permissions.

I sort the files in our usual linked list, cause klibc has no scandir().

17 years ago[PATCH] udev - simple klibc textual uid/gid handling [Tue, 24 Feb 2004 03:29:32 +0000 (19:29 -0800)]
[PATCH] udev - simple klibc textual uid/gid handling

Here we get a very dumb getpwnam() and getgrnam() for klibc to
stop the confusion of not handling textual id's if klibc is used.

If used with  initrd we just need to copy the /etc/passwd and /etc/group
file and all should work well.

17 years ago[PATCH] force udev to include the internal version of libsysfs and never the external... [Tue, 24 Feb 2004 03:07:25 +0000 (19:07 -0800)]
[PATCH] force udev to include the internal version of libsysfs and never the external one.

Should fix some more build bugs...

17 years ago[PATCH] fix up libsysfs header file usage to fix bug reports from users that have... [Tue, 24 Feb 2004 03:06:49 +0000 (19:06 -0800)]
[PATCH] fix up libsysfs header file usage to fix bug reports from users that have sysfsutils installed already.