chiark / gitweb /
rtnl: add link_get_flags
[elogind.git] / src / libsystemd-bus / bus-control.c
index d98a4ddf2594188a8deab276ff97f28f89a886e3..ff6a5a6cb613d264efb3f0aefaef1e1f9bc7ed0c 100644 (file)
@@ -110,10 +110,10 @@ static int bus_request_name_dbus1(sd_bus *bus, const char *name, unsigned flags)
                 return -EEXIST;
         else if (ret == BUS_NAME_IN_QUEUE)
                 return 0;
-        else
-                return -EIO;
+        else if (ret == BUS_NAME_PRIMARY_OWNER)
+                return 1;
 
-        return 1;
+        return -EIO;
 }
 
 _public_ int sd_bus_request_name(sd_bus *bus, const char *name, unsigned flags) {
@@ -208,7 +208,6 @@ static int kernel_get_list(sd_bus *bus, uint64_t flags, char ***x) {
 
         /* Caller will free half-constructed list on failure... */
 
-        cmd.size = sizeof(struct kdbus_cmd_name_list);
         cmd.flags = flags;
 
         r = ioctl(bus->input_fd, KDBUS_CMD_NAME_LIST, &cmd);