X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fdbus-common.h;h=892d1297feb9b66bdf209725bd1a4f799fa7234e;hb=cc527a4734d636f1ab5a66576cb7e232af3cc261;hp=1dc0f591d09cda9fb2f4d2f81acc9e89cf739f7a;hpb=9612f07cbf2b0ec54c5dc6ed7e521e181cc3612d;p=elogind.git diff --git a/src/dbus-common.h b/src/dbus-common.h index 1dc0f591d..892d1297f 100644 --- a/src/dbus-common.h +++ b/src/dbus-common.h @@ -160,6 +160,21 @@ int bus_property_append_long(DBusMessageIter *i, const char *property, void *dat return 0; \ } +#define DEFINE_BUS_PROPERTY_SET_ENUM(function,name,type) \ + int function(DBusMessageIter *i, const char *property, void *data) { \ + const char *value; \ + type *field = data; \ + \ + assert(i); \ + assert(property); \ + \ + dbus_message_iter_get_basic(i, &value); \ + \ + *field = name##_from_string(value); \ + \ + return 0; \ + } + const char *bus_errno_to_dbus(int error); DBusMessage* bus_properties_changed_new(const char *path, const char *interface, const char *properties);