]> granicus.if.org Git - php/commitdiff
fix thread safety
authorAnatol Belski <ab@php.net>
Tue, 28 Jul 2015 19:06:10 +0000 (21:06 +0200)
committerAnatol Belski <ab@php.net>
Wed, 29 Jul 2015 08:36:28 +0000 (10:36 +0200)
ext/standard/crypt_sha256.c
ext/standard/crypt_sha512.c

index d79d14510a2358f18aca78bce80aa9cbb30e7061..38c285942e2c45e8f44f52222757356353e2c818 100644 (file)
@@ -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);
index df5f3d109e6cbdf701d926578f4cfc1beb70ad8f..3cef9a3437583b605a6e72e2fc8887d21a6ec1cd 100644 (file)
@@ -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);