mirror of
https://github.com/php/php-src.git
synced 2025-01-26 13:44:22 +08:00
Accept int parameter in the first place
This is more liberal then before, where that parameter (if given) had to be IS_LONG, while now it would be converted to int according to weak typing rules. This is, however, more what a developer would expect.
This commit is contained in:
parent
f19950fea0
commit
34defbb784
@ -1507,13 +1507,12 @@ PHP_FUNCTION(openssl_spki_new)
|
||||
const char *spkac = "SPKAC=";
|
||||
zend_long algo = OPENSSL_ALGO_MD5;
|
||||
|
||||
zval *method = NULL;
|
||||
zval * zpkey = NULL;
|
||||
EVP_PKEY * pkey = NULL;
|
||||
NETSCAPE_SPKI *spki=NULL;
|
||||
const EVP_MD *mdtype;
|
||||
|
||||
if (zend_parse_parameters(ZEND_NUM_ARGS(), "rs|z", &zpkey, &challenge, &challenge_len, &method) == FAILURE) {
|
||||
if (zend_parse_parameters(ZEND_NUM_ARGS(), "rs|l", &zpkey, &challenge, &challenge_len, &algo) == FAILURE) {
|
||||
return;
|
||||
}
|
||||
RETVAL_FALSE;
|
||||
@ -1528,14 +1527,6 @@ PHP_FUNCTION(openssl_spki_new)
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
if (method != NULL) {
|
||||
if (Z_TYPE_P(method) == IS_LONG) {
|
||||
algo = Z_LVAL_P(method);
|
||||
} else {
|
||||
php_error_docref(NULL, E_WARNING, "Algorithm must be of supported type");
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
mdtype = php_openssl_get_evp_md_from_algo(algo);
|
||||
|
||||
if (!mdtype) {
|
||||
|
Loading…
Reference in New Issue
Block a user