summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/compat-libs/libsystemd-daemon.pc.in (renamed from src/libsystemd-daemon/libsystemd-daemon.pc.in)0
-rw-r--r--src/compat-libs/libsystemd-daemon.sym (renamed from src/libsystemd-daemon/libsystemd-daemon.sym)0
-rw-r--r--src/libsystemd-daemon/.gitignore1
l---------src/libsystemd-daemon/Makefile1
-rw-r--r--src/libsystemd/libsystemd.sym15
-rw-r--r--src/libsystemd/sd-daemon/sd-daemon.c (renamed from src/libsystemd-daemon/sd-daemon.c)102
-rw-r--r--src/systemd/sd-daemon.h42
-rw-r--r--src/systemd/sd-readahead.h2
8 files changed, 47 insertions, 116 deletions
diff --git a/src/libsystemd-daemon/libsystemd-daemon.pc.in b/src/compat-libs/libsystemd-daemon.pc.in
index 8bb3a74c87..8bb3a74c87 100644
--- a/src/libsystemd-daemon/libsystemd-daemon.pc.in
+++ b/src/compat-libs/libsystemd-daemon.pc.in
diff --git a/src/libsystemd-daemon/libsystemd-daemon.sym b/src/compat-libs/libsystemd-daemon.sym
index aa9be51c6a..aa9be51c6a 100644
--- a/src/libsystemd-daemon/libsystemd-daemon.sym
+++ b/src/compat-libs/libsystemd-daemon.sym
diff --git a/src/libsystemd-daemon/.gitignore b/src/libsystemd-daemon/.gitignore
deleted file mode 100644
index 5184131b28..0000000000
--- a/src/libsystemd-daemon/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/libsystemd-daemon.pc
diff --git a/src/libsystemd-daemon/Makefile b/src/libsystemd-daemon/Makefile
deleted file mode 120000
index d0b0e8e008..0000000000
--- a/src/libsystemd-daemon/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../Makefile \ No newline at end of file
diff --git a/src/libsystemd/libsystemd.sym b/src/libsystemd/libsystemd.sym
index b4e4af1f2d..258c932fc3 100644
--- a/src/libsystemd/libsystemd.sym
+++ b/src/libsystemd/libsystemd.sym
@@ -10,6 +10,21 @@
LIBSYSTEMD_209 {
global:
+ /* originally LIBSYSTEMD_DAEMON_31 */
+ sd_booted;
+ sd_is_fifo;
+ sd_is_mq;
+ sd_is_socket;
+ sd_is_socket_inet;
+ sd_is_socket_unix;
+ sd_is_special;
+ sd_listen_fds;
+ sd_notify;
+ sd_notifyf;
+
+ /* LIBSYSTEMD_DAEMON_209 */
+ sd_watchdog_enabled;
+
/* originally LIBSYSTEMD_ID128_38 */
sd_id128_to_string;
sd_id128_from_string;
diff --git a/src/libsystemd-daemon/sd-daemon.c b/src/libsystemd/sd-daemon/sd-daemon.c
index 1a713ef2e8..21fb346bf8 100644
--- a/src/libsystemd-daemon/sd-daemon.c
+++ b/src/libsystemd/sd-daemon/sd-daemon.c
@@ -1,32 +1,23 @@
/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
/***
+ This file is part of systemd.
+
Copyright 2010 Lennart Poettering
- Permission is hereby granted, free of charge, to any person
- obtaining a copy of this software and associated documentation files
- (the "Software"), to deal in the Software without restriction,
- including without limitation the rights to use, copy, modify, merge,
- publish, distribute, sublicense, and/or sell copies of the Software,
- and to permit persons to whom the Software is furnished to do so,
- subject to the following conditions:
-
- The above copyright notice and this permission notice shall be
- included in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- SOFTWARE.
-***/
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ systemd is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
-#ifndef _GNU_SOURCE
-# define _GNU_SOURCE
-#endif
+ You should have received a copy of the GNU Lesser General Public License
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
#include <sys/types.h>
#include <sys/stat.h>
@@ -42,31 +33,12 @@
#include <stdio.h>
#include <stddef.h>
#include <limits.h>
-
-#if defined(__linux__) && !defined(SD_DAEMON_DISABLE_MQ)
-# include <mqueue.h>
-#endif
+#include <mqueue.h>
#include "util.h"
#include "sd-daemon.h"
-#if (__GNUC__ >= 4)
-# ifdef SD_EXPORT_SYMBOLS
-/* Export symbols */
-# define _sd_export_ __attribute__ ((visibility("default")))
-# else
-/* Don't export the symbols */
-# define _sd_export_ __attribute__ ((visibility("hidden")))
-# endif
-#else
-# define _sd_export_
-#endif
-
-_sd_export_ int sd_listen_fds(int unset_environment) {
-
-#if defined(DISABLE_SYSTEMD) || !defined(__linux__)
- return 0;
-#else
+_public_ int sd_listen_fds(int unset_environment) {
int r, fd;
const char *e;
char *p = NULL;
@@ -143,10 +115,9 @@ finish:
}
return r;
-#endif
}
-_sd_export_ int sd_is_fifo(int fd, const char *path) {
+_public_ int sd_is_fifo(int fd, const char *path) {
struct stat st_fd;
if (fd < 0)
@@ -177,7 +148,7 @@ _sd_export_ int sd_is_fifo(int fd, const char *path) {
return 1;
}
-_sd_export_ int sd_is_special(int fd, const char *path) {
+_public_ int sd_is_special(int fd, const char *path) {
struct stat st_fd;
if (fd < 0)
@@ -264,7 +235,7 @@ union sockaddr_union {
struct sockaddr_storage storage;
};
-_sd_export_ int sd_is_socket(int fd, int family, int type, int listening) {
+_public_ int sd_is_socket(int fd, int family, int type, int listening) {
int r;
if (family < 0)
@@ -290,7 +261,7 @@ _sd_export_ int sd_is_socket(int fd, int family, int type, int listening) {
return 1;
}
-_sd_export_ int sd_is_socket_inet(int fd, int family, int type, int listening, uint16_t port) {
+_public_ int sd_is_socket_inet(int fd, int family, int type, int listening, uint16_t port) {
union sockaddr_union sockaddr = {};
socklen_t l = sizeof(sockaddr);
int r;
@@ -333,7 +304,7 @@ _sd_export_ int sd_is_socket_inet(int fd, int family, int type, int listening, u
return 1;
}
-_sd_export_ int sd_is_socket_unix(int fd, int type, int listening, const char *path, size_t length) {
+_public_ int sd_is_socket_unix(int fd, int type, int listening, const char *path, size_t length) {
union sockaddr_union sockaddr = {};
socklen_t l = sizeof(sockaddr);
int r;
@@ -374,10 +345,7 @@ _sd_export_ int sd_is_socket_unix(int fd, int type, int listening, const char *p
return 1;
}
-_sd_export_ int sd_is_mq(int fd, const char *path) {
-#if !defined(__linux__) || defined(SD_DAEMON_DISABLE_MQ)
- return 0;
-#else
+_public_ int sd_is_mq(int fd, const char *path) {
struct mq_attr attr;
if (fd < 0)
@@ -408,13 +376,9 @@ _sd_export_ int sd_is_mq(int fd, const char *path) {
}
return 1;
-#endif
}
-_sd_export_ int sd_notify(int unset_environment, const char *state) {
-#if defined(DISABLE_SYSTEMD) || !defined(__linux__) || !defined(SOCK_CLOEXEC)
- return 0;
-#else
+_public_ int sd_notify(int unset_environment, const char *state) {
int fd = -1, r;
struct msghdr msghdr;
struct iovec iovec;
@@ -478,13 +442,9 @@ finish:
close(fd);
return r;
-#endif
}
-_sd_export_ int sd_notifyf(int unset_environment, const char *format, ...) {
-#if defined(DISABLE_SYSTEMD) || !defined(__linux__)
- return 0;
-#else
+_public_ int sd_notifyf(int unset_environment, const char *format, ...) {
va_list ap;
char *p = NULL;
int r;
@@ -500,13 +460,9 @@ _sd_export_ int sd_notifyf(int unset_environment, const char *format, ...) {
free(p);
return r;
-#endif
}
-_sd_export_ int sd_booted(void) {
-#if defined(DISABLE_SYSTEMD) || !defined(__linux__)
- return 0;
-#else
+_public_ int sd_booted(void) {
struct stat st;
/* We test whether the runtime unit file directory has been
@@ -517,14 +473,9 @@ _sd_export_ int sd_booted(void) {
return 0;
return !!S_ISDIR(st.st_mode);
-#endif
}
-_sd_export_ int sd_watchdog_enabled(int unset_environment, uint64_t *usec) {
-
-#if defined(DISABLE_SYSTEMD) || !defined(__linux__)
- return 0;
-#else
+_public_ int sd_watchdog_enabled(int unset_environment, uint64_t *usec) {
unsigned long long ll;
unsigned long l;
const char *e;
@@ -583,5 +534,4 @@ finish:
}
return r;
-#endif
}
diff --git a/src/systemd/sd-daemon.h b/src/systemd/sd-daemon.h
index 43deb8cc7d..f95fb51c25 100644
--- a/src/systemd/sd-daemon.h
+++ b/src/systemd/sd-daemon.h
@@ -30,17 +30,11 @@
#include <sys/types.h>
#include <inttypes.h>
-#ifdef __cplusplus
-extern "C" {
-#endif
+#include "_sd-common.h"
-/*
- Reference implementation of a few systemd related interfaces for
- writing daemons. These interfaces are trivial to implement. To
- simplify porting we provide this reference implementation.
- Applications are welcome to reimplement the algorithms described
- here if they do not want to include these two source files.
+_SD_BEGIN_DECLARATIONS;
+/*
The following functionality is provided:
- Support for logging with log levels on stderr
@@ -48,33 +42,9 @@ extern "C" {
- Daemon startup and status notification
- Detection of systemd boots
- You may compile this with -DDISABLE_SYSTEMD to disable systemd
- support. This makes all those calls NOPs that are directly related to
- systemd (i.e. only sd_is_xxx() will stay useful).
-
- Since this is drop-in code we don't want any of our symbols to be
- exported in any case. Hence we declare hidden visibility for all of
- them.
-
- You may find an up-to-date version of these source files online:
-
- http://cgit.freedesktop.org/systemd/systemd/plain/src/systemd/sd-daemon.h
- http://cgit.freedesktop.org/systemd/systemd/plain/src/libsystemd-daemon/sd-daemon.c
-
- This should compile on non-Linux systems, too, but with the
- exception of the sd_is_xxx() calls all functions will become NOPs.
-
See sd-daemon(3) for more information.
*/
-#ifndef _sd_printf_attr_
-# if __GNUC__ >= 4
-# define _sd_printf_attr_(a,b) __attribute__ ((format (printf, a, b)))
-# else
-# define _sd_printf_attr_(a,b)
-# endif
-#endif
-
/*
Log levels for usage on stderr:
@@ -263,7 +233,7 @@ int sd_notify(int unset_environment, const char *state);
See sd_notifyf(3) for more information.
*/
-int sd_notifyf(int unset_environment, const char *format, ...) _sd_printf_attr_(2,3);
+int sd_notifyf(int unset_environment, const char *format, ...) _sd_printf_(2,3);
/*
Returns > 0 if the system was booted with systemd. Returns < 0 on
@@ -294,8 +264,6 @@ int sd_booted(void);
*/
int sd_watchdog_enabled(int unset_environment, uint64_t *usec);
-#ifdef __cplusplus
-}
-#endif
+_SD_END_DECLARATIONS;
#endif
diff --git a/src/systemd/sd-readahead.h b/src/systemd/sd-readahead.h
index 2dac104f7a..ed8300c9b3 100644
--- a/src/systemd/sd-readahead.h
+++ b/src/systemd/sd-readahead.h
@@ -34,7 +34,7 @@ extern "C" {
/*
Reference implementation of a few boot readahead related
interfaces. These interfaces are trivial to implement. To simplify
- porting we provide this reference implementation. Applications are
+ porting, we provide this reference implementation. Applications are
welcome to reimplement the algorithms described here if they do not
want to include these two source files.