s3-smbd: Support systemd 230
authorAlexander Bokovoy <ab@samba.org>
Wed, 25 May 2016 12:41:52 +0000 (15:41 +0300)
committerAndreas Schneider <asn@cryptomilk.org>
Wed, 25 May 2016 18:25:44 +0000 (20:25 +0200)
systemd 230 version finally deprecated libsystemd-daemon/libsystemd-journal split
and put everything in libsystemd library.

Make sure HAVE_LIBSYSTEMD define is supported in the code (we already
have it defined by the waf).

Patch is based on the code proposed by Zbigniew JÄ™drzejewski-Szmek
from systemd project.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11936

Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed May 25 20:25:44 CEST 2016 on sn-devel-144

lib/util/become_daemon.c

index 46229719078ff42a4fff4f7dfa9a2d5f170a43bf..9979fad569d993aa982d4074761a62f45cc6e95b 100644 (file)
@@ -24,7 +24,7 @@
 #include "includes.h"
 #include "system/filesys.h"
 #include "system/locale.h"
-#if HAVE_LIBSYSTEMD_DAEMON
+#if defined(HAVE_LIBSYSTEMD_DAEMON) || defined(HAVE_LIBSYSTEMD)
 #include <systemd/sd-daemon.h>
 #endif
 #include "lib/util/close_low_fd.h"
@@ -69,7 +69,7 @@ _PUBLIC_ void become_daemon(bool do_fork, bool no_process_group, bool log_stdout
        if (do_fork) {
                newpid = fork();
                if (newpid) {
-#if HAVE_LIBSYSTEMD_DAEMON
+#if defined(HAVE_LIBSYSTEMD_DAEMON) || defined(HAVE_LIBSYSTEMD)
                        sd_notifyf(0, "READY=0\nSTATUS=Starting process...\nMAINPID=%lu", (unsigned long) newpid);
 #endif /* HAVE_LIBSYSTEMD_DAEMON */
                        _exit(0);
@@ -98,7 +98,7 @@ _PUBLIC_ void become_daemon(bool do_fork, bool no_process_group, bool log_stdout
 
 _PUBLIC_ void exit_daemon(const char *msg, int error)
 {
-#ifdef HAVE_LIBSYSTEMD_DAEMON
+#if defined(HAVE_LIBSYSTEMD_DAEMON) || defined(HAVE_LIBSYSTEMD)
        if (msg == NULL) {
                msg = strerror(error);
        }
@@ -117,7 +117,7 @@ _PUBLIC_ void daemon_ready(const char *name)
        if (name == NULL) {
                name = "Samba";
        }
-#ifdef HAVE_LIBSYSTEMD_DAEMON
+#if defined(HAVE_LIBSYSTEMD_DAEMON) || defined(HAVE_LIBSYSTEMD)
        sd_notifyf(0, "READY=1\nSTATUS=%s: ready to serve connections...", name);
 #endif
        DEBUG(0, ("STATUS=daemon '%s' finished starting up and ready to serve "
@@ -129,7 +129,7 @@ _PUBLIC_ void daemon_status(const char *name, const char *msg)
        if (name == NULL) {
                name = "Samba";
        }
-#ifdef HAVE_LIBSYSTEMD_DAEMON
+#if defined(HAVE_LIBSYSTEMD_DAEMON) || defined(HAVE_LIBSYSTEMD)
        sd_notifyf(0, "\nSTATUS=%s: %s", name, msg);
 #endif
        DEBUG(0, ("STATUS=daemon '%s' : %s", name, msg));