chiark / gitweb /
sd-bus: pass attach flags to BUS_CREATOR_INFO
[elogind.git] / src / libsystemd / sd-bus / sd-bus.c
index 251720a6ba7f3efc87cca102fa8c26a633ece970..e6b47f7fd81a5f47f578d8d1c0fd5ccc194f486c 100644 (file)
@@ -324,21 +324,11 @@ _public_ int sd_bus_set_trusted(sd_bus *bus, int b) {
 }
 
 _public_ int sd_bus_set_description(sd_bus *bus, const char *description) {
-        char *n;
-
         assert_return(bus, -EINVAL);
-        assert_return(description, -EINVAL);
         assert_return(bus->state == BUS_UNSET, -EPERM);
         assert_return(!bus_pid_changed(bus), -ECHILD);
 
-        n = strdup(description);
-        if (!n)
-                return -ENOMEM;
-
-        free(bus->description);
-        bus->description = n;
-
-        return 0;
+        return free_and_strdup(&bus->description, description);
 }
 
 static int hello_callback(sd_bus *bus, sd_bus_message *reply, void *userdata, sd_bus_error *error) {
@@ -1422,18 +1412,18 @@ _public_ int sd_bus_can_send(sd_bus *bus, char type) {
         return bus_type_is_valid(type);
 }
 
-_public_ int sd_bus_get_server_id(sd_bus *bus, sd_id128_t *server_id) {
+_public_ int sd_bus_get_owner_id(sd_bus *bus, sd_id128_t *id) {
         int r;
 
         assert_return(bus, -EINVAL);
-        assert_return(server_id, -EINVAL);
+        assert_return(id, -EINVAL);
         assert_return(!bus_pid_changed(bus), -ECHILD);
 
         r = bus_ensure_running(bus);
         if (r < 0)
                 return r;
 
-        *server_id = bus->server_id;
+        *id = bus->server_id;
         return 0;
 }
 
@@ -3325,6 +3315,7 @@ _public_ int sd_bus_try_close(sd_bus *bus) {
 _public_ int sd_bus_get_description(sd_bus *bus, const char **description) {
         assert_return(bus, -EINVAL);
         assert_return(description, -EINVAL);
+        assert_return(bus->description, -ENXIO);
         assert_return(!bus_pid_changed(bus), -ECHILD);
 
         *description = bus->description;