From 26234865dafd8bfd1528a922bd5e9bf82913756f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Mon, 14 Oct 2024 14:50:32 +0200 Subject: [PATCH] Sync from SUSE:ALP:Source:Standard:1.0 libbsd revision 98948977623d5684d99496508b2a55a8 --- .gitattributes | 23 ++ libbsd-0.11.7.tar.xz | 3 + libbsd-0.11.7.tar.xz.asc | 16 + libbsd-glibc-2.34-closefrom.patch | 31 ++ libbsd.changes | 242 +++++++++++ libbsd.keyring | 654 ++++++++++++++++++++++++++++++ libbsd.spec | 112 +++++ 7 files changed, 1081 insertions(+) create mode 100644 .gitattributes create mode 100644 libbsd-0.11.7.tar.xz create mode 100644 libbsd-0.11.7.tar.xz.asc create mode 100644 libbsd-glibc-2.34-closefrom.patch create mode 100644 libbsd.changes create mode 100644 libbsd.keyring create mode 100644 libbsd.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/libbsd-0.11.7.tar.xz b/libbsd-0.11.7.tar.xz new file mode 100644 index 0000000..72162ce --- /dev/null +++ b/libbsd-0.11.7.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9baa186059ebbf25c06308e9f991fda31f7183c0f24931826d83aa6abd8a0261 +size 418508 diff --git a/libbsd-0.11.7.tar.xz.asc b/libbsd-0.11.7.tar.xz.asc new file mode 100644 index 0000000..fd191c6 --- /dev/null +++ b/libbsd-0.11.7.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEETz509DYFDBD1aWV0uXK/PqSuV6MFAmM+OcMACgkQuXK/PqSu +V6N8dA/9HvRw8/1oxr7+3aIBFQ2bMFwxSojwID5KrBeRQH48vuAxouCtKNAHx4fv +VCSULx9AXwWxy+MV4Ib8fzeJaawJBjdnyN3Dfifyt3GsZESoBkvl0reJSOq3g9wt +LJydT9NNJqB2DNrOg9bemrDt2IeF4yinM6Yv4N2jBe+b1UOHXgdjYtGqchqvcAOi +h14o8MGjHxj3E6Q+m1i+nB2ILrxrJvsXa5M7UD/OHmAj3l1V8gf28g4iOc3WHKzx +nPfdk5h3ErAmxLlNYC875uhgFdCNje4U40xY0Zu492CxQzKUmTfQuNn1PDlRcWbD +aM02u7c9O8M+xTDbHmuedXDylwek2FfPEo8hhb6tgusq6wmPweeGnP1w3SfEcg7b +VxqHqjuumBfEAfUjTZ6gSKgygrFxxfz3liqfUJ35Ndf2vFjeq2kY+lsvdl8qZ+mK +QyDgSQTreZRPhlUEjbij+rAQbMj8sDA1+hIJFMF5iltrx5Q96kRAxpUbl45oR+l0 +w70xz8QpJoY57n9InOUWDZEr/FINL9I2LGBumiPlBQnUOyLzcbOYzxown38gemkH +KdMbC99TCeUQNBnry4VtURQEoDLjWm99gfTgV4bBG9Mry5/Xnhw5Ybv+yPZUP5xJ ++bj7cN8T/g+aAdIgrlccQviLNAtzR4H5LRL5sKI3alnoY7wBIx4= +=oPWW +-----END PGP SIGNATURE----- diff --git a/libbsd-glibc-2.34-closefrom.patch b/libbsd-glibc-2.34-closefrom.patch new file mode 100644 index 0000000..5f8e8eb --- /dev/null +++ b/libbsd-glibc-2.34-closefrom.patch @@ -0,0 +1,31 @@ +From 7b4ebd6521a693f236cad4170fce1bb5237ecae5 Mon Sep 17 00:00:00 2001 +From: Callum Farmer +Date: Thu, 16 Feb 2023 21:26:05 +0000 +Subject: [PATCH] include: Adjust closefrom() per glibc adoption + +Added in glibc 2.34 +https://sourceware.org/git/?p=glibc.git;a=commit;h=607449506f197cc9514408908f41f22537a47a8c + +Signed-off-by: Guillem Jover +--- + include/bsd/unistd.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/include/bsd/unistd.h b/include/bsd/unistd.h +index 167241b..20b0993 100644 +--- a/include/bsd/unistd.h ++++ b/include/bsd/unistd.h +@@ -59,7 +59,11 @@ int bsd_getopt(int argc, char * const argv[], const char *shortopts); + mode_t getmode(const void *set, mode_t mode); + void *setmode(const char *mode_str); + ++#if !defined(__GLIBC__) || \ ++ !__GLIBC_PREREQ(2, 34) || \ ++ !defined(_DEFAULT_SOURCE) + void closefrom(int lowfd); ++#endif + + /* Compatibility with sendmail implementations. */ + #define initsetproctitle(c, a, e) setproctitle_init((c), (a), (e)) +-- +GitLab diff --git a/libbsd.changes b/libbsd.changes new file mode 100644 index 0000000..276bcc9 --- /dev/null +++ b/libbsd.changes @@ -0,0 +1,242 @@ +------------------------------------------------------------------- +Wed Mar 15 20:08:08 UTC 2023 - Callum Farmer + +- Add libbsd-glibc-2.34-closefrom.patch to avoid conflicting + with function provided by glibc 2.34 + +------------------------------------------------------------------- +Fri Oct 7 12:04:07 UTC 2022 - Dirk Müller + +- update to 0.11.7: + * man: Discourage using the library in non-overlay mode + * include: Adjust reallocarray() per glibc adoption + * include: Adjust arc4random() per glibc adoption + * include: explicit_bzero() requires _DEFAULT_SOURCE + * include: Simplify glibc version dependent macro handling + * doc: Switch references from pkg-config to pkgconf + * doc: Add missing empty line to separate README sections + * doc: Refer to the main git repository as primary + * test: Fix explicit_bzero() test on the Hurd + * fgetwln: Add comment about lack of getwline(3) for recommendation + * setmode: Dot not use saveset after free + * man: Rewrite gerprogname(3bsd) from scratch + * man: Lowercase man page title + * man: Document that some arc4random(3) functions are now in glibc 2.36 + * Sync arc4random(3) implementation from OpenBSD + * Fix ELF support for big endian SH + * man: Use -compact also for alternative functions in libbsd(7) + * getentropy: Fix function cast for getauxval() + +------------------------------------------------------------------- +Wed Apr 20 08:53:15 UTC 2022 - Dirk Müller + +- add missing devel requires + +------------------------------------------------------------------- +Fri Apr 15 12:44:11 UTC 2022 - Dirk Müller + +- update to 0.11.6: + * import pwcache module from OpenBSD + * use libmd for hashing functions + * Fix message digest library checks + * Switch libmd wrapper to dlsym + * Enable .init_array support when building with LTO + * Switch md5 back to direct linking +- reenable LTO + +------------------------------------------------------------------- +Mon Jun 7 12:12:37 UTC 2021 - Jan Engelhardt + +- Drop --with-pic (no effect with --disable-static). +- Make description neutral; adhere to noun phrasing. + +------------------------------------------------------------------- +Mon Dec 16 09:18:45 UTC 2019 - Martin Pluskal + +- Update to version 0.10.0: + * Several security related fixes for nlist() reported by Daniel + Hodson and one by Coverity Scan. + * Preliminary and partial Windows porting, thanks to Aaron + Dierking. + * Fix for a leak in the vis family of functions. + * Fix for a configure check to not unnecessarily link against + librt. + * General portability fixes for musl, uClibc, macOS and + GNU/kFreeBSD. + * New architectures support for nlist(). + * Switch the *c() functions to be standalone and add + err(), warn(), errx() and warnx() familiy of functions in case + the system lacks them. + * Several man page fixes. + +------------------------------------------------------------------- +Tue Apr 23 12:29:53 UTC 2019 - Martin Liška + +- Disable LTO - symbol versioning unsupported by GCC (boo#1133096). + +------------------------------------------------------------------- +Wed Jun 27 11:13:12 UTC 2018 - mpluskal@suse.com + +- Update to version 0.9.1: + * Add __arraycount() macro. + * Add flopenat() function. + * Add strtoi() and strtou() functions. + * Add several new vis and unvis functions. + * Add pidfile_fileno() function, and struct pidfh is now opaque. + * The humanize_number() now understands HN_IEC_PREFIXES. + * The fmtcheck() function supports all standard printf(3) + conversions. + * The getentropy(), and thus arc4random() functions will not + block anymore on Linux on boot when there's not enough entropy + available. + * The arc4random() function handles direct clone() calls better. + +------------------------------------------------------------------- +Wed Jan 24 02:06:58 UTC 2018 - avindra@opensuse.org + +- Update to version 0.8.7: + * Fix for gcc with no __has_include or + __has_include_next support + * man: Document on what other BSDs arc4random(3) is present + * Handle several functions now being provided by glibc + * test: Fix nlist(3) unit test on IA64 +- switch to mirror temporarily, per announce: + https://lists.freedesktop.org/archives/libbsd/2018-January/000166.html + +------------------------------------------------------------------- +Thu Oct 19 12:40:58 UTC 2017 - mpluskal@suse.com + +- Update to version 0.8.6: + * test: + + Fix nlist() unit test on IA64 and PowerPC 64-bit ELFv1 + * Fix handling of non-contiguous argv + envp in setproctitle() +- Changes for version 0.8.5: + * test: + + Handle libtool executable names in getprogname() unit test + + Remove unused variable in nlist() unit test + * man: + + Ship and install libbsd(7) + + Update man page sections in titles and references + * Fix ELF definitions for PowerPC in local-elf.h + * Fix ELF definitions for MIPS in local-elf.h +- Changes for version 0.8.4: + * Add support for RISC-V + * Support GCC deprecated attribute for GCC older than 4.5 + * Fix the __progname check to avoid the optimizer discarding the symbol + * Gracefully handle lack of system + * Do not provide funopen() on musl + * Try if is not present + * Do not use legacy BSD u_* types + * Import for some of its macros + +------------------------------------------------------------------- +Tue May 17 16:03:07 UTC 2016 - mpluskal@suse.com + +- Update to version 0.8.3: + * Fix unportable sizeof() usage + * Fix file descriptor leak in HASHFileChunk helper + * Switch URLs from http or git to https + * build: Support clock_gettime() provided in librt + * man: Fix ungrammatical construct + * test: Add a unit test for md5 + * Add missing includes +- Changes for 0.8.2: + * test: Fix success return code for arc4random unit test + * test: Add missing include + * Fix heap buffer overflow in fgetwln() + * test: Fix race condition in headers-*.sh +- Enable internal tests +- Use correct package categories + +------------------------------------------------------------------- +Mon Dec 28 14:13:16 UTC 2015 - idonmez@suse.com + +- Split static library into libbsd-ctor-static package. + +------------------------------------------------------------------- +Sat Dec 26 16:57:51 UTC 2015 - mpluskal@suse.com + +- Update to 0.8.1 + * Use local SHA512 header + * Unify most arc4random Unix hooks into a single file + * Add support for GNU/kFreeBSD for closefrom() and getentropy() + * Fix getentropy implementation to use the correct system hooks + * Add missing copyright and license headers + * Relicense my contribution to BSD-2-clause + * Switch COPYING to Debian copyright machine readable format 1.0 + * Use the non-overlayed libbsd headers when we need our own definitions + * Add missing include to + * Turn inert when using LIBBSD_OVERLAY + * test: Add new unit tests for individual headers usage + * Add support for GNU/Hurd to getentropy() + +------------------------------------------------------------------- +Wed Dec 9 17:05:41 UTC 2015 - mpluskal@suse.com + +- Update to 0.8.0 + * See attached ChangeLog for details + +------------------------------------------------------------------- +Fri May 8 08:42:39 UTC 2015 - mpluskal@suse.com + +- Add gpg signature +- Use fdupes to remove duplicate files +- Cleanup spec file with spec-cleaner + +------------------------------------------------------------------- +Thu Oct 30 20:16:58 UTC 2014 - dhall@wustl.edu + +- update to version 0.7.0 + +------------------------------------------------------------------- +Thu Sep 6 19:14:04 UTC 2012 - jengelh@inai.de + +- Avoid unnecessary complex install line on Redhatish +- Compact file list, add helpful URLs to specfile + +------------------------------------------------------------------- +Thu Sep 6 13:44:20 UTC 2012 - idonmez@suse.com + +- Fix installation on SLE + +------------------------------------------------------------------- +Mon Aug 20 16:30:51 UTC 2012 - crrodriguez@opensuse.org + +- Version 0.4.2, swithes to autoconf build system. + +------------------------------------------------------------------- +Fri Feb 17 00:32:12 UTC 2012 - crrodriguez@opensuse.org + +- Cleanup spec file for factory submission + +------------------------------------------------------------------- +Wed Feb 1 03:14:38 UTC 2012 - jengelh@medozas.de + +- Remove redundant tags/sections per specfile guideline suggestions +- Parallel building using %_smp_mflags + +------------------------------------------------------------------- +Fri Oct 21 21:49:35 UTC 2011 - crrodriguez@opensuse.org + +- Fix missing headers, bug in spec file [bnc#725800] + +------------------------------------------------------------------- +Tue Aug 2 22:29:17 UTC 2011 - crrodriguez@opensuse.org + +- Update to version 0.3.0 + +------------------------------------------------------------------- +Fri Jul 30 02:23:42 UTC 2010 - cristian.rodriguez@opensuse.org + +- update to version 0.2.0 + +------------------------------------------------------------------- +Tue Sep 15 23:47:23 CEST 2009 - crrodriguez@suse.de + + - update to version 0.1.6 + +------------------------------------------------------------------- +Sun Jan 4 21:52:45 CET 2009 - crrodriguez@suse.de + +- first package version + diff --git a/libbsd.keyring b/libbsd.keyring new file mode 100644 index 0000000..ec2130e --- /dev/null +++ b/libbsd.keyring @@ -0,0 +1,654 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.14 (GNU/Linux) + +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 +=d41c +-----END PGP PUBLIC KEY BLOCK----- diff --git a/libbsd.spec b/libbsd.spec new file mode 100644 index 0000000..3b05525 --- /dev/null +++ b/libbsd.spec @@ -0,0 +1,112 @@ +# +# spec file for package libbsd +# +# Copyright (c) 2022 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define lname libbsd0 +Name: libbsd +Version: 0.11.7 +Release: 0 +Summary: Library with functions commonly found on BSD systems +License: BSD-3-Clause +Group: Development/Libraries/C and C++ +URL: https://libbsd.freedesktop.org/ +Source0: https://libbsd.freedesktop.org/releases/libbsd-%{version}.tar.xz +Source1: https://libbsd.freedesktop.org/releases/libbsd-%{version}.tar.xz.asc +Source2: %{name}.keyring +Patch0: libbsd-glibc-2.34-closefrom.patch +BuildRequires: fdupes +BuildRequires: libmd-devel +BuildRequires: openssl-devel +BuildRequires: pkgconfig + +%description +This library provides functions commonly found on BSD systems, and +lacking on others like GNU systems, thus making it easier to port projects +with strong BSD origins, without needing to embed the same code over and +over again on each project. + +%package -n %{lname} +Summary: Library with functions commonly found on BSD systems +Group: System/Libraries + +%description -n %{lname} +This library provides functions commonly found on BSD systems, and +lacking on others like GNU systems, thus making it easier to port projects +with strong BSD origins, without needing to embed the same code over and +over again on each project. + +%package devel +Summary: Development headers and files for libbsd +Group: Development/Libraries/C and C++ +Requires: %{lname} = %{version} +Requires: glibc-devel +Requires: libmd-devel + +%description devel +This library provides functions commonly found on BSD systems, and +lacking on others like GNU systems, thus making it easier to port projects +with strong BSD origins, without needing to embed the same code over and +over again on each project. + +%package ctor-static +Summary: Development headers and files for libbsd +Group: Development/Libraries/C and C++ +Requires: %{lname} = %{version}-%{release} +Requires: pkgconfig + +%description ctor-static +The libbsd-ctor static library is required if setproctitle() is to be used +when libbsd is loaded via dlopen() from a threaded program. This can be +configured using "pkg-config --libs libbsd-ctor". + +%prep +%autosetup -p1 + +%build +export CFLAGS="%{optflags} -ffat-lto-objects" +%configure --disable-static +%make_build + +%install +%make_install +find %{buildroot} -type f -name "*.la" -delete -print +%fdupes -s %{buildroot} + +%check +%make_build check + +%post -n %{lname} -p /sbin/ldconfig +%postun -n %{lname} -p /sbin/ldconfig + +%files -n %{lname} +%license COPYING +%doc ChangeLog +%{_libdir}/libbsd.so.0* + +%files devel +%{_includedir}/bsd +%{_libdir}/libbsd.so +%{_mandir}/man3/* +%{_mandir}/man7/* +%{_libdir}/pkgconfig/libbsd.pc +%{_libdir}/pkgconfig/libbsd-overlay.pc + +%files ctor-static +%{_libdir}/libbsd-ctor.a +%{_libdir}/pkgconfig/libbsd-ctor.pc + +%changelog