From 812c7d1c686794ed21ddde8997af5be912bae28de9138a60b7dc5394865fa13b Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Thu, 2 Aug 2018 09:54:00 +0000 Subject: [PATCH] Accepting request 627014 from home:Andreas_Schwab:Factory Split libcrypt out of glibc OBS-URL: https://build.opensuse.org/request/show/627014 OBS-URL: https://build.opensuse.org/package/show/Base:System/libxcrypt?expand=0&rev=1 --- .gitattributes | 23 ++++++++ .gitignore | 1 + baselibs.conf | 4 ++ libxcrypt-4.1.0.tar.gz | 3 + libxcrypt.changes | 33 +++++++++++ libxcrypt.spec | 128 +++++++++++++++++++++++++++++++++++++++++ 6 files changed, 192 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 baselibs.conf create mode 100644 libxcrypt-4.1.0.tar.gz create mode 100644 libxcrypt.changes create mode 100644 libxcrypt.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /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/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..9aea6e2 --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,4 @@ +libcrypt1 +libxcrypt-devel + requires -libxcrypt- + requires "libcrypt1- = " diff --git a/libxcrypt-4.1.0.tar.gz b/libxcrypt-4.1.0.tar.gz new file mode 100644 index 0000000..b8e74bc --- /dev/null +++ b/libxcrypt-4.1.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:858d07f39b021ba941fbd221775fe777c6c2abf48038400cf83d7d9285cbcfdd +size 170134 diff --git a/libxcrypt.changes b/libxcrypt.changes new file mode 100644 index 0000000..57b4515 --- /dev/null +++ b/libxcrypt.changes @@ -0,0 +1,33 @@ +------------------------------------------------------------------- +Wed Aug 1 08:50:25 UTC 2018 - schwab@suse.de + +- Update to libxcrypt 4.1.0 + * Fix spelling of SUSE. + * Lower the minimum required automake version to 1.14. + * Fix build with USE_SWAPCONTEXT turned off. + * Extend --enable-weak-hashes configure option to accept optional + "glibc" parameter. + * Fix the leak of obtained random bytes. + * Check expected output strings for deterministic methods. + * Fix memory leak in crypt_sha1_rn. + * Fix read of random bytes out of bounds in gensalt_sha1_rn. + * Make it possible to disable individual hashes at configure time. + * Make salt validation pickier. + * Replace crypt-sunmd5.c with BSD-licensed cleanroom reimplementation. + * Make crypt_gensalt for $sha1 deterministic. + * Fix incorrect output-size computation in crypt_sha1_rn. + * Add docs for SHA1, MD5/Sun, NTHASH. + * Introduce CRYPT_GENSALT_IMPLEMENTS_* feature test macros. + * Install libcrypt.pc symlink along with libxcrypt.pc. + * Extend --enable-obsolete-api configure option. + * Extend overall test coverage. + +------------------------------------------------------------------- +Wed May 23 10:01:29 UTC 2018 - schwab@suse.de + +- Update to libxcrypt 4.0.1 + +------------------------------------------------------------------- +Wed May 9 13:51:35 UTC 2018 - schwab@suse.de + +- ABI compatible replacement for libcypt from glibc diff --git a/libxcrypt.spec b/libxcrypt.spec new file mode 100644 index 0000000..ac41382 --- /dev/null +++ b/libxcrypt.spec @@ -0,0 +1,128 @@ +# +# spec file for package libxcrypt +# +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# +# 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 http://bugs.opensuse.org/ +# + + +Name: libxcrypt +Version: 4.1.0 +Release: 0 +Summary: Extended crypt library for DES, MD5, Blowfish and others +License: GPL-3-or-later AND LGPL-2.1-or-later AND BSD-2-Clause AND BSD-3-Clause AND SUSE-Public-Domain +URL: https://github.com/besser82/%{name} +Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: libtool +BuildRequires: pkgconfig + +%description +libxcrypt is a modern library for one-way hashing of passwords. It +supports DES, MD5, SHA-2-256, SHA-2-512, and bcrypt-based password +hashes, and provides the traditional Unix 'crypt' and 'crypt_r' +interfaces, as well as a set of extended interfaces pioneered by +Openwall Linux, 'crypt_rn', 'crypt_ra', 'crypt_gensalt', +'crypt_gensalt_rn', and 'crypt_gensalt_ra'. + +%package -n libcrypt1 +Summary: Extended crypt library for DES, MD5, Blowfish and others +License: LGPL-2.1-or-later AND BSD-2-Clause AND BSD-3-Clause AND SUSE-Public-Domain +Group: System/Libraries + +%description -n libcrypt1 +libxcrypt is a modern library for one-way hashing of passwords. It +supports DES, MD5, SHA-2-256, SHA-2-512, and bcrypt-based password +hashes, and provides the traditional Unix 'crypt' and 'crypt_r' +interfaces, as well as a set of extended interfaces pioneered by +Openwall Linux, 'crypt_rn', 'crypt_ra', 'crypt_gensalt', +'crypt_gensalt_rn', and 'crypt_gensalt_ra'. + +%package devel +Summary: Development files for %{name} +License: LGPL-2.1-or-later AND BSD-2-Clause AND BSD-3-Clause AND SUSE-Public-Domain +Group: Development/Languages/C and C++ +Requires: libcrypt1 = %{version} +Requires: pkgconfig +Provides: glibc-devel:%{_libdir}/libcrypt.so + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%package devel-static +Summary: Static library for -static linking with %{name} +Requires: %{name}-devel = %{version} +Requires: glibc-devel-static +Provides: glibc-devel-static:%{_libdir}/libcrypt.a + +%description devel-static +This package contains the libxcrypt static libraries for -static +linking. You don't need this, unless you link statically, which +is highly discouraged. + + +%prep +%autosetup -p 1 + +%build +autoreconf -fi +%configure \ + --disable-silent-rules \ + --enable-shared \ + --enable-static \ + --enable-obsolete-api \ + --enable-hashes=all \ + --with-pkgconfigdir=%{_libdir}/pkgconfig +%make_build + +%install +%make_install +find %{buildroot}%{_libdir} -name '*.la' -print -delete + +%check +%make_build check || \ + { + rc=$?; + echo "-----BEGIN TESTLOG-----"; + %{__cat} test-suite.log; + echo "-----END TESTLOG-----"; + exit $rc; + } + +%post -n libcrypt1 -p /sbin/ldconfig +%postun -n libcrypt1 -p /sbin/ldconfig + +%files -n libcrypt1 +%license COPYING.LIB LICENSING +%doc AUTHORS NEWS README THANKS +%{_libdir}/libcrypt.so.* +%{_libdir}/libowcrypt.so.* + +%files devel +%doc TODO +%{_libdir}/libcrypt.so +%{_libdir}/libowcrypt.so +%{_includedir}/crypt.h +%{_libdir}/pkgconfig/libcrypt.pc +%{_libdir}/pkgconfig/%{name}.pc +%{_mandir}/man3/crypt_rn.3.* +%{_mandir}/man3/crypt_gensalt.3.* +%{_mandir}/man5/crypt.5.* + +%files devel-static +%{_libdir}/libcrypt.a +%{_libdir}/libowcrypt.a + +%changelog