diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-09-05 23:30:47 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-09-06 03:17:54 +0200 |
commit | 1b56dabaaa294349d326b90f86e4bef7c22f1d96 (patch) | |
tree | 3f8ecf36de6ec30fa7cf73edc38866a8bcd57056 | |
parent | 87d324c3434b03214d82c6fc30cb7a6a754318ab (diff) |
systemd: update sd-daemon.[ch] from upstream systemd
-rw-r--r-- | dbus/sd-daemon.c | 23 | ||||
-rw-r--r-- | dbus/sd-daemon.h | 2 |
2 files changed, 4 insertions, 21 deletions
diff --git a/dbus/sd-daemon.c b/dbus/sd-daemon.c index 1197372b..9c23b917 100644 --- a/dbus/sd-daemon.c +++ b/dbus/sd-daemon.c @@ -1,4 +1,4 @@ -/*-*- Mode: C; c-basic-offset: 8 -*-*/ +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ /*** Copyright 2010 Lennart Poettering @@ -332,11 +332,6 @@ int sd_notify(int unset_environment, const char *state) { struct msghdr msghdr; struct iovec iovec; union sockaddr_union sockaddr; - struct ucred *ucred; - union { - struct cmsghdr cmsghdr; - uint8_t buf[CMSG_SPACE(sizeof(struct ucred))]; - } control; const char *e; if (!state) { @@ -369,16 +364,6 @@ int sd_notify(int unset_environment, const char *state) { iovec.iov_base = (char*) state; iovec.iov_len = strlen(state); - memset(&control, 0, sizeof(control)); - control.cmsghdr.cmsg_level = SOL_SOCKET; - control.cmsghdr.cmsg_type = SCM_CREDENTIALS; - control.cmsghdr.cmsg_len = CMSG_LEN(sizeof(struct ucred)); - - ucred = (struct ucred*) CMSG_DATA(&control.cmsghdr); - ucred->pid = getpid(); - ucred->uid = getuid(); - ucred->gid = getgid(); - memset(&msghdr, 0, sizeof(msghdr)); msghdr.msg_name = &sockaddr; msghdr.msg_namelen = sizeof(sa_family_t) + strlen(e); @@ -388,8 +373,6 @@ int sd_notify(int unset_environment, const char *state) { msghdr.msg_iov = &iovec; msghdr.msg_iovlen = 1; - msghdr.msg_control = &control; - msghdr.msg_controllen = control.cmsghdr.cmsg_len; if (sendmsg(fd, &msghdr, MSG_NOSIGNAL) < 0) { r = -errno; @@ -441,10 +424,10 @@ int sd_booted(void) { /* We simply test whether the systemd cgroup hierarchy is * mounted */ - if (lstat("/cgroup", &a) < 0) + if (lstat("/sys/fs/cgroup", &a) < 0) return 0; - if (lstat("/cgroup/systemd", &b) < 0) + if (lstat("/sys/fs/cgroup/systemd", &b) < 0) return 0; return a.st_dev != b.st_dev; diff --git a/dbus/sd-daemon.h b/dbus/sd-daemon.h index fd6221f2..c68c96d2 100644 --- a/dbus/sd-daemon.h +++ b/dbus/sd-daemon.h @@ -1,4 +1,4 @@ -/*-*- Mode: C; c-basic-offset: 8 -*-*/ +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/ #ifndef foosddaemonhfoo #define foosddaemonhfoo |