summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Grindal Bakken <hgb@ifi.uio.no>2012-11-21 10:36:56 +0100
committerTollef Fog Heen <tfheen@err.no>2012-11-21 10:49:58 +0100
commitcf37cd2f305db327e05f8e001f5d84887f4fdfeb (patch)
treefa00f64a42d25f720b0af01919c5f45f1b26c994
parent878836df2d714a9580ad31b9db88fda862e0df50 (diff)
Add #ifdef guards around xattr usage
This adds #ifdef HAVE_ATTR_XATTR_H guards around all usage of xattr. This unbreaks building with --disable-xattr when <attr/xattr.h> doesn't exist. <attr/xattr.h> and usage of fsetxattr() without
-rw-r--r--src/core/socket.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/socket.c b/src/core/socket.c
index f4f40afa9..3d5791b11 100644
--- a/src/core/socket.c
+++ b/src/core/socket.c
@@ -25,13 +25,15 @@
#include <errno.h>
#include <fcntl.h>
#include <sys/epoll.h>
#include <signal.h>
#include <arpa/inet.h>
#include <mqueue.h>
+#ifdef HAVE_ATTR_XATTR_H
#include <attr/xattr.h>
+#endif
#include "unit.h"
#include "socket.h"
#include "netinet/tcp.h"
#include "log.h"
#include "load-dropin.h"
@@ -765,32 +767,36 @@ static void socket_apply_socket_options(Socket *s, int fd) {
}
if (s->tcp_congestion)
if (setsockopt(fd, SOL_TCP, TCP_CONGESTION, s->tcp_congestion, strlen(s->tcp_congestion)+1) < 0)
log_warning("TCP_CONGESTION failed: %m");
+#ifdef HAVE_ATTR_XATTR_H
if (s->smack_ip_in)
if (fsetxattr(fd, "security.SMACK64IPIN", s->smack_ip_in, strlen(s->smack_ip_in), 0) < 0)
log_error("fsetxattr(\"security.SMACK64IPIN\"): %m");
if (s->smack_ip_out)
if (fsetxattr(fd, "security.SMACK64IPOUT", s->smack_ip_out, strlen(s->smack_ip_out), 0) < 0)
log_error("fsetxattr(\"security.SMACK64IPOUT\"): %m");
+#endif
}
static void socket_apply_fifo_options(Socket *s, int fd) {
assert(s);
assert(fd >= 0);
if (s->pipe_size > 0)
if (fcntl(fd, F_SETPIPE_SZ, s->pipe_size) < 0)
log_warning("F_SETPIPE_SZ: %m");
+#ifdef HAVE_ATTR_XATTR_H
if (s->smack)
if (fsetxattr(fd, "security.SMACK64", s->smack, strlen(s->smack), 0) < 0)
log_error("fsetxattr(\"security.SMACK64\"): %m");
+#endif
}
static int fifo_address_create(
const char *path,
mode_t directory_mode,
mode_t socket_mode,