42 lines
1.0 KiB
Diff
42 lines
1.0 KiB
Diff
Reported upstream:
|
|
https://bugs.php.net/bug.php?id=67512
|
|
|
|
--- ext/standard/crypt.c.orig 2014-06-25 13:10:38.930010191 -0300
|
|
+++ ext/standard/crypt.c 2014-06-25 13:45:09.762124864 -0300
|
|
@@ -228,18 +228,20 @@
|
|
}
|
|
}
|
|
#else
|
|
-
|
|
-# if defined(HAVE_CRYPT_R) && (defined(_REENTRANT) || defined(_THREAD_SAFE))
|
|
{
|
|
-# if defined(CRYPT_R_STRUCT_CRYPT_DATA)
|
|
+# if defined(HAVE_CRYPT_R)
|
|
+# if defined(CRYPT_R_STRUCT_CRYPT_DATA)
|
|
struct crypt_data buffer;
|
|
memset(&buffer, 0, sizeof(buffer));
|
|
-# elif defined(CRYPT_R_CRYPTD)
|
|
+# elif defined(CRYPT_R_CRYPTD)
|
|
CRYPTD buffer;
|
|
-# else
|
|
-# error Data struct used by crypt_r() is unknown. Please report.
|
|
-# endif
|
|
+# else
|
|
+# error Data struct used by crypt_r() is unknown. Please report.
|
|
+# endif
|
|
crypt_res = crypt_r(password, salt, &buffer);
|
|
+# else
|
|
+ crypt_res = crypt(passwrd, salt);
|
|
+#endif
|
|
if (!crypt_res || (salt[0] == '*' && salt[1] == '0')) {
|
|
return FAILURE;
|
|
} else {
|
|
@@ -247,7 +249,6 @@
|
|
return SUCCESS;
|
|
}
|
|
}
|
|
-# endif
|
|
#endif
|
|
}
|
|
/* }}} */
|