summaryrefslogtreecommitdiff
path: root/ext/standard/crypt_freesec.c
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2012-05-29 23:07:27 -0700
committerStanislav Malyshev <stas@php.net>2012-05-29 23:08:04 -0700
commit692b3bcd88ece3eefbc5131ecdf971ff18f191cf (patch)
tree7cb6a44c7eb1b248807685829c919cb4fedc77de /ext/standard/crypt_freesec.c
parent6074da9809dec8018e6affe6faf1a77f524bff97 (diff)
parentaab49e934de1fff046e659cbec46e3d053b41c34 (diff)
downloadphp-git-692b3bcd88ece3eefbc5131ecdf971ff18f191cf.tar.gz
Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3: fix CVE-2012-2143
Diffstat (limited to 'ext/standard/crypt_freesec.c')
-rw-r--r--ext/standard/crypt_freesec.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ext/standard/crypt_freesec.c b/ext/standard/crypt_freesec.c
index 49c397cca1..0a5c3ba5fa 100644
--- a/ext/standard/crypt_freesec.c
+++ b/ext/standard/crypt_freesec.c
@@ -629,7 +629,8 @@ _crypt_extended_r(const char *key, const char *setting,
*/
q = (u_char *) keybuf;
while (q - (u_char *) keybuf < sizeof(keybuf)) {
- if ((*q++ = *key << 1))
+ *q++ = *key << 1;
+ if (*key)
key++;
}
if (des_setkey((u_char *) keybuf, data))