summaryrefslogtreecommitdiff
path: root/udev/lib
AgeCommit message (Collapse)Author
2009-04-08libudev: monitor - ignore messages from unusual sourcesScott James Remnant
For added protection, ignore any unicast message received on the netlink socket or any multicast message on the kernel group not received from the kernel. Signed-off-by: Scott James Remnant <scott@ubuntu.com>
2009-04-08libudev: monitor - unify socket message handlingKay Sievers
2009-04-08path_encode: fix max length calculationKay Sievers
Sebastian Krahmer wrote: > it should reserve 4 times not 3 times len :)
2009-04-06avoid leaking netlink socket fd to external programsAlan Jenkins
The netlink socket is now used by udev event processes. We should take care not to pass it to the programs they execute. This is the same way the inotify fd was handled. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2009-03-29"UDEV_MONITOR_KERNEL/UDEV" -> "kernel/udev"Kay Sievers
2009-03-29send monitor events back to netlink socketKay Sievers
Instead of of our own private monitor socket, we send the processed event back to our netlink socket, to the multicast group 2 -- so any number of users can listen to udev events, just like they can listen to kernel emitted events on group 1.
2009-03-26libudev: GPL -> LGPLKay Sievers
2009-03-18udevadm: test - handling trailing '/' in devpathKay Sievers
On Wed, Mar 18, 2009 at 16:00, Matthias Schwarzott <zzam@gentoo.org> wrote: found out how the error occurs: It is a difference between A. udevadm test /sys/class/mem/null/ and B. udevadm test /sys/class/mem/null Case A was the case that showed the error behaviour. It seems udevadm is confused by the trailing slash. This behaviour seems to be there since ages.
2009-03-12udevadm: settle - synchronise with the udev daemonScott James Remnant
There's still a slight race condition when using udevadm settle, if the udev daemon has a pending inotify event but hasn't yet generated the "change" uevent for it, the kernel and udev sequence numbers will match and settle will exit. Now udevadm settle will send a control message to udevd, which will respond by sending SIGUSR1 back to the waiting udevadm settle once it has completed the main loop iteration in which it received the control message. If there were no pending inotify events, this will simply wake up the udev daemon and allow settle to continue. If there are pending inotify events, they are handled first in the main loop so when settle is continued they will have been turned into uevents and the kernel sequence number will have been incremented. Since the inotify event is pending for udevd when the close() system call returns (it's queued as part of the kernel handling for that system call), and since the kernel sequence number is incremented by writing to the uevent file (as udevd does), this solves the race. When the settle continues, if there were pending inotify events that udevd had not read, they are now pending uevents which settle can wait for. Signed-off-by: Scott James Remnant <scott@ubuntu.com>
2009-03-11libudev: ctrl - return error after sending ctrl messageKay Sievers
2009-03-04libudev: queue - use lstat() to check existence of symlinkKay Sievers
2009-02-23Allow watch handle to be stored in the udevdb.Scott James Remnant
2009-01-14libudev: use 4096 bytes buffer for attribute readingKay Sievers
2009-01-06libudev: test - add udev_device_get_property_value()Kay Sievers
2009-01-06libudev: device - add udev_device_get_property_value()Kay Sievers
2009-01-03libudev: subsytem -> subsystemKay Sievers
2009-01-03libudev: device - remove udev_device_get_parent_with_subsystemMarcel Holtmann
2009-01-03libudev: device - lookup subsystem and devtype togetherMarcel Holtmann
2009-01-03libudev: device - read "uevent" only if info is not already loadedKay Sievers
2009-01-02libudev: device - add devtype supportMarcel Holtmann
2008-12-29libudev: enumerate - add lookup by propertyKay Sievers
2008-12-28if needed, store database entries also for devices which do not have a ↵Kay Sievers
device node
2008-12-16libudev: include <sys/types.h>Kay Sievers
2008-11-20libudev: accept NULL whitelist in util_replace_chars()Kay Sievers
2008-11-17limit $attr(<symlink>) magic to well-known links onlyKay Sievers
2008-11-14libudev: device - handle disk "device" link for partitions in deprecated ↵Kay Sievers
sysfs layout Thanks to Mikhail Kolesnik <mike@openbunker.org> for finding this.
2008-11-06udevadm: settle - exit if udevd exitsKay Sievers
2008-11-05unify string replacementKay Sievers
2008-11-05do not import the "uevent" file when we only read the db to get old symlinksKay Sievers
2008-11-05fix cleanup of possible left-over symlinksKay Sievers
2008-11-04fix list handling in enumerate and rules file sortingKay Sievers
2008-11-01move some info() to dbg()Kay Sievers
2008-10-26kerneldoc comment fixesAlan Jenkins
s/ressources/resources/ Also reduce commas per sentence and add a possessive apostrophe.
2008-10-26libudev: device - allocate envp array only onceKay Sievers
2008-10-26test: add RUN+="socket: ..." to a test to run monitor codeKay Sievers
2008-10-26libudev: device - fill envp array while composing monitor bufferKay Sievers
Thanks to Alan Jenkins, for the idea.
2008-10-24remove debug printfKay Sievers
2008-10-24libudev: monitor - cache result of monitor send bufferKay Sievers
2008-10-24libudev: monitor - replace far too expensive snprintf() with strlcpy()Kay Sievers
2008-10-23shrink struct udev_eventKay Sievers
2008-10-21replace strncpy() with strlcpy()Alan Jenkins
The problem was strncpy() doesn't stop after writing the terminating NUL; by definition it goes on to zero the entire buffer. I spy another use of strncpy in udev_device_add_property_from_string(), which is responsible for another ~1% user cpu time... Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-21libudev: device - 128 -> ENVP_SIZEKay Sievers
2008-10-21libudev: allocate udev_device->envp[] dynamicallyAlan Jenkins
Measured 2% _user_ cpu time reduction on EeePC coldplug. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-21libudev: util - optimize path_encode()Alan Jenkins
Since we already know the length, use memcpy() instead. Measured 2% _user_ cpu time reduction on EeePC coldplug. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-21use more appropriate alternatives to malloc()Alan Jenkins
Use calloc to request cleared memory instead. Kernel and libc conspire to make this more efficient. Also, replace one malloc() + strcpy() with strdup(). Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-20libudev: device - get_attr_value() -> get_sysattr_value()Kay Sievers
2008-10-18prefix udev-util.c functions with util_*Kay Sievers
2008-10-18udev_list_cleanup() -> udev_list_cleanup_entries()Kay Sievers
2008-10-17libudev: make list_node functions availableKay Sievers
2008-10-17libudev: ctrl - change magic to integerKay Sievers