X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flogin%2Flogind-user-dbus.c;h=2d49b8b96ede5ec4d7ec5069a5a08dd11261fdf8;hp=b034515203465e548c6da9d9c8b4a95cd75130b1;hb=9ff1897bb564bcb885a8e2fd9a73902de830b6e0;hpb=5b12334d35eadf1f45cc3d631fd1a2e72ffaea0a diff --git a/src/login/logind-user-dbus.c b/src/login/logind-user-dbus.c index b03451520..2d49b8b96 100644 --- a/src/login/logind-user-dbus.c +++ b/src/login/logind-user-dbus.c @@ -21,10 +21,10 @@ #include #include +#include #include "strv.h" #include "bus-util.h" - #include "logind.h" #include "logind-user.h" @@ -213,15 +213,14 @@ static int method_kill(sd_bus *bus, sd_bus_message *message, void *userdata, sd_ const sd_bus_vtable user_vtable[] = { SD_BUS_VTABLE_START(0), - SD_BUS_PROPERTY("UID", "u", bus_property_get_uid, offsetof(User, uid), 0), - SD_BUS_PROPERTY("GID", "u", bus_property_get_gid, offsetof(User, gid), 0), - SD_BUS_PROPERTY("Name", "s", NULL, offsetof(User, name), 0), - SD_BUS_PROPERTY("Timestamp", "t", NULL, offsetof(User, timestamp.realtime), 0), - SD_BUS_PROPERTY("TimestampMonotonic", "t", NULL, offsetof(User, timestamp.monotonic), 0), - SD_BUS_PROPERTY("RuntimePath", "s", NULL, offsetof(User, runtime_path), 0), - SD_BUS_PROPERTY("Service", "s", NULL, offsetof(User, service), 0), - SD_BUS_PROPERTY("Slice", "s", NULL, offsetof(User, slice), 0), - SD_BUS_PROPERTY("Display", "(so)", property_get_display, 0, 0), + SD_BUS_PROPERTY("UID", "u", bus_property_get_uid, offsetof(User, uid), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("GID", "u", bus_property_get_gid, offsetof(User, gid), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("Name", "s", NULL, offsetof(User, name), SD_BUS_VTABLE_PROPERTY_CONST), + BUS_PROPERTY_DUAL_TIMESTAMP("Timestamp", offsetof(User, timestamp), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("RuntimePath", "s", NULL, offsetof(User, runtime_path), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("Service", "s", NULL, offsetof(User, service), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("Slice", "s", NULL, offsetof(User, slice), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("Display", "(so)", property_get_display, 0, SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("State", "s", property_get_state, 0, 0), SD_BUS_PROPERTY("Sessions", "a(so)", property_get_sessions, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), SD_BUS_PROPERTY("IdleHint", "b", property_get_idle_hint, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), @@ -229,8 +228,8 @@ const sd_bus_vtable user_vtable[] = { SD_BUS_PROPERTY("IdleSinceHintMonotonic", "t", property_get_idle_since_hint, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), SD_BUS_PROPERTY("Linger", "b", property_get_linger, 0, 0), - SD_BUS_METHOD("Terminate", NULL, NULL, method_terminate, 0), - SD_BUS_METHOD("Kill", "i", NULL, method_kill, 0), + SD_BUS_METHOD("Terminate", NULL, NULL, method_terminate, SD_BUS_VTABLE_CAPABILITY(CAP_KILL)), + SD_BUS_METHOD("Kill", "i", NULL, method_kill, SD_BUS_VTABLE_CAPABILITY(CAP_KILL)), SD_BUS_VTABLE_END };