A new user interface for you! Read more...

File glibc-2.14-crypt.diff of Package glibc

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