X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Fdbus-snapshot.c;h=053e35cc06ed55b70e1f8a858e7bcb20d5ba596c;hp=1e53fefc66eb0c97fd5e34f136413d11124cddb2;hb=2f20a8ebdb5aed3146f366360762d8963efe8d82;hpb=df2d202e6ed4001a21c6512c244acad5d4706c87 diff --git a/src/core/dbus-snapshot.c b/src/core/dbus-snapshot.c index 1e53fefc6..053e35cc0 100644 --- a/src/core/dbus-snapshot.c +++ b/src/core/dbus-snapshot.c @@ -25,14 +25,17 @@ #include "dbus-unit.h" #include "dbus-snapshot.h" -int bus_snapshot_method_remove(sd_bus *bus, sd_bus_message *message, void *userdata) { +int bus_snapshot_method_remove(sd_bus *bus, sd_bus_message *message, void *userdata, sd_bus_error *error) { Snapshot *s = userdata; + int r; assert(bus); assert(message); assert(s); - SELINUX_UNIT_ACCESS_CHECK(UNIT(s), bus, message, "stop"); + r = selinux_unit_access_check(UNIT(s), bus, message, "stop", error); + if (r < 0) + return r; snapshot_remove(s); @@ -42,6 +45,6 @@ int bus_snapshot_method_remove(sd_bus *bus, sd_bus_message *message, void *userd const sd_bus_vtable bus_snapshot_vtable[] = { SD_BUS_VTABLE_START(0), SD_BUS_METHOD("Remove", NULL, NULL, bus_snapshot_method_remove, 0), - SD_BUS_PROPERTY("Cleanup", "b", bus_property_get_bool, offsetof(Snapshot, cleanup), 0), + SD_BUS_PROPERTY("Cleanup", "b", bus_property_get_bool, offsetof(Snapshot, cleanup), SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_VTABLE_END };