File glibc-2.14-crypt.diff of Package glibc.15121
Index: glibc-2.25/crypt/Makefile
===================================================================
--- glibc-2.25.orig/crypt/Makefile
+++ glibc-2.25/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.25/crypt/Versions
===================================================================
--- glibc-2.25.orig/crypt/Versions
+++ glibc-2.25/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.25/crypt/crypt-entry.c
===================================================================
--- glibc-2.25.orig/crypt/crypt-entry.c
+++ glibc-2.25/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.25/crypt/crypt-private.h
===================================================================
--- glibc-2.25.orig/crypt/crypt-private.h
+++ glibc-2.25/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.25/shlib-versions
===================================================================
--- glibc-2.25.orig/shlib-versions
+++ glibc-2.25/shlib-versions
@@ -58,6 +58,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.25/sysdeps/unix/sysv/linux/libowcrypt.abilist
===================================================================
--- /dev/null
+++ glibc-2.25/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