Skip to content

Commit aab49e9

Browse files
committed
1 parent 8d5e953 commit aab49e9

File tree

3 files changed

+24
-1
lines changed

3 files changed

+24
-1
lines changed

NEWS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ PHP NEWS
44
- COM:
55
. Fixed bug #62146 com_dotnet cannot be built shared. (Johannes)
66

7+
- Core:
8+
. Fixed CVE-2012-2143. (Solar Designer)
9+
710
- Fileinfo:
811
. Fixed magic file regex support. (Felipe)
912

ext/standard/crypt_freesec.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -629,7 +629,8 @@ _crypt_extended_r(const char *key, const char *setting,
629629
*/
630630
q = (u_char *) keybuf;
631631
while (q - (u_char *) keybuf < sizeof(keybuf)) {
632-
if ((*q++ = *key << 1))
632+
*q++ = *key << 1;
633+
if (*key)
633634
key++;
634635
}
635636
if (des_setkey((u_char *) keybuf, data))
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
--TEST--
2+
crypt() function - characters > 0x80
3+
--SKIPIF--
4+
<?php
5+
if (!function_exists('crypt')) {
6+
die("SKIP crypt() is not available");
7+
}
8+
?>
9+
--FILE--
10+
<?php
11+
var_dump(crypt("À1234abcd", "99"));
12+
var_dump(crypt("À9234abcd", "99"));
13+
var_dump(crypt("À1234abcd", "_01234567"));
14+
var_dump(crypt("À9234abcd", "_01234567"));
15+
--EXPECT--
16+
string(13) "99PxawtsTfX56"
17+
string(13) "99jcVcGxUZOWk"
18+
string(20) "_01234567IBjxKliXXRQ"
19+
string(20) "_012345678OSGpGQRVHA"

0 commit comments

Comments
 (0)