]> granicus.if.org Git - php/commitdiff
Merge branch 'PHP-5.6' into PHP-7.0
authorAnatol Belski <ab@php.net>
Sat, 10 Sep 2016 00:44:21 +0000 (02:44 +0200)
committerAnatol Belski <ab@php.net>
Sat, 10 Sep 2016 00:44:21 +0000 (02:44 +0200)
* PHP-5.6:
  Bug #73058 crypt broken when salt is 'too' long

1  2 
ext/standard/crypt.c

index bca3bd1363ee43ffc2cc0ab52972284df158d0bb,1b83d6e12770869f6cde71e65e8d88caecd310a1..66b37eb79ea77cf1e6127c746e40cdc5c0f4a560
@@@ -202,16 -196,11 +202,8 @@@ PHPAPI zend_string *php_crypt(const cha
                } else if (
                                salt[0] == '$' &&
                                salt[1] == '2' &&
 -                              salt[3] == '$' &&
 -                              salt[4] >= '0' && salt[4] <= '3' &&
 -                              salt[5] >= '0' && salt[5] <= '9' &&
 -                              salt[6] == '$') {
 +                              salt[3] == '$') {
                        char output[PHP_MAX_SALT_LEN + 1];
-                       int k = 7;
-                       while (isalnum(salt[k]) || '.' == salt[k] || '/' == salt[k]) {
-                               k++;
-                       }
-                       if (k != salt_len) {
-                               return NULL;
-                       }
  
                        memset(output, 0, PHP_MAX_SALT_LEN + 1);