X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibsystemd-bus%2Fbus-util.h;h=ddb926498fb90cf96f52dc4b38c39436ecf97895;hb=ffc06c3513d9a0693c7f810d03b20705127ba55a;hp=5ddab2c11bfd384fcb6be8dd50a486dc23e51aeb;hpb=a1da85830bfaa77b9eb9c54693e5573559c97e50;p=elogind.git diff --git a/src/libsystemd-bus/bus-util.h b/src/libsystemd-bus/bus-util.h index 5ddab2c11..ddb926498 100644 --- a/src/libsystemd-bus/bus-util.h +++ b/src/libsystemd-bus/bus-util.h @@ -27,6 +27,25 @@ #include "time-util.h" #include "util.h" +typedef enum BusTransport { + BUS_TRANSPORT_LOCAL, + BUS_TRANSPORT_REMOTE, + BUS_TRANSPORT_CONTAINER, + _BUS_TRANSPORT_MAX, + _BUS_TRANSPORT_INVALID = -1 +} BusTransport; + +struct bus_properties_map { + const char *type; + const char *name; + void *ptr; +}; + +int bus_map_all_properties(sd_bus *bus, + const char *destination, + const char *path, + const struct bus_properties_map *map); + int bus_async_unregister_and_quit(sd_event *e, sd_bus *bus, const char *name); int bus_event_loop_with_idle(sd_event *e, sd_bus *bus, const char *name, usec_t timeout); @@ -37,8 +56,9 @@ int bus_verify_polkit(sd_bus *bus, sd_bus_message *m, const char *action, bool i int bus_verify_polkit_async(sd_bus *bus, Hashmap **registry, sd_bus_message *m, const char *action, bool interactive, sd_bus_error *error, sd_bus_message_handler_t callback, void *userdata); void bus_verify_polkit_async_registry_free(sd_bus *bus, Hashmap *registry); -int bus_connect_system(sd_bus **_bus); -int bus_connect_system_ssh(const char *host, sd_bus **_bus); +int bus_open_system_systemd(sd_bus **_bus); + +int bus_open_transport(BusTransport transport, const char *host, bool user, sd_bus **bus); int bus_generic_print_property(const char *name, sd_bus_message *property, bool all);