+static const char sdb_path[] = "/org/freedesktop/systemd1";
+static const char sdb_destination[] = "org.freedesktop.systemd1";
+static const char sdbi_manager[] = "org.freedesktop.systemd1.Manager";
+static const char sdbm_reload[] = "Reload";
+
+static struct sd_bus *sysbus;
+static struct sd_bus *usrbus;
+
+static int get_bus(int isuser, struct sd_bus **ret)
+{
+ int rc;
+ struct sd_bus *bus;
+
+ bus = isuser ? usrbus : sysbus;
+ if (bus) {
+ *ret = bus;
+ rc = 0;
+ } else if (isuser) {
+ rc = sd_bus_open_user(ret);
+ if (!rc)
+ usrbus = *ret;
+ } else {
+ rc = sd_bus_open_system(ret);
+ if (!rc)
+ sysbus = *ret;
+ }
+ return rc;
+}
+