summaryrefslogtreecommitdiffstats
path: root/main/php/php-fix-crypt.patch
blob: caa6a2e22dcbb7259adac7b509e8981ad659624e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Reported upstream:
https://bugs.php.net/bug.php?id=67512

--- php-5.5.13/ext/standard/crypt.c.orig	2014-06-25 13:10:38.930010191 -0300
+++ php-5.5.13/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
 }
 /* }}} */