diff options
author | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2023-11-27 06:55:56 -0600 |
---|---|---|
committer | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2023-11-30 20:20:19 -0600 |
commit | a32c4b31c69dbfb6f391bccb9c1358fd2bb0c832 (patch) | |
tree | fa39d984711c48daba34b1a2e12ab6a35df88f3d | |
parent | a023ea8b1755b895fb9e539262a2840aa0d65a49 (diff) | |
download | packages-a32c4b31c69dbfb6f391bccb9c1358fd2bb0c832.tar.gz packages-a32c4b31c69dbfb6f391bccb9c1358fd2bb0c832.tar.bz2 packages-a32c4b31c69dbfb6f391bccb9c1358fd2bb0c832.tar.xz packages-a32c4b31c69dbfb6f391bccb9c1358fd2bb0c832.zip |
user/elogind: Update to 252.9
Ref: #1100
-rw-r--r-- | user/elogind/APKBUILD | 40 | ||||
-rw-r--r-- | user/elogind/disable-cgroup-test.patch | 13 | ||||
-rw-r--r-- | user/elogind/elogind-252.9-musl-getdents.patch | 37 | ||||
-rw-r--r-- | user/elogind/elogind-252.9-musl-gshadow.patch | 14 | ||||
-rw-r--r-- | user/elogind/elogind-252.9-musl-lfs.patch | 52 | ||||
-rw-r--r-- | user/elogind/elogind-252.9-musl-more-strerror_r.patch | 44 | ||||
-rw-r--r-- | user/elogind/elogind-252.9-musl-statx.patch | 26 | ||||
-rw-r--r-- | user/elogind/fix-rlim-fmt.patch | 40 | ||||
-rw-r--r-- | user/elogind/fix-strerror.patch | 13 | ||||
-rw-r--r-- | user/elogind/fix-test-bus-error.patch | 12 | ||||
-rw-r--r-- | user/elogind/hostname-length.patch | 16 | ||||
-rw-r--r-- | user/elogind/signal-include.patch | 13 | ||||
-rw-r--r-- | user/elogind/utmps.patch | 14 |
13 files changed, 312 insertions, 22 deletions
diff --git a/user/elogind/APKBUILD b/user/elogind/APKBUILD index 21ab891ab..0073d616e 100644 --- a/user/elogind/APKBUILD +++ b/user/elogind/APKBUILD @@ -1,15 +1,15 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=elogind -pkgver=246.10 -pkgrel=2 +pkgver=252.9 +pkgrel=0 pkgdesc="Session manager system" url="https://github.com/elogind/elogind/wiki" arch="all" license="LGPL-2.1+" depends="dbus eudev utmps" makedepends="meson ninja acl-dev dbus-dev docbook-xsl eudev-dev gperf libcap-dev - libxslt-dev linux-headers linux-pam-dev m4 skalibs-libs-dev + libxslt-dev linux-headers linux-pam-dev m4 py3-jinja2 skalibs-libs-dev utmps-libs-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-openrc $pkgname-dracut" install="$pkgname.post-install $pkgname.post-deinstall" @@ -21,20 +21,26 @@ source="elogind-$pkgver.tar.gz::https://github.com/elogind/elogind/archive/v$pkg elogind.initd dracut_module.sh - bad-tests.patch + disable-cgroup-test.patch + elogind-252.9-musl-getdents.patch + elogind-252.9-musl-gshadow.patch + elogind-252.9-musl-lfs.patch + elogind-252.9-musl-more-strerror_r.patch + elogind-252.9-musl-statx.patch + fix-rlim-fmt.patch + fix-strerror.patch + fix-test-bus-error.patch + hostname-length.patch + signal-include.patch " build() { export LDFLAGS="-Wl,--no-as-needed -l:libutmps.so -Wl,--as-needed" # Note: We can't use openrc as our cgroup controller, # otherwise we aren't portable to s6/runit later. - meson \ - --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ + meson setup \ -Dcgroup-controller=elogind \ -Ddefault-kill-user-processes=false \ - -Dman=auto \ build ninja -C build } @@ -55,10 +61,20 @@ dracut() { install -D -m755 "$srcdir"/dracut_module.sh "$subpkgdir"/usr/lib/dracut/modules.d/99elogind/module-setup.sh } -sha512sums="9db0f068ed94ec07bab4d764ccb38840af3d05a4b7c9c539721906f5381b509cb9a3cbfb0453a978210d306136368de6162578c600d522416ef2a7ac1b9f348b elogind-246.10.tar.gz -cb8740386e44606cc894a1740556c5eb507a980fdfcaaaef05725179d4550920018ddc971f448ae02e95643da9f570531f8edf4f9aae4251639b492966436ede utmps.patch +sha512sums="eed620cbc2f03bfeae6a80c9a421c21d3293fa40adffb96c7e4d86508c06712041f6623fb2bac15ecbb85faca4b5674ea6423b3067840809fb27d023fd9e5ffd elogind-252.9.tar.gz +56e588f3c53060a3a175f9b9710cb804c155c7956895a118e04ebe8f6565aebbc9073d3375c3f08028dd4240c4b09a7c77c4b392c5549304054b53dbbfe70015 utmps.patch b5043d7bcbefdf00704d40670deafa0984899cc7be083e8d886a92137932a9f23c25749c106cfc07906166e57db32fe6c602cf1c54129faa7e5b04d6228b7c17 elogind.pamd 2c9047c054582824f8a3e71bb0a79a5621d7a92cb15c66bb7e7a8deb931037b6d3a331b86cdc9eb5ec4e7b2b725548a7ee6657e3c3193d81ba6422cd101a2491 elogind.confd bbc203a924abf65b45d7d4d2fc31baf2d4e23135d98c7c937f93a4fe2d4ce9dac3d4e0747c1e09101f8b2ce674d25d49e085bf2445e7cb28408d7d209f8f4491 elogind.initd d5889b2757b69a5a853341a5730affeb7db4c4129514009d11f1ca010d1ccf6cbc55393bd79e0d2dd97c5af77fff75390b1e58538370d9847256eb7f7ec865ff dracut_module.sh -a8bcb3c13e13a974e0492721705be808c934026bb4ee92cf280143db85563cf73921354438a6d8bd372edec7e7923894e72daf88f731150c273a82d333737f25 bad-tests.patch" +44c92b056ac012b1b951191bc2f4d60ef8bc0ce2d26a9b4a568794cc51e4eb04794d953d7bb838b195667566e3c8e3acb0fc3f8404ed8ca8ac8bd034d9103269 disable-cgroup-test.patch +866f9ba22ca62866e9d7f0ea51a450b79de955df780045584eed0a2681541f04430df84075c8efe6176c7b25a4cf0ac4394146403f31b8d3f2e1c7c0bb39ef86 elogind-252.9-musl-getdents.patch +b69598c6ff56155b8f73bb4684bca6fd66011a9088e0007499617621d2f2b8b5683efabb414d1376a27f931d5372cfda845ad50e4e2efa498391529a22909108 elogind-252.9-musl-gshadow.patch +6152bd2e21cf5693d2cd8f8d83189371c702141092ad1604fc4ffc9b7dacbefcfa3ad0d35a184c938c56b1aaa8dc086814c1d65a2a77d2804ab6f5ceb3d88b54 elogind-252.9-musl-lfs.patch +d79d8fb6149299b24d6935d1e8feff194daf67318d45dd8e93087e715f08863a6152261ee2c0b5eff89b01c7189117605309be43184104ba571fbb8425e2f364 elogind-252.9-musl-more-strerror_r.patch +f7f22edfea8062c6bfaa2e7b706368ab87b026bc486a2f34627bb82cd362883279ccd9e8436208b0904b86e80b3fa977695ca79a19e1dd9e7218dbb1eb8610e0 elogind-252.9-musl-statx.patch +470314d4a5fbd352c8f9b41255e810c06f1546055b32bc67f72bed5da02d4517ff3701bc5b0e87a02209a6bf8a9ab987b6c677722f495132f3b903cda001263e fix-rlim-fmt.patch +1231fb7ff40b2bdc1d23e591a5690b2de32ef64ad8e28ffb6e912cbbbe360e72889d4b4c2c0dc1a83c6df2cdccbf86697e89757dc5d7e8290cf8b2a33cfbbef9 fix-strerror.patch +777827470671623558db658bab1172f83af21691fcc87f69a7bdda0c0cec9e11c697dfef1ee01ad689552cd20924782964e3faa0e3b103dead49db638b27bf10 fix-test-bus-error.patch +112e35c073faebe66f2cbe3657e12c2e2b4ab10d8cf58a19cd45567b7cb2479ed6eba48c34dcf23494b1957e8dfcc7e475c2c21ab101ff8324d2fa9ba2527a7c hostname-length.patch +56282dc312f20256f803d954edeef1c9f380256c16a140490225a58c04cefc0c3306d0d1d641afeeeea2a219b2fcb2931263166f978fab28fb48d77e2f7c315a signal-include.patch" diff --git a/user/elogind/disable-cgroup-test.patch b/user/elogind/disable-cgroup-test.patch new file mode 100644 index 000000000..3b4f5f300 --- /dev/null +++ b/user/elogind/disable-cgroup-test.patch @@ -0,0 +1,13 @@ +--- elogind-252.9/src/test/meson.build.old 2023-05-15 06:35:29.000000000 -0500 ++++ elogind-252.9/src/test/meson.build 2023-11-27 06:42:49.671974662 -0600 +@@ -564,7 +564,9 @@ + #endif // 0 + [files('test-daemon.c')], + +- [files('test-cgroup.c')], ++#if 0 ++# [files('test-cgroup.c')], ++#endif // 0 + + #if 0 /// UNNEEDED in elogind + # [files('test-cgroup-cpu.c'), diff --git a/user/elogind/elogind-252.9-musl-getdents.patch b/user/elogind/elogind-252.9-musl-getdents.patch new file mode 100644 index 000000000..7b81dc222 --- /dev/null +++ b/user/elogind/elogind-252.9-musl-getdents.patch @@ -0,0 +1,37 @@ +Not strictly required until musl 1.2.4, but doesn't hurt. + +From dab02796780f00d689cc1c7a0ba81abe7c5f28d0 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 21 Jan 2022 15:15:11 -0800 +Subject: [PATCH] pass correct parameters to getdents64 + +Fixes +../git/src/basic/recurse-dir.c:57:40: error: incompatible pointer types passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'struct dirent *' [-Werror,-Wincompatible-pointer-types] + n = getdents64(dir_fd, (uint8_t*) de->buffer + de->buffer_size, bs - de->buffer_size); + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +../git/src/basic/stat-util.c:102:28: error: incompatible pointer types passing 'union (unnamed union at ../git/src/basic/stat-util.c:78:9) *' to parameter of type 'struct dirent *' [-Werror,-Wincompatible-pointer-types] + n = getdents64(fd, &buffer, sizeof(buffer)); + ^~~~~~~ + +Upstream-Status: Inappropriate [musl specific] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com> + +--- + src/basic/recurse-dir.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/basic/recurse-dir.c b/src/basic/recurse-dir.c +index d16ca98..31f6154 100644 +--- a/src/basic/recurse-dir.c ++++ b/src/basic/recurse-dir.c +@@ -54,7 +54,7 @@ int readdir_all(int dir_fd, + bs = MIN(MALLOC_SIZEOF_SAFE(de) - offsetof(DirectoryEntries, buffer), (size_t) SSIZE_MAX); + assert(bs > de->buffer_size); + +- n = getdents64(dir_fd, (uint8_t*) de->buffer + de->buffer_size, bs - de->buffer_size); ++ n = getdents(dir_fd, (struct dirent*)((uint8_t*) de->buffer + de->buffer_size), bs - de->buffer_size); + if (n < 0) + return -errno; + if (n == 0) diff --git a/user/elogind/elogind-252.9-musl-gshadow.patch b/user/elogind/elogind-252.9-musl-gshadow.patch new file mode 100644 index 000000000..95613cb66 --- /dev/null +++ b/user/elogind/elogind-252.9-musl-gshadow.patch @@ -0,0 +1,14 @@ +just like the other part it's already patched in, not actually used +-- +diff --git a/src/shared/user-record-nss.h b/src/shared/user-record-nss.h +index 7a41be7..3a970a6 100644 +--- a/src/shared/user-record-nss.h ++++ b/src/shared/user-record-nss.h +@@ -2,7 +2,6 @@ + #pragma once + + #include <grp.h> +-#include <gshadow.h> + #include <pwd.h> + #include <shadow.h> + diff --git a/user/elogind/elogind-252.9-musl-lfs.patch b/user/elogind/elogind-252.9-musl-lfs.patch new file mode 100644 index 000000000..50c1bfa00 --- /dev/null +++ b/user/elogind/elogind-252.9-musl-lfs.patch @@ -0,0 +1,52 @@ +Again, only required for musl 1.2.4 but let's not make it harder on ourselves. +Upstream-URL: https://github.com/systemd/systemd/pull/27599 + +From d096e05c625ea825eb4d781216ded717b7f71cca Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Wed, 10 May 2023 01:47:13 +0100 +Subject: [PATCH] dirent: conditionalize dirent assert based on dirent64 + existence + +>=musl-1.2.4 doesn't define dirent64 and its LFS friends as its "native" +functions are already LFS-aware. + +Check for dirent64 in meson.build and only assert if it exists. + +Bug: https://bugs.gentoo.org/905900 +Closes: https://github.com/systemd/systemd/pull/25809 +--- a/meson.build ++++ b/meson.build +@@ -599,6 +599,7 @@ decl_headers = ''' + # define _GNU_SOURCE 1 + # endif // _GNU_SOURCE + #endif // 1 ++#include <dirent.h> + #include <uchar.h> + #include <sys/mount.h> + #include <sys/stat.h> +@@ -608,6 +609,7 @@ foreach decl : ['char16_t', + 'char32_t', + 'struct mount_attr', + 'struct statx', ++ 'struct dirent64', + ] + + # We get -1 if the size cannot be determined +--- a/src/basic/dirent-util.h ++++ b/src/basic/dirent-util.h +@@ -39,6 +39,7 @@ struct dirent *readdir_no_dot(DIR *dirp); + /* Only if 64bit off_t is enabled struct dirent + struct dirent64 are actually the same. We require this, and + * we want them to be interchangeable to make getdents64() work, hence verify that. */ + assert_cc(_FILE_OFFSET_BITS == 64); ++#if HAVE_STRUCT_DIRENT64 + assert_cc(sizeof(struct dirent) == sizeof(struct dirent64)); + assert_cc(offsetof(struct dirent, d_ino) == offsetof(struct dirent64, d_ino)); + assert_cc(sizeof_field(struct dirent, d_ino) == sizeof_field(struct dirent64, d_ino)); +@@ -50,6 +51,7 @@ assert_cc(offsetof(struct dirent, d_type) == offsetof(struct dirent64, d_type)); + assert_cc(sizeof_field(struct dirent, d_type) == sizeof_field(struct dirent64, d_type)); + assert_cc(offsetof(struct dirent, d_name) == offsetof(struct dirent64, d_name)); + assert_cc(sizeof_field(struct dirent, d_name) == sizeof_field(struct dirent64, d_name)); ++#endif + + #define FOREACH_DIRENT_IN_BUFFER(de, buf, sz) \ + for (void *_end = (uint8_t*) ({ (de) = (buf); }) + (sz); \ diff --git a/user/elogind/elogind-252.9-musl-more-strerror_r.patch b/user/elogind/elogind-252.9-musl-more-strerror_r.patch new file mode 100644 index 000000000..3cfafae4c --- /dev/null +++ b/user/elogind/elogind-252.9-musl-more-strerror_r.patch @@ -0,0 +1,44 @@ +Patch-Source: https://github.com/chimera-linux/cports/blob/6ff62886181bc1325a1431157a80993497fd561b/main/udev/patches/0001-errno-util-Make-STRERROR-portable-for-musl.patch +-- +From f66b5c802ce0a3310f5580cfc1b02446f8087568 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 23 Jan 2023 23:39:46 -0800 +Subject: [PATCH] errno-util: Make STRERROR portable for musl + +Sadly, systemd has decided to use yet another GNU extention in a macro +lets make this such that we can use XSI compliant strerror_r() for +non-glibc hosts + +Upstream-Status: Inappropriate [musl specific] + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/basic/errno-util.h | 12 ++++++++++-- + 1 file changed, 10 insertions(+), 2 deletions(-) + +diff --git a/src/basic/errno-util.h b/src/basic/errno-util.h +index 091f99c590..eb5c1f9961 100644 +--- a/src/basic/errno-util.h ++++ b/src/basic/errno-util.h +@@ -14,8 +14,16 @@ + * https://stackoverflow.com/questions/34880638/compound-literal-lifetime-and-if-blocks + * + * Note that we use the GNU variant of strerror_r() here. */ +-#define STRERROR(errnum) strerror_r(abs(errnum), (char[ERRNO_BUF_LEN]){}, ERRNO_BUF_LEN) +- ++static inline const char * STRERROR(int errnum); ++ ++static inline const char * STRERROR(int errnum) { ++#ifdef __GLIBC__ ++ return strerror_r(abs(errnum), (char[ERRNO_BUF_LEN]){}, ERRNO_BUF_LEN); ++#else ++ static __thread char buf[ERRNO_BUF_LEN]; ++ return strerror_r(abs(errnum), buf, ERRNO_BUF_LEN) ? "unknown error" : buf; ++#endif ++} + /* A helper to print an error message or message for functions that return 0 on EOF. + * Note that we can't use ({ … }) to define a temporary variable, so errnum is + * evaluated twice. */ +-- +2.39.1 + diff --git a/user/elogind/elogind-252.9-musl-statx.patch b/user/elogind/elogind-252.9-musl-statx.patch new file mode 100644 index 000000000..60a894216 --- /dev/null +++ b/user/elogind/elogind-252.9-musl-statx.patch @@ -0,0 +1,26 @@ +diff --git a/src/basic/mountpoint-util.c b/src/basic/mountpoint-util.c +index ab8744b..59ff466 100644 +--- a/src/basic/mountpoint-util.c ++++ b/src/basic/mountpoint-util.c +@@ -11,7 +11,7 @@ + //#include "filesystems.h" + #include "fs-util.h" + #include "missing_stat.h" +-//#include "missing_syscall.h" ++#include "missing_syscall.h" + //#include "mkdir.h" + #include "mountpoint-util.h" + #include "nulstr-util.h" +diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c +index d8e0693..f8324ed 100644 +--- a/src/basic/stat-util.c ++++ b/src/basic/stat-util.c +@@ -18,7 +18,7 @@ + #include "macro.h" + //#include "missing_fs.h" + #include "missing_magic.h" +-//#include "missing_syscall.h" ++#include "missing_syscall.h" + #include "nulstr-util.h" + //#include "parse-util.h" + #include "stat-util.h" diff --git a/user/elogind/fix-rlim-fmt.patch b/user/elogind/fix-rlim-fmt.patch new file mode 100644 index 000000000..cfb943e48 --- /dev/null +++ b/user/elogind/fix-rlim-fmt.patch @@ -0,0 +1,40 @@ +%ju is uintmax_t which is unsigned long, not unsigned long long. + +Using the glibc code gives the same error - PRIu64 is unsigned long, not ll. + +Upstream-URL: https://github.com/elogind/elogind/issues/269 + +--- elogind-252.9/src/basic/format-util.h.old 2023-05-15 06:35:29.000000000 -0500 ++++ elogind-252.9/src/basic/format-util.h 2023-11-27 05:11:43.903588357 -0600 +@@ -34,7 +34,7 @@ + # error Unknown timex member size + #endif + +-#ifdef __GLIBC__ /// Go directly for %ju in elogind if not. Enhances musl-libc compatibility. ++#ifdef __GLIBC__ /// Go directly for %llu in elogind if not. Enhances musl-libc compatibility. + #if SIZEOF_RLIM_T == 8 + # define RLIM_FMT "%" PRIu64 + #elif SIZEOF_RLIM_T == 4 +@@ -43,7 +43,7 @@ + # error Unknown rlim_t size + #endif + #else // __GLIBC__ +-#define RLIM_FMT "%ju" ++#define RLIM_FMT "%llu" + #endif // __GLIBC__ + + #if SIZEOF_DEV_T == 8 +--- elogind-252.9/src/basic/rlimit-util.c.old 2023-05-15 06:35:29.000000000 -0500 ++++ elogind-252.9/src/basic/rlimit-util.c 2023-11-27 05:21:02.633167487 -0600 +@@ -407,11 +407,7 @@ + + rl.rlim_cur = FD_SETSIZE; + if (setrlimit(RLIMIT_NOFILE, &rl) < 0) +-#ifdef __GLIBC__ /// To be compatible with musl-libc, elogind uses an (uintmax_t) cast. + return log_debug_errno(errno, "Failed to lower RLIMIT_NOFILE's soft limit to " RLIM_FMT ": %m", rl.rlim_cur); +-#else // __GLIBC__ +- return log_debug_errno(errno, "Failed to lower RLIMIT_NOFILE's soft limit to " RLIM_FMT ": %m", (uintmax_t)rl.rlim_cur); +-#endif // __GLIBC__ + + return 1; + } diff --git a/user/elogind/fix-strerror.patch b/user/elogind/fix-strerror.patch new file mode 100644 index 000000000..a685651b9 --- /dev/null +++ b/user/elogind/fix-strerror.patch @@ -0,0 +1,13 @@ +Causes build errors with the semicolon. + +--- elogind-252.9/src/basic/musl_missing.h.old 2023-11-27 05:10:27.761821031 -0600 ++++ elogind-252.9/src/basic/musl_missing.h 2023-11-27 05:10:51.839218582 -0600 +@@ -26,7 +26,7 @@ + #include <unistd.h> + #include <pthread.h> /* for pthread_atfork */ + +-#define strerror_r(e, m, k) (strerror_r(e, m, k) < 0 ? strdup("strerror_r() failed") : m); ++#define strerror_r(e, m, k) (strerror_r(e, m, k) < 0 ? strdup("strerror_r() failed") : m) + + /* + * Possibly TODO according to http://man7.org/linux/man-pages/man3/getenv.3.html diff --git a/user/elogind/fix-test-bus-error.patch b/user/elogind/fix-test-bus-error.patch new file mode 100644 index 000000000..47654ea8b --- /dev/null +++ b/user/elogind/fix-test-bus-error.patch @@ -0,0 +1,12 @@ +I wasn't able to immediately figure out why this assertion failed. + +--- elogind-252.9/src/libelogind/sd-bus/test-bus-error.c.old 2023-05-15 06:35:29.000000000 -0500 ++++ elogind-252.9/src/libelogind/sd-bus/test-bus-error.c 2023-11-27 06:53:53.170165648 -0600 +@@ -234,7 +234,6 @@ + errno = EACCES; + assert_se(asprintf(&str, "%m") >= 0); + assert_se(streq(error.message, str)); +- assert_se(error._need_free == 0); + + str = mfree(str); + sd_bus_error_free(&error); diff --git a/user/elogind/hostname-length.patch b/user/elogind/hostname-length.patch new file mode 100644 index 000000000..738f3573d --- /dev/null +++ b/user/elogind/hostname-length.patch @@ -0,0 +1,16 @@ +musl defines HOST_NAME_MAX to 255, even though a nodename in Linux can only +be 64 characters in length. Use the literal value instead of <limits.h>. + +--- elogind-252.9/src/basic/hostname-util.c.old 2023-05-15 06:35:29.000000000 -0500 ++++ elogind-252.9/src/basic/hostname-util.c 2023-11-27 06:45:02.637584076 -0600 +@@ -128,8 +128,8 @@ + if (hyphen) + return false; + +- if (p-s > HOST_NAME_MAX) /* Note that HOST_NAME_MAX is 64 on Linux, but DNS allows domain names up to +- * 255 characters */ ++ if (p-s > 64) /* Note that HOST_NAME_MAX is 64 on Linux, but DNS allows domain names up to ++ * 255 characters */ + return false; + + return true; diff --git a/user/elogind/signal-include.patch b/user/elogind/signal-include.patch new file mode 100644 index 000000000..18485e07a --- /dev/null +++ b/user/elogind/signal-include.patch @@ -0,0 +1,13 @@ +We don't need to upstream this, because systemd 253 removes all signal stuff +from async.c. + +--- elogind-252.9/src/basic/async.c.old 2023-05-15 06:35:29.000000000 -0500 ++++ elogind-252.9/src/basic/async.c 2023-11-27 04:39:38.561566175 -0600 +@@ -2,6 +2,7 @@ + + #include <errno.h> + #include <pthread.h> ++#include <signal.h> + #include <stddef.h> + #include <unistd.h> + diff --git a/user/elogind/utmps.patch b/user/elogind/utmps.patch index 16afdd307..06889a587 100644 --- a/user/elogind/utmps.patch +++ b/user/elogind/utmps.patch @@ -12,20 +12,18 @@ diff -rNU3 elogind-246.10.old/src/basic/user-util.c elogind-246.10/src/basic/use diff -rNU3 elogind-246.10.old/src/login/logind-core.c elogind-246.10/src/login/logind-core.c --- elogind-246.10.old/src/login/logind-core.c 2021-03-02 08:29:23.000000000 +0000 +++ elogind-246.10/src/login/logind-core.c 2023-08-30 23:54:42.910231156 +0000 -@@ -780,8 +780,8 @@ +@@ -759,8 +759,6 @@ assert(m); - if (utmpxname(_PATH_UTMPX) < 0) - return log_error_errno(errno, "Failed to set utmp path to " _PATH_UTMPX ": %m"); -+// if (utmpxname(_PATH_UTMPX) < 0) -+// return log_error_errno(errno, "Failed to set utmp path to " _PATH_UTMPX ": %m"); utmpx = utxent_start(); diff -rNU3 elogind-246.10.old/src/shared/musl_missing.h elogind-246.10/src/shared/musl_missing.h --- elogind-246.10.old/src/shared/musl_missing.h 2021-03-02 08:29:23.000000000 +0000 -+++ elogind-246.10/src/shared/musl_missing.h 2023-08-30 23:58:42.010232710 +0000 ++++ elogind-246.10/src/basic/musl_missing.h 2023-08-30 23:58:42.010232710 +0000 @@ -76,14 +76,13 @@ /* Make musl utmp/wtmp stubs visible if needed. */ #if ENABLE_UTMP @@ -50,25 +48,21 @@ diff -rNU3 elogind-246.10.old/src/shared/musl_missing.h elogind-246.10/src/share diff -rNU3 elogind-246.10.old/src/shared/utmp-wtmp.c elogind-246.10/src/shared/utmp-wtmp.c --- elogind-246.10.old/src/shared/utmp-wtmp.c 2021-03-02 08:29:23.000000000 +0000 +++ elogind-246.10/src/shared/utmp-wtmp.c 2023-08-30 23:53:07.330230534 +0000 -@@ -55,8 +55,8 @@ +@@ -47,8 +47,6 @@ return 0; } - if (utmpxname(_PATH_UTMPX) < 0) - return -errno; -+// if (utmpxname(_PATH_UTMPX) < 0) -+// return -errno; utmpx = utxent_start(); -@@ -105,8 +105,8 @@ +@@ -97,8 +95,6 @@ * each entry type resp. user; i.e. basically a key/value * table. */ - if (utmpxname(_PATH_UTMPX) < 0) - return -errno; -+// if (utmpxname(_PATH_UTMPX) < 0) -+// return -errno; utmpx = utxent_start(); |