forked from pool/glibc
Andreas Schwab
06263ee4ef
- Update to glibc 2.27 * Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf, sinf, sincosf and tan with FMA * Optimized x86-64 trunc and truncf for processors with SSE4.1 * Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and sincosf * In order to support faster and safer process termination the malloc API family of functions will no longer print a failure address and stack backtrace after detecting heap corruption * The abort function terminates the process immediately, without flushing stdio streams * On platforms where long double has the IEEE binary128 format (aarch64, alpha, mips64, riscv, s390 and sparc), the math library now implements _Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015 These are the same interfaces added in version 2.26 for some platforms where this format is supported but is not the format of long double * On platforms with support for _Float64x (aarch64, alpha, i386, ia64, mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now implements interfaces for that type, as defined by ISO/IEC TS 18661-3:2015 * The math library now implements interfaces for the _Float32, _Float64 and _Float32x types, as defined by ISO/IEC TS 18661-3:2015 * glibc now implements the memfd_create and mlock2 functions on Linux * Support for memory protection keys was added * The copy_file_range function was added * The ldconfig utility now processes `include' directives using the C/POSIX collation ordering * Support for two grammatical forms of month names has been added * Support for the RISC-V ISA running on Linux has been added * Statically compiled applications attempting to load locales compiled for the OBS-URL: https://build.opensuse.org/request/show/572614 OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
99 lines
3.0 KiB
Diff
99 lines
3.0 KiB
Diff
Index: glibc-2.27/crypt/Makefile
|
|
===================================================================
|
|
--- glibc-2.27.orig/crypt/Makefile
|
|
+++ glibc-2.27/crypt/Makefile
|
|
@@ -23,14 +23,18 @@ subdir := crypt
|
|
include ../Makeconfig
|
|
|
|
headers := crypt.h
|
|
+headers += gnu-crypt.h ow-crypt.h
|
|
|
|
-extra-libs := libcrypt
|
|
+extra-libs := libcrypt libowcrypt
|
|
extra-libs-others := $(extra-libs)
|
|
|
|
libcrypt-routines := crypt-entry md5-crypt sha256-crypt sha512-crypt crypt \
|
|
crypt_util
|
|
|
|
-tests := cert md5c-test sha256c-test sha512c-test badsalttest
|
|
+libcrypt-routines += crypt_blowfish x86 wrapper
|
|
+libowcrypt-routines := crypt_gensalt wrapper-gensalt
|
|
+
|
|
+tests := cert md5c-test sha256c-test sha512c-test
|
|
|
|
ifeq ($(crypt-in-libc),yes)
|
|
routines += $(libcrypt-routines)
|
|
Index: glibc-2.27/crypt/Versions
|
|
===================================================================
|
|
--- glibc-2.27.orig/crypt/Versions
|
|
+++ glibc-2.27/crypt/Versions
|
|
@@ -3,3 +3,8 @@ libcrypt {
|
|
crypt; crypt_r; encrypt; encrypt_r; fcrypt; setkey; setkey_r;
|
|
}
|
|
}
|
|
+libowcrypt {
|
|
+ OW_CRYPT_1.0 {
|
|
+ crypt_gensalt; crypt_gensalt_rn; crypt_gensalt_ra;
|
|
+ }
|
|
+}
|
|
Index: glibc-2.27/crypt/crypt-entry.c
|
|
===================================================================
|
|
--- glibc-2.27.orig/crypt/crypt-entry.c
|
|
+++ glibc-2.27/crypt/crypt-entry.c
|
|
@@ -71,7 +71,7 @@ extern struct crypt_data _ufc_foobar;
|
|
*/
|
|
|
|
char *
|
|
-__crypt_r (const char *key, const char *salt,
|
|
+__des_crypt_r (const char *key, const char *salt,
|
|
struct crypt_data * __restrict data)
|
|
{
|
|
ufc_long res[4];
|
|
@@ -152,6 +152,7 @@ __crypt_r (const char *key, const char *
|
|
|
|
return data->crypt_3_buf;
|
|
}
|
|
+#if 0
|
|
weak_alias (__crypt_r, crypt_r)
|
|
|
|
char *
|
|
@@ -190,3 +191,4 @@ __fcrypt (const char *key, const char *s
|
|
return crypt (key, salt);
|
|
}
|
|
#endif
|
|
+#endif
|
|
Index: glibc-2.27/crypt/crypt-private.h
|
|
===================================================================
|
|
--- glibc-2.27.orig/crypt/crypt-private.h
|
|
+++ glibc-2.27/crypt/crypt-private.h
|
|
@@ -65,7 +65,7 @@ extern void __encrypt_r (char * __restri
|
|
struct crypt_data * __restrict __data);
|
|
|
|
/* crypt-entry.c */
|
|
-extern char *__crypt_r (const char *__key, const char *__salt,
|
|
+extern char *__des_crypt_r (const char *__key, const char *__salt,
|
|
struct crypt_data * __restrict __data);
|
|
extern char *fcrypt (const char *key, const char *salt);
|
|
|
|
Index: glibc-2.27/shlib-versions
|
|
===================================================================
|
|
--- glibc-2.27.orig/shlib-versions
|
|
+++ glibc-2.27/shlib-versions
|
|
@@ -59,6 +59,7 @@ libnsl=1
|
|
|
|
# This defines the shared library version numbers we will install.
|
|
libcrypt=1
|
|
+libowcrypt=1
|
|
|
|
# The gross patch for programs assuming broken locale implementations.
|
|
libBrokenLocale=1
|
|
Index: glibc-2.27/sysdeps/unix/sysv/linux/libowcrypt.abilist
|
|
===================================================================
|
|
--- /dev/null
|
|
+++ glibc-2.27/sysdeps/unix/sysv/linux/libowcrypt.abilist
|
|
@@ -0,0 +1,4 @@
|
|
+OW_CRYPT_1.0 OW_CRYPT_1.0 A
|
|
+OW_CRYPT_1.0 crypt_gensalt F
|
|
+OW_CRYPT_1.0 crypt_gensalt_ra F
|
|
+OW_CRYPT_1.0 crypt_gensalt_rn F
|