chiark / gitweb /
udevd: ignore all messages without DEVPATH
authorKay Sievers <kay.sievers@suse.de>
Tue, 15 Nov 2005 23:13:28 +0000 (00:13 +0100)
committerKay Sievers <kay.sievers@suse.de>
Tue, 15 Nov 2005 23:13:28 +0000 (00:13 +0100)
Signed-off-by: Kay Sievers <kay.sievers@suse.de>
udevd.c

diff --git a/udevd.c b/udevd.c
index 58371ba..3fd3bfe 100644 (file)
--- a/udevd.c
+++ b/udevd.c
@@ -313,16 +313,11 @@ static int running_with_devpath(struct uevent_msg *msg, int limit)
        struct uevent_msg *loop_msg;
        int childs_count = 0;
 
-       if (msg->devpath == NULL)
-               return 0;
-
        list_for_each_entry(loop_msg, &running_list, node) {
                if (limit && childs_count++ > limit) {
                        dbg("%llu, maximum number (%i) of child reached", msg->seqnum, childs_count);
                        return 1;
                }
-               if (loop_msg->devpath == NULL)
-                       continue;
 
                /* return running parent/child device event */
                if (compare_devpath(loop_msg->devpath, msg->devpath) != 0) {
@@ -431,6 +426,12 @@ static struct uevent_msg *get_msg_from_envbuf(const char *buf, int buf_size)
        msg->envp[i++] = "UDEVD_EVENT=1";
        msg->envp[i] = NULL;
 
+       if (!msg->devpath) {
+               info("DEVPATH missing, ingnore message");
+               free(msg);
+               return NULL;
+       }
+
        return msg;
 }