Commit: f53112fdcf746ef73660059e72f8798d0108acac Author: Anthony Ferrara <ircmax...@gmail.com> Fri, 29 Jun 2012 11:37:39 -0400 Parents: 9c1445c6bcee99dbe1eeb9eb8eb6cd626ca72a9c Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=f53112fdcf746ef73660059e72f8798d0108acac Log: Update password.c to use safe_emalloc in sensitive places Changed paths: M ext/standard/password.c Diff: diff --git a/ext/standard/password.c b/ext/standard/password.c index 982ae7d..558cf24 100644 --- a/ext/standard/password.c +++ b/ext/standard/password.c @@ -99,7 +99,7 @@ static int php_password_make_salt(long length, int raw, char *ret TSRMLS_DC) /* } raw_length = length * 3 / 4 + 1; } - buffer = (char *) emalloc(raw_length + 1); + buffer = (char *) safe_emalloc(raw_length, 1, 1); #if PHP_WIN32 { @@ -138,7 +138,7 @@ static int php_password_make_salt(long length, int raw, char *ret TSRMLS_DC) /* memcpy(ret, buffer, length); } else { char *result; - result = emalloc(length + 1); + result = safe_emalloc(length, 1, 1); if (php_password_salt_to64(buffer, raw_length, length, result) == FAILURE) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Generated salt too short"); efree(buffer); @@ -208,7 +208,7 @@ PHP_FUNCTION(password_make_salt) RETURN_NULL(); } - salt = emalloc(length + 1); + salt = safe_emalloc(length, 1, 1); if (php_password_make_salt(length, (int) raw_output, salt TSRMLS_CC) == FAILURE) { efree(salt); RETURN_FALSE; @@ -316,7 +316,7 @@ PHP_FUNCTION(password_hash) salt[salt_len] = 0; - hash = emalloc(salt_len + hash_format_len + 1); + hash = safe_emalloc(salt_len + hash_format_len, 1, 1); sprintf(hash, "%s%s", hash_format, salt); hash[hash_format_len + salt_len] = 0; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php