f6ea51
commit 13e70b397dcb0d1bf4a869b670f041c1d7b730d0
f6ea51
Author: Björn Esser <besser82@fedoraproject.org>
f6ea51
Date:   Sat Jan 20 20:22:53 2018 +0100
f6ea51
f6ea51
    pp: Guard fix for really old bug in glibc libcrypt
f6ea51
f6ea51
diff --git a/pp.c b/pp.c
f6ea51
index d50ad7ddbf..6510c7b15c 100644
f6ea51
--- a/pp.c
f6ea51
+++ b/pp.c
f6ea51
@@ -3650,8 +3650,12 @@ PP(pp_crypt)
f6ea51
 #if defined(__GLIBC__) || defined(__EMX__)
f6ea51
 	if (PL_reentrant_buffer->_crypt_struct_buffer) {
f6ea51
 	    PL_reentrant_buffer->_crypt_struct_buffer->initialized = 0;
f6ea51
-	    /* work around glibc-2.2.5 bug */
f6ea51
+#if (defined(__GLIBC__) && __GLIBC__ == 2) && \
f6ea51
+    (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4)
f6ea51
+	    /* work around glibc-2.2.5 bug, has been fixed at some
f6ea51
+	     * time in glibc-2.3.X */
f6ea51
 	    PL_reentrant_buffer->_crypt_struct_buffer->current_saltbits = 0;
f6ea51
+#endif
f6ea51
 	}
f6ea51
 #endif
f6ea51
     }