chiark / gitweb /
journal: add ability to browse journals of running OS containers
[elogind.git] / src / libsystemd-bus / sd-bus.c
index 91fac4815e8f28018b84aac694ba475995ef139c..f991a09279eb7efef10ca18834c3dd84ef3fce96 100644 (file)
@@ -764,6 +764,9 @@ static int parse_container_address(sd_bus *b, const char **p, char **guid) {
         if (!machine)
                 return -EINVAL;
 
+        if (!filename_is_safe(machine))
+                return -EINVAL;
+
         free(b->machine);
         b->machine = machine;
         machine = NULL;
@@ -2645,7 +2648,9 @@ fail:
 
 _public_ int sd_bus_detach_event(sd_bus *bus) {
         assert_return(bus, -EINVAL);
-        assert_return(bus->event, -ENXIO);
+
+        if (!bus->event)
+                return 0;
 
         if (bus->input_io_event_source) {
                 sd_event_source_set_enabled(bus->input_io_event_source, SD_EVENT_OFF);
@@ -2670,7 +2675,7 @@ _public_ int sd_bus_detach_event(sd_bus *bus) {
         if (bus->event)
                 bus->event = sd_event_unref(bus->event);
 
-        return 0;
+        return 1;
 }
 
 _public_ sd_event* sd_bus_get_event(sd_bus *bus) {