From: Anatol Belski Date: Tue, 28 Jul 2015 19:06:10 +0000 (+0200) Subject: fix thread safety X-Git-Tag: php-7.0.0beta3~5^2~67 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7104d88c357b03b8082b29bdf66b72e276defc43;p=php fix thread safety --- diff --git a/ext/standard/crypt_sha256.c b/ext/standard/crypt_sha256.c index d79d14510a..38c285942e 100644 --- a/ext/standard/crypt_sha256.c +++ b/ext/standard/crypt_sha256.c @@ -596,8 +596,8 @@ char * php_sha256_crypt(const char *key, const char *salt) password. We can compute an upper bound for the size of the result in advance and so we can prepare the buffer we pass to `sha256_crypt_r'. */ - static char *buffer; - static int buflen; + ZEND_TLS char *buffer; + ZEND_TLS int buflen = 0; int needed = (sizeof(sha256_salt_prefix) - 1 + sizeof(sha256_rounds_prefix) + 9 + 1 + (int)strlen(salt) + 1 + 43 + 1); diff --git a/ext/standard/crypt_sha512.c b/ext/standard/crypt_sha512.c index df5f3d109e..3cef9a3437 100644 --- a/ext/standard/crypt_sha512.c +++ b/ext/standard/crypt_sha512.c @@ -643,8 +643,8 @@ php_sha512_crypt(const char *key, const char *salt) { password. We can compute an upper bound for the size of the result in advance and so we can prepare the buffer we pass to `sha512_crypt_r'. */ - static char *buffer; - static int buflen; + ZEND_TLS char *buffer; + ZEND_TLS int buflen = 0; int needed = (int)(sizeof(sha512_salt_prefix) - 1 + sizeof(sha512_rounds_prefix) + 9 + 1 + strlen(salt) + 1 + 86 + 1);