chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Prep v220: Use new cgroups functions
[elogind.git]
/
src
/
libelogind
/
sd-bus
/
sd-bus.c
diff --git
a/src/libelogind/sd-bus/sd-bus.c
b/src/libelogind/sd-bus/sd-bus.c
index 57c09d9cb3ac9e71887870873af9fca31ddd4a46..87263b74f24ae290246a0c0e7b997f46ba435838 100644
(file)
--- a/
src/libelogind/sd-bus/sd-bus.c
+++ b/
src/libelogind/sd-bus/sd-bus.c
@@
-1236,18
+1236,9
@@
int bus_set_address_user(sd_bus *b) {
if (!ee)
return -ENOMEM;
if (!ee)
return -ENOMEM;
-#ifdef ENABLE_KDBUS
(void) asprintf(&b->address, KERNEL_USER_BUS_ADDRESS_FMT ";" UNIX_USER_BUS_ADDRESS_FMT, getuid(), ee);
(void) asprintf(&b->address, KERNEL_USER_BUS_ADDRESS_FMT ";" UNIX_USER_BUS_ADDRESS_FMT, getuid(), ee);
-#else
- (void) asprintf(&b->address, UNIX_USER_BUS_ADDRESS_FMT, ee);
-#endif
- } else {
-#ifdef ENABLE_KDBUS
+ } else
(void) asprintf(&b->address, KERNEL_USER_BUS_ADDRESS_FMT, getuid());
(void) asprintf(&b->address, KERNEL_USER_BUS_ADDRESS_FMT, getuid());
-#else
- return -ECONNREFUSED;
-#endif
- }
if (!b->address)
return -ENOMEM;
if (!b->address)
return -ENOMEM;
@@
-1369,11
+1360,7
@@
int bus_set_address_system_machine(sd_bus *b, const char *machine) {
if (!e)
return -ENOMEM;
if (!e)
return -ENOMEM;
-#ifdef ENABLE_KDBUS
b->address = strjoin("x-machine-kernel:machine=", e, ";x-machine-unix:machine=", e, NULL);
b->address = strjoin("x-machine-kernel:machine=", e, ";x-machine-unix:machine=", e, NULL);
-#else
- b->address = strjoin("x-machine-unix:machine=", e, NULL);
-#endif
if (!b->address)
return -ENOMEM;
if (!b->address)
return -ENOMEM;
@@
-1438,6
+1425,17
@@
_public_ void sd_bus_close(sd_bus *bus) {
* ioctl on the fd when they are freed. */
}
* ioctl on the fd when they are freed. */
}
+_public_ sd_bus* sd_bus_flush_close_unref(sd_bus *bus) {
+
+ if (!bus)
+ return NULL;
+
+ sd_bus_flush(bus);
+ sd_bus_close(bus);
+
+ return sd_bus_unref(bus);
+}
+
static void bus_enter_closing(sd_bus *bus) {
assert(bus);
static void bus_enter_closing(sd_bus *bus) {
assert(bus);
@@
-2955,10
+2953,8
@@
_public_ int sd_bus_add_match(
/* Do not install server-side matches for matches
* against the local service, interface or bus
/* Do not install server-side matches for matches
* against the local service, interface or bus
- * path. Also, when on kdbus don't install driver
- * matches server side. */
- if (scope == BUS_MATCH_GENERIC ||
- (!bus->is_kernel && scope == BUS_MATCH_DRIVER)) {
+ * path. */
+ if (scope != BUS_MATCH_LOCAL) {
if (!bus->is_kernel) {
/* When this is not a kernel transport, we
if (!bus->is_kernel) {
/* When this is not a kernel transport, we