chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
nss-myhostname: copy first result to preallocated buffer
[elogind.git]
/
src
/
core
/
dbus.c
diff --git
a/src/core/dbus.c
b/src/core/dbus.c
index 9db172b6e692d5b6de52eb1d72bac9bb3530cac9..2a1c66054a1cb0d8d3c219955d54f40c02d8e974 100644
(file)
--- a/
src/core/dbus.c
+++ b/
src/core/dbus.c
@@
-30,6
+30,7
@@
#include "strv.h"
#include "cgroup.h"
#include "mkdir.h"
#include "strv.h"
#include "cgroup.h"
#include "mkdir.h"
+#include "missing.h"
#include "dbus-unit.h"
#include "dbus-job.h"
#include "dbus-manager.h"
#include "dbus-unit.h"
#include "dbus-job.h"
#include "dbus-manager.h"
@@
-444,7
+445,7
@@
static DBusHandlerResult system_bus_message_filter(DBusConnection *connection, D
log_debug("System D-Bus connection terminated.");
bus_done_system(m);
log_debug("System D-Bus connection terminated.");
bus_done_system(m);
- } else if (m->running_as !=
MANAGER
_SYSTEM &&
+ } else if (m->running_as !=
SYSTEMD
_SYSTEM &&
dbus_message_is_signal(message, "org.freedesktop.systemd1.Agent", "Released")) {
const char *cgroup;
dbus_message_is_signal(message, "org.freedesktop.systemd1.Agent", "Released")) {
const char *cgroup;
@@
-480,7
+481,7
@@
static DBusHandlerResult private_bus_message_filter(DBusConnection *connection,
if (dbus_message_is_signal(message, DBUS_INTERFACE_LOCAL, "Disconnected"))
shutdown_connection(m, connection);
if (dbus_message_is_signal(message, DBUS_INTERFACE_LOCAL, "Disconnected"))
shutdown_connection(m, connection);
- else if (m->running_as ==
MANAGER
_SYSTEM &&
+ else if (m->running_as ==
SYSTEMD
_SYSTEM &&
dbus_message_is_signal(message, "org.freedesktop.systemd1.Agent", "Released")) {
const char *cgroup;
dbus_message_is_signal(message, "org.freedesktop.systemd1.Agent", "Released")) {
const char *cgroup;
@@
-775,7
+776,7
@@
static int init_registered_system_bus(Manager *m) {
if (!dbus_connection_add_filter(m->system_bus, system_bus_message_filter, m, NULL))
return log_oom();
if (!dbus_connection_add_filter(m->system_bus, system_bus_message_filter, m, NULL))
return log_oom();
- if (m->running_as !=
MANAGER
_SYSTEM) {
+ if (m->running_as !=
SYSTEMD
_SYSTEM) {
DBusError error;
dbus_error_init(&error);
DBusError error;
dbus_error_init(&error);
@@
-837,7
+838,7
@@
static int init_registered_api_bus(Manager *m) {
if (r < 0)
return r;
if (r < 0)
return r;
- if (m->running_as ==
MANAGER
_USER) {
+ if (m->running_as ==
SYSTEMD
_USER) {
char *id;
log_debug("Successfully connected to API D-Bus bus %s as %s",
strnull((id = dbus_connection_get_server_id(m->api_bus))),
char *id;
log_debug("Successfully connected to API D-Bus bus %s as %s",
strnull((id = dbus_connection_get_server_id(m->api_bus))),
@@
-888,7
+889,7
@@
static void bus_register_cb(DBusPendingCall *pending, void *userdata) {
if (conn == &m->system_bus) {
r = init_registered_system_bus(m);
if (conn == &m->system_bus) {
r = init_registered_system_bus(m);
- if (r == 0 && m->running_as ==
MANAGER
_SYSTEM)
+ if (r == 0 && m->running_as ==
SYSTEMD
_SYSTEM)
r = init_registered_api_bus(m);
} else
r = init_registered_api_bus(m);
r = init_registered_api_bus(m);
} else
r = init_registered_api_bus(m);
@@
-955,12
+956,12
@@
static DBusConnection* manager_bus_connect_private(Manager *m, DBusBusType type)
switch (type) {
case DBUS_BUS_SYSTEM:
switch (type) {
case DBUS_BUS_SYSTEM:
- address = getenv("DBUS_SYSTEM_BUS_ADDRESS");
+ address =
secure_
getenv("DBUS_SYSTEM_BUS_ADDRESS");
if (!address || !address[0])
address = DBUS_SYSTEM_BUS_DEFAULT_ADDRESS;
break;
case DBUS_BUS_SESSION:
if (!address || !address[0])
address = DBUS_SYSTEM_BUS_DEFAULT_ADDRESS;
break;
case DBUS_BUS_SESSION:
- address = getenv("DBUS_SESSION_BUS_ADDRESS");
+ address =
secure_
getenv("DBUS_SESSION_BUS_ADDRESS");
if (!address || !address[0])
address = DBUS_SESSION_BUS_DEFAULT_ADDRESS;
break;
if (!address || !address[0])
address = DBUS_SESSION_BUS_DEFAULT_ADDRESS;
break;
@@
-1018,7
+1019,7
@@
static int bus_init_api(Manager *m) {
if (m->api_bus)
return 0;
if (m->api_bus)
return 0;
- if (m->running_as ==
MANAGER
_SYSTEM) {
+ if (m->running_as ==
SYSTEMD
_SYSTEM) {
m->api_bus = m->system_bus;
/* In this mode there is no distinct connection to the API bus,
* the API is published on the system bus.
m->api_bus = m->system_bus;
/* In this mode there is no distinct connection to the API bus,
* the API is published on the system bus.
@@
-1065,7
+1066,7
@@
static int bus_init_private(Manager *m) {
if (m->private_bus)
return 0;
if (m->private_bus)
return 0;
- if (m->running_as ==
MANAGER
_SYSTEM) {
+ if (m->running_as ==
SYSTEMD
_SYSTEM) {
/* We want the private bus only when running as init */
if (getpid() != 1)
/* We want the private bus only when running as init */
if (getpid() != 1)
@@
-1077,7
+1078,7
@@
static int bus_init_private(Manager *m) {
const char *e;
char *p;
const char *e;
char *p;
- e = getenv("XDG_RUNTIME_DIR");
+ e =
secure_
getenv("XDG_RUNTIME_DIR");
if (!e)
return 0;
if (!e)
return 0;
@@
-1189,7
+1190,7
@@
static void shutdown_connection(Manager *m, DBusConnection *c) {
dbus_connection_set_dispatch_status_function(c, NULL, NULL, NULL);
/* system manager cannot afford to block on DBus */
dbus_connection_set_dispatch_status_function(c, NULL, NULL, NULL);
/* system manager cannot afford to block on DBus */
- if (m->running_as !=
MANAGER
_SYSTEM)
+ if (m->running_as !=
SYSTEMD
_SYSTEM)
dbus_connection_flush(c);
dbus_connection_close(c);
dbus_connection_unref(c);
dbus_connection_flush(c);
dbus_connection_close(c);
dbus_connection_unref(c);
@@
-1199,7
+1200,7
@@
static void bus_done_api(Manager *m) {
if (!m->api_bus)
return;
if (!m->api_bus)
return;
- if (m->running_as ==
MANAGER
_USER)
+ if (m->running_as ==
SYSTEMD
_USER)
shutdown_connection(m, m->api_bus);
m->api_bus = NULL;
shutdown_connection(m, m->api_bus);
m->api_bus = NULL;
@@
-1214,7
+1215,7
@@
static void bus_done_system(Manager *m) {
if (!m->system_bus)
return;
if (!m->system_bus)
return;
- if (m->running_as ==
MANAGER
_SYSTEM)
+ if (m->running_as ==
SYSTEMD
_SYSTEM)
bus_done_api(m);
shutdown_connection(m, m->system_bus);
bus_done_api(m);
shutdown_connection(m, m->system_bus);
@@
-1361,11
+1362,11
@@
int bus_broadcast(Manager *m, DBusMessage *message) {
assert(message);
SET_FOREACH(c, m->bus_connections_for_dispatch, i)
assert(message);
SET_FOREACH(c, m->bus_connections_for_dispatch, i)
- if (c != m->system_bus || m->running_as ==
MANAGER
_SYSTEM)
+ if (c != m->system_bus || m->running_as ==
SYSTEMD
_SYSTEM)
oom = !dbus_connection_send(c, message, NULL);
SET_FOREACH(c, m->bus_connections, i)
oom = !dbus_connection_send(c, message, NULL);
SET_FOREACH(c, m->bus_connections, i)
- if (c != m->system_bus || m->running_as ==
MANAGER
_SYSTEM)
+ if (c != m->system_bus || m->running_as ==
SYSTEMD
_SYSTEM)
oom = !dbus_connection_send(c, message, NULL);
return oom ? -ENOMEM : 0;
oom = !dbus_connection_send(c, message, NULL);
return oom ? -ENOMEM : 0;
@@
-1436,6
+1437,8
@@
int bus_fdset_add_all(Manager *m, FDSet *fds) {
void bus_broadcast_finished(
Manager *m,
void bus_broadcast_finished(
Manager *m,
+ usec_t firmware_usec,
+ usec_t loader_usec,
usec_t kernel_usec,
usec_t initrd_usec,
usec_t userspace_usec,
usec_t kernel_usec,
usec_t initrd_usec,
usec_t userspace_usec,
@@
-1453,6
+1456,8
@@
void bus_broadcast_finished(
assert_cc(sizeof(usec_t) == sizeof(uint64_t));
if (!dbus_message_append_args(message,
assert_cc(sizeof(usec_t) == sizeof(uint64_t));
if (!dbus_message_append_args(message,
+ DBUS_TYPE_UINT64, &firmware_usec,
+ DBUS_TYPE_UINT64, &loader_usec,
DBUS_TYPE_UINT64, &kernel_usec,
DBUS_TYPE_UINT64, &initrd_usec,
DBUS_TYPE_UINT64, &userspace_usec,
DBUS_TYPE_UINT64, &kernel_usec,
DBUS_TYPE_UINT64, &initrd_usec,
DBUS_TYPE_UINT64, &userspace_usec,