chiark / gitweb /
update TODO
[elogind.git] / src / libsystemd / sd-bus / bus-slot.c
index 568a6ed60c340e3f93d59c96a66964c54f78970c..8060e9882cccd9429945eb1f62ce606abe7d2cb6 100644 (file)
@@ -208,6 +208,7 @@ _public_ sd_bus_slot* sd_bus_slot_unref(sd_bus_slot *slot) {
         }
 
         bus_slot_disconnect(slot);
+        free(slot->description);
         free(slot);
 
         return NULL;
@@ -265,3 +266,18 @@ _public_ void* sd_bus_slot_get_current_userdata(sd_bus_slot *slot) {
 
         return slot->bus->current_userdata;
 }
+
+_public_ int sd_bus_slot_set_description(sd_bus_slot *slot, const char *description) {
+        assert_return(slot, -EINVAL);
+
+        return free_and_strdup(&slot->description, description);
+}
+
+_public_ int sd_bus_slot_get_description(sd_bus_slot *slot, char **description) {
+        assert_return(slot, -EINVAL);
+        assert_return(description, -EINVAL);
+        assert_return(slot->description, -ENXIO);
+
+        *description = slot->description;
+        return 0;
+}