SHA256
1
0
forked from pool/systemd
Dr. Werner Fink 2014-06-03 16:28:48 +00:00 committed by Git OBS Bridge
parent eb0eb3e60f
commit 6ee449814f
6 changed files with 266 additions and 3 deletions

View File

@ -0,0 +1,215 @@
Based on d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9e Mon Sep 17 00:00:00 2001
From: Kay Sievers <kay@vrfy.org>
Date: Wed, 28 May 2014 17:36:40 +0800
Subject: [PATCH] build-sys: use glibc's xattr support instead of requiring
libattr
---
configure.ac | 53 ++-----------------------------------------
src/core/mount-setup.c | 2 -
src/core/socket.c | 4 ---
src/journal/journal-file.c | 7 -----
src/journal/journal-vacuum.c | 10 --------
src/shared/label.c | 2 -
src/shared/smack-util.c | 4 ---
7 files changed, 7 insertions(+), 75 deletions(-)
--- configure.ac
+++ configure.ac 2014-06-03 00:00:00.000000000 +0000
@@ -526,44 +526,6 @@ AC_SUBST(ACL_LIBS)
AM_CONDITIONAL([HAVE_ACL], [test "x$have_acl" != xno])
# ------------------------------------------------------------------------------
-AC_ARG_ENABLE([xattr],
- AS_HELP_STRING([--disable-xattr],[Disable optional XATTR support]),
- [case "${enableval}" in
- yes) have_xattr=yes ;;
- no) have_xattr=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --disable-xattr) ;;
- esac],
- [have_xattr=auto])
-
-if test "x${have_xattr}" != xno ; then
- AC_CHECK_HEADERS(
- [attr/xattr.h],
- [have_xattr=yes],
- [if test "x$have_xattr" = xyes ; then
- AC_MSG_ERROR([*** XATTR headers not found.])
- fi])
-
- AC_CHECK_LIB(
- [attr],
- [fsetxattr],
- [have_xattr=yes],
- [if test "x$have_xattr" = xyes ; then
- AC_MSG_ERROR([*** libattr not found.])
- fi])
-
- if test "x$have_xattr" = xyes ; then
- XATTR_LIBS="-lattr"
- AC_DEFINE(HAVE_XATTR, 1, [XATTR available])
- else
- have_xattr=no
- fi
-else
- XATTR_LIBS=
-fi
-AC_SUBST(XATTR_LIBS)
-AM_CONDITIONAL([HAVE_XATTR], [test "x$have_xattr" != xno])
-
-# ------------------------------------------------------------------------------
AC_ARG_ENABLE([smack], AS_HELP_STRING([--disable-smack],[Disable optional SMACK support]),
[case "${enableval}" in
yes) have_smack=yes ;;
@@ -572,17 +534,9 @@ AC_ARG_ENABLE([smack], AS_HELP_STRING([-
esac],
[have_smack=auto])
-if test "x${have_xattr}" = xno; then
- if test "x${have_smack}" = xyes; then
- AC_MSG_ERROR(SMACK requires xattr support)
- else
- have_smack=no
- fi
-else
- if test "x${have_smack}" = xauto; then
- M4_DEFINES="$M4_DEFINES -DHAVE_SMACK"
- have_smack=yes
- fi
+if test "x${have_smack}" = xauto; then
+ M4_DEFINES="$M4_DEFINES -DHAVE_SMACK"
+ have_smack=yes
fi
AC_ARG_WITH(smack-run-label,
@@ -1131,7 +1085,6 @@ AC_MSG_RESULT([
SMACK: ${have_smack}
XZ: ${have_xz}
ACL: ${have_acl}
- XATTR: ${have_xattr}
GCRYPT: ${have_gcrypt}
QRENCODE: ${have_qrencode}
MICROHTTPD: ${have_microhttpd}
--- src/core/mount-setup.c
+++ src/core/mount-setup.c 2014-06-03 00:00:00.000000000 +0000
@@ -93,10 +93,8 @@ static const MountPoint mount_table[] =
NULL, MNT_FATAL|MNT_IN_CONTAINER },
{ "tmpfs", "/sys/fs/cgroup", "tmpfs", "mode=755", MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_STRICTATIME,
NULL, MNT_IN_CONTAINER },
-#ifdef HAVE_XATTR
{ "cgroup", "/sys/fs/cgroup/systemd", "cgroup", "none,name=systemd,xattr", MS_NOSUID|MS_NOEXEC|MS_NODEV,
NULL, MNT_IN_CONTAINER },
-#endif
{ "cgroup", "/sys/fs/cgroup/systemd", "cgroup", "none,name=systemd", MS_NOSUID|MS_NOEXEC|MS_NODEV,
NULL, MNT_IN_CONTAINER },
{ "pstore", "/sys/fs/pstore", "pstore", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
--- src/core/socket.c
+++ src/core/socket.c 2014-06-03 00:00:00.000000000 +0000
@@ -29,9 +29,7 @@
#include <arpa/inet.h>
#include <netinet/tcp.h>
#include <mqueue.h>
-#ifdef HAVE_XATTR
-#include <attr/xattr.h>
-#endif
+#include <sys/xattr.h>
#include "sd-event.h"
#include "log.h"
--- src/journal/journal-file.c
+++ src/journal/journal-file.c 2014-06-03 00:00:00.000000000 +0000
@@ -26,10 +26,7 @@
#include <sys/statvfs.h>
#include <fcntl.h>
#include <stddef.h>
-
-#ifdef HAVE_XATTR
-#include <attr/xattr.h>
-#endif
+#include <sys/xattr.h>
#include "journal-def.h"
#include "journal-file.h"
@@ -2515,7 +2512,6 @@ int journal_file_open(
}
if (f->last_stat.st_size == 0 && f->writable) {
-#ifdef HAVE_XATTR
uint64_t crtime;
/* Let's attach the creation time to the journal file,
@@ -2530,7 +2526,6 @@ int journal_file_open(
crtime = htole64((uint64_t) now(CLOCK_REALTIME));
fsetxattr(f->fd, "user.crtime_usec", &crtime, sizeof(crtime), XATTR_CREATE);
-#endif
#ifdef HAVE_GCRYPT
/* Try to load the FSPRG state, and if we can't, then
--- src/journal/journal-vacuum.c
+++ src/journal/journal-vacuum.c 2014-06-03 00:00:00.000000000 +0000
@@ -24,10 +24,7 @@
#include <sys/stat.h>
#include <sys/statvfs.h>
#include <unistd.h>
-
-#ifdef HAVE_XATTR
-#include <attr/xattr.h>
-#endif
+#include <sys/xattr.h>
#include "journal-def.h"
#include "journal-file.h"
@@ -79,11 +76,8 @@ static void patch_realtime(
unsigned long long *realtime) {
usec_t x;
-
-#ifdef HAVE_XATTR
uint64_t crtime;
_cleanup_free_ const char *path = NULL;
-#endif
/* The timestamp was determined by the file name, but let's
* see if the file might actually be older than the file name
@@ -106,7 +100,6 @@ static void patch_realtime(
if (x > 0 && x != (usec_t) -1 && x < *realtime)
*realtime = x;
-#ifdef HAVE_XATTR
/* Let's read the original creation time, if possible. Ideally
* we'd just query the creation time the FS might provide, but
* unfortunately there's currently no sane API to query
@@ -125,7 +118,6 @@ static void patch_realtime(
if (crtime > 0 && crtime != (uint64_t) -1 && crtime < *realtime)
*realtime = crtime;
}
-#endif
}
static int journal_file_empty(int dir_fd, const char *name) {
--- src/shared/label.c
+++ src/shared/label.c 2014-06-03 00:00:00.000000000 +0000
@@ -27,9 +27,7 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
-#ifdef HAVE_XATTR
#include <sys/xattr.h>
-#endif
#ifdef HAVE_SELINUX
#include <selinux/selinux.h>
#include <selinux/label.h>
--- src/shared/smack-util.c
+++ src/shared/smack-util.c 2014-06-03 00:00:00.000000000 +0000
@@ -23,9 +23,7 @@
#include <unistd.h>
#include <string.h>
-#ifdef HAVE_XATTR
-#include <attr/xattr.h>
-#endif
+#include <sys/xattr.h>
#include "smack-util.h"

View File

@ -9,10 +9,10 @@
+ struct dirent *de;
+
+ if (!(d = opendir("/run/systemd/ask-password"))) {
+ log_error("opendir(): %m");
+
+ if (errno == ENOENT)
+ return 1;
+ log_error("opendir(/run/systemd/ask-password): %m");
+
+ return -errno;
+ }

View File

@ -4,6 +4,24 @@ Tue Jun 3 16:31:44 UTC 2014 - sndirsch@suse.com
- apply-ACL-for-nvidia-uvm-device-node.patch: set ACL on nvidia-uvm
device (bnc#879767).
-------------------------------------------------------------------
Tue Jun 3 15:56:01 UTC 2014 - werner@suse.de
- Add changes from Cristian Rodríguez:
* fix keep-crypt-password-prompt.patch which floods the system
logs with bogus opendir failures, still the wrong thing to do however.
* Use %find_lang to collect locale files
* systemd-no-libattr.patch: systemd does not require libattr
but just sys/xattr.h, therefore drop the dependency.
(from upstream)
* Again, drop tcp-devel from buildRequires, this time it is not a
SUSE specific feature removal, tcpd supportdisappeared in systemd
212 and we shouldn't keep it around.
- Add patch 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch
that is rename systemd-no-libattr.patch to git format
- Drop tcp-devel only for *next* openSUSE and not for SLES-12 nor
for openSUSE 13.1
-------------------------------------------------------------------
Tue Jun 3 14:23:40 UTC 2014 - werner@suse.de

View File

@ -60,7 +60,6 @@ BuildRequires: gtk-doc
%endif
BuildRequires: intltool
BuildRequires: libacl-devel
BuildRequires: libattr-devel
BuildRequires: libcap-devel
BuildRequires: libkmod-devel
BuildRequires: libsepol-devel
@ -73,7 +72,9 @@ BuildRequires: pam-devel
%if 0%{?suse_version} > 1310
BuildRequires: systemd-rpm-macros
%endif
%if 0%{?suse_version} > 1315
BuildRequires: tcpd-devel
%endif
BuildRequires: xz
BuildRequires: pkgconfig(blkid) >= 2.20
%if ! 0%{?bootstrap}
@ -526,6 +527,8 @@ Patch265: 0004-util-ignore_file-should-not-allow-files-ending-with.patch
Patch266: 0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch
# PATCHFIX-UPSTREAM added at 2014/06/03
Patch267: 0007-keyboard-add-Plantronics-.Audio-mute-button.patch
# PATCHFIX-UPSTREAM added at 2014/06/03
Patch268: 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch
# UDEV PATCHES
# ============
@ -996,6 +999,7 @@ cp %{SOURCE7} m4/
%patch265 -p0
%patch266 -p0
%patch267 -p0
%patch268 -p0
# udev patches
%patch1001 -p1
@ -1298,6 +1302,8 @@ cat > %{buildroot}/%{_prefix}/lib/systemd/system/fix.service <<-'EOF'
ln -sf ../fix.service %{buildroot}/%{_prefix}/lib/systemd/system/remote-fs.target.wants
%endif
%find_lang systemd
%pre
getent group systemd-journal >/dev/null || groupadd -r systemd-journal || :
exit 0

View File

@ -4,6 +4,24 @@ Tue Jun 3 16:31:44 UTC 2014 - sndirsch@suse.com
- apply-ACL-for-nvidia-uvm-device-node.patch: set ACL on nvidia-uvm
device (bnc#879767).
-------------------------------------------------------------------
Tue Jun 3 15:56:01 UTC 2014 - werner@suse.de
- Add changes from Cristian Rodríguez:
* fix keep-crypt-password-prompt.patch which floods the system
logs with bogus opendir failures, still the wrong thing to do however.
* Use %find_lang to collect locale files
* systemd-no-libattr.patch: systemd does not require libattr
but just sys/xattr.h, therefore drop the dependency.
(from upstream)
* Again, drop tcp-devel from buildRequires, this time it is not a
SUSE specific feature removal, tcpd supportdisappeared in systemd
212 and we shouldn't keep it around.
- Add patch 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch
that is rename systemd-no-libattr.patch to git format
- Drop tcp-devel only for *next* openSUSE and not for SLES-12 nor
for openSUSE 13.1
-------------------------------------------------------------------
Tue Jun 3 14:23:40 UTC 2014 - werner@suse.de

View File

@ -55,7 +55,6 @@ BuildRequires: gtk-doc
%endif
BuildRequires: intltool
BuildRequires: libacl-devel
BuildRequires: libattr-devel
BuildRequires: libcap-devel
BuildRequires: libkmod-devel
BuildRequires: libsepol-devel
@ -68,7 +67,9 @@ BuildRequires: pam-devel
%if 0%{?suse_version} > 1310
BuildRequires: systemd-rpm-macros
%endif
%if 0%{?suse_version} > 1315
BuildRequires: tcpd-devel
%endif
BuildRequires: xz
BuildRequires: pkgconfig(blkid) >= 2.20
%if ! 0%{?bootstrap}
@ -521,6 +522,8 @@ Patch265: 0004-util-ignore_file-should-not-allow-files-ending-with.patch
Patch266: 0006-tty-ask-password-agent-Do-tell-what-directory-we-fai.patch
# PATCHFIX-UPSTREAM added at 2014/06/03
Patch267: 0007-keyboard-add-Plantronics-.Audio-mute-button.patch
# PATCHFIX-UPSTREAM added at 2014/06/03
Patch268: 0001-build-sys-use-glibc-s-xattr-support-instead-of-requi.patch
# UDEV PATCHES
# ============
@ -991,6 +994,7 @@ cp %{SOURCE7} m4/
%patch265 -p0
%patch266 -p0
%patch267 -p0
%patch268 -p0
# udev patches
%patch1001 -p1
@ -1293,6 +1297,8 @@ cat > %{buildroot}/%{_prefix}/lib/systemd/system/fix.service <<-'EOF'
ln -sf ../fix.service %{buildroot}/%{_prefix}/lib/systemd/system/remote-fs.target.wants
%endif
%find_lang systemd
%pre
getent group systemd-journal >/dev/null || groupadd -r systemd-journal || :
exit 0