chiark / gitweb /
libudev: ctrl - log accept4() errors
[elogind.git] / libudev / libudev-monitor.c
index 5d9e155722dd4b06203132dfda400c5cf02ab23e..5917b9e497ce03347138e688fd97dd0f78f0a2ec 100644 (file)
@@ -145,7 +145,7 @@ struct udev_monitor *udev_monitor_new_from_socket(struct udev *udev, const char
                util_strscpy(&udev_monitor->sun.sun_path[1], sizeof(udev_monitor->sun.sun_path)-1, socket_path);
                udev_monitor->addrlen = offsetof(struct sockaddr_un, sun_path) + strlen(socket_path)+1;
        }
-       udev_monitor->sock = socket(AF_LOCAL, SOCK_DGRAM|SOCK_CLOEXEC, 0);
+       udev_monitor->sock = socket(AF_LOCAL, SOCK_DGRAM|SOCK_NONBLOCK|SOCK_CLOEXEC, 0);
        if (udev_monitor->sock == -1) {
                err(udev, "error getting socket: %m\n");
                free(udev_monitor);
@@ -830,7 +830,7 @@ int udev_monitor_filter_add_match_subsystem_devtype(struct udev_monitor *udev_mo
        if (subsystem == NULL)
                return -EINVAL;
        if (udev_list_entry_add(udev_monitor->udev,
-                               &udev_monitor->filter_subsystem_list, subsystem, devtype, 0, 0) == NULL)
+                               &udev_monitor->filter_subsystem_list, subsystem, devtype, 0) == NULL)
                return -ENOMEM;
        return 0;
 }
@@ -854,7 +854,7 @@ int udev_monitor_filter_add_match_tag(struct udev_monitor *udev_monitor, const c
        if (tag == NULL)
                return -EINVAL;
        if (udev_list_entry_add(udev_monitor->udev,
-                               &udev_monitor->filter_tag_list, tag, NULL, 0, 0) == NULL)
+                               &udev_monitor->filter_tag_list, tag, NULL, 0) == NULL)
                return -ENOMEM;
        return 0;
 }