udevd: only bind ctrl and netlink sockets when we open them
authorTom Gundersen <teg@jklm.no>
Tue, 2 Jun 2015 17:18:53 +0000 (19:18 +0200)
committerTom Gundersen <teg@jklm.no>
Tue, 2 Jun 2015 23:41:35 +0000 (01:41 +0200)
If they are passed from PID1 this is not necessary.

src/udev/udevd.c

index 1540f5c..ccdec3d 100644 (file)
@@ -1500,15 +1500,15 @@ static int manager_new(Manager **ret) {
                 fd_uevent = udev_monitor_get_fd(manager->monitor);
 
                 (void) udev_monitor_set_receive_buffer_size(manager->monitor, 128 * 1024 * 1024);
-        }
 
-        r = udev_monitor_enable_receiving(manager->monitor);
-        if (r < 0)
-                return log_error_errno(EINVAL, "error binding netlink socket");
+                r = udev_monitor_enable_receiving(manager->monitor);
+                if (r < 0)
+                        return log_error_errno(EINVAL, "error binding netlink socket");
 
-        r = udev_ctrl_enable_receiving(manager->ctrl);
-        if (r < 0)
-                return log_error_errno(EINVAL, "error binding udev control socket");
+                r = udev_ctrl_enable_receiving(manager->ctrl);
+                if (r < 0)
+                        return log_error_errno(EINVAL, "error binding udev control socket");
+        }
 
         *ret = manager;
         manager = NULL;