|
|
|
@ -61,13 +61,6 @@ |
|
|
|
|
|
|
|
#define DEBUG_SMIME 0 |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arg2and3_force_ref, 0) |
|
|
|
ZEND_ARG_PASS_INFO(0) |
|
|
|
ZEND_ARG_PASS_INFO(1) |
|
|
|
ZEND_ARG_PASS_INFO(1) |
|
|
|
ZEND_END_ARG_INFO(); |
|
|
|
|
|
|
|
/* FIXME: Use the openssl constants instead of |
|
|
|
* enum. It is now impossible to match real values |
|
|
|
* against php constants. Also sorry to break the |
|
|
|
@ -102,69 +95,369 @@ PHP_FUNCTION(openssl_decrypt); |
|
|
|
|
|
|
|
PHP_FUNCTION(openssl_dh_compute_key); |
|
|
|
|
|
|
|
/* {{{ arginfo */ |
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_x509_export_to_file, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_ARG_INFO(0, outfilename) |
|
|
|
ZEND_ARG_INFO(0, notext) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_x509_export, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_ARG_INFO(1, out) |
|
|
|
ZEND_ARG_INFO(0, notext) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_x509_check_private_key, 0) |
|
|
|
ZEND_ARG_INFO(0, cert) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_x509_parse, 0) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_ARG_INFO(0, shortname) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_x509_checkpurpose, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, x509cert) |
|
|
|
ZEND_ARG_INFO(0, purpose) |
|
|
|
ZEND_ARG_INFO(0, cainfo) /* array */ |
|
|
|
ZEND_ARG_INFO(0, untrustedfile) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_x509_read, 0) |
|
|
|
ZEND_ARG_INFO(0, cert) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_x509_free, 0) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkcs12_export_to_file, 0, 0, 4) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_ARG_INFO(0, filename) |
|
|
|
ZEND_ARG_INFO(0, priv_key) |
|
|
|
ZEND_ARG_INFO(0, pass) |
|
|
|
ZEND_ARG_INFO(0, args) /* array */ |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_pkcs12_export, 0) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_ARG_INFO(1, out) |
|
|
|
ZEND_ARG_INFO(0, priv_key) |
|
|
|
ZEND_ARG_INFO(0, pass) |
|
|
|
ZEND_ARG_INFO(0, args) /* array */ |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_pkcs12_read, 0) |
|
|
|
ZEND_ARG_INFO(0, PKCS12) |
|
|
|
ZEND_ARG_INFO(1, certs) /* array */ |
|
|
|
ZEND_ARG_INFO(0, pass) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_csr_export_to_file, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, csr) |
|
|
|
ZEND_ARG_INFO(0, outfilename) |
|
|
|
ZEND_ARG_INFO(0, notext) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_csr_export, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, csr) |
|
|
|
ZEND_ARG_INFO(1, out) |
|
|
|
ZEND_ARG_INFO(0, notext) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_csr_sign, 0, 0, 4) |
|
|
|
ZEND_ARG_INFO(0, csr) |
|
|
|
ZEND_ARG_INFO(0, x509) |
|
|
|
ZEND_ARG_INFO(0, priv_key) |
|
|
|
ZEND_ARG_INFO(0, days) |
|
|
|
ZEND_ARG_INFO(0, config_args) /* array */ |
|
|
|
ZEND_ARG_INFO(0, serial) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_csr_new, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, dn) /* array */ |
|
|
|
ZEND_ARG_INFO(1, privkey) |
|
|
|
ZEND_ARG_INFO(0, configargs) |
|
|
|
ZEND_ARG_INFO(0, extraattribs) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_csr_get_subject, 0) |
|
|
|
ZEND_ARG_INFO(0, csr) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_csr_get_public_key, 0) |
|
|
|
ZEND_ARG_INFO(0, csr) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkey_new, 0, 0, 0) |
|
|
|
ZEND_ARG_INFO(0, configargs) /* array */ |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkey_export_to_file, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, outfilename) |
|
|
|
ZEND_ARG_INFO(0, passphrase) |
|
|
|
ZEND_ARG_INFO(0, config_args) /* array */ |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkey_export, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(1, out) |
|
|
|
ZEND_ARG_INFO(0, passphrase) |
|
|
|
ZEND_ARG_INFO(0, config_args) /* array */ |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_pkey_get_public, 0) |
|
|
|
ZEND_ARG_INFO(0, cert) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_pkey_free, 0) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkey_get_private, 0, 0, 1) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, passphrase) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_pkey_get_details, 0) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkcs7_verify, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, filename) |
|
|
|
ZEND_ARG_INFO(0, flags) |
|
|
|
ZEND_ARG_INFO(0, signerscerts) |
|
|
|
ZEND_ARG_INFO(0, cainfo) /* array */ |
|
|
|
ZEND_ARG_INFO(0, extracerts) |
|
|
|
ZEND_ARG_INFO(0, content) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkcs7_encrypt, 0, 0, 4) |
|
|
|
ZEND_ARG_INFO(0, infile) |
|
|
|
ZEND_ARG_INFO(0, outfile) |
|
|
|
ZEND_ARG_INFO(0, recipcerts) |
|
|
|
ZEND_ARG_INFO(0, headers) /* array */ |
|
|
|
ZEND_ARG_INFO(0, flags) |
|
|
|
ZEND_ARG_INFO(0, cipher) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkcs7_sign, 0, 0, 5) |
|
|
|
ZEND_ARG_INFO(0, infile) |
|
|
|
ZEND_ARG_INFO(0, outfile) |
|
|
|
ZEND_ARG_INFO(0, signcert) |
|
|
|
ZEND_ARG_INFO(0, signkey) |
|
|
|
ZEND_ARG_INFO(0, headers) /* array */ |
|
|
|
ZEND_ARG_INFO(0, flags) |
|
|
|
ZEND_ARG_INFO(0, extracertsfilename) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_pkcs7_decrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, infilename) |
|
|
|
ZEND_ARG_INFO(0, outfilename) |
|
|
|
ZEND_ARG_INFO(0, recipcert) |
|
|
|
ZEND_ARG_INFO(0, recipkey) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_private_encrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, crypted) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, padding) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_private_decrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, crypted) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, padding) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_public_encrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, crypted) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, padding) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_public_decrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, crypted) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, padding) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_error_string, 0) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_sign, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(1, signature) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, method) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_verify, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, signature) |
|
|
|
ZEND_ARG_INFO(0, key) |
|
|
|
ZEND_ARG_INFO(0, method) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_seal, 0) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(1, sealdata) |
|
|
|
ZEND_ARG_INFO(1, ekeys) /* arary */ |
|
|
|
ZEND_ARG_INFO(0, pubkeys) /* array */ |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_open, 0) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(1, opendata) |
|
|
|
ZEND_ARG_INFO(0, ekey) |
|
|
|
ZEND_ARG_INFO(0, privkey) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_get_md_methods, 0, 0, 0) |
|
|
|
ZEND_ARG_INFO(0, aliases) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_get_cipher_methods, 0, 0, 0) |
|
|
|
ZEND_ARG_INFO(0, aliases) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_digest, 0, 0, 2) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, method) |
|
|
|
ZEND_ARG_INFO(0, raw_output) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_encrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, method) |
|
|
|
ZEND_ARG_INFO(0, password) |
|
|
|
ZEND_ARG_INFO(0, raw_output) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO_EX(arginfo_openssl_decrypt, 0, 0, 3) |
|
|
|
ZEND_ARG_INFO(0, data) |
|
|
|
ZEND_ARG_INFO(0, method) |
|
|
|
ZEND_ARG_INFO(0, password) |
|
|
|
ZEND_ARG_INFO(0, raw_input) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
|
|
|
|
static |
|
|
|
ZEND_BEGIN_ARG_INFO(arginfo_openssl_dh_compute_key, 0) |
|
|
|
ZEND_ARG_INFO(0, pub_key) |
|
|
|
ZEND_ARG_INFO(0, dh_key) |
|
|
|
ZEND_END_ARG_INFO() |
|
|
|
/* }}} */ |
|
|
|
/* {{{ openssl_functions[] |
|
|
|
*/ |
|
|
|
const zend_function_entry openssl_functions[] = { |
|
|
|
/* public/private key functions */ |
|
|
|
PHP_FE(openssl_pkey_free, NULL) |
|
|
|
PHP_FE(openssl_pkey_new, NULL) |
|
|
|
PHP_FE(openssl_pkey_export, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_pkey_export_to_file, NULL) |
|
|
|
PHP_FE(openssl_pkey_get_private, NULL) |
|
|
|
PHP_FE(openssl_pkey_get_public, NULL) |
|
|
|
PHP_FE(openssl_pkey_get_details, NULL) |
|
|
|
PHP_FE(openssl_pkey_free, arginfo_openssl_pkey_free) |
|
|
|
PHP_FE(openssl_pkey_new, arginfo_openssl_pkey_new) |
|
|
|
PHP_FE(openssl_pkey_export, arginfo_openssl_pkey_export) |
|
|
|
PHP_FE(openssl_pkey_export_to_file, arginfo_openssl_pkey_export_to_file) |
|
|
|
PHP_FE(openssl_pkey_get_private, arginfo_openssl_pkey_get_private) |
|
|
|
PHP_FE(openssl_pkey_get_public, arginfo_openssl_pkey_get_public) |
|
|
|
PHP_FE(openssl_pkey_get_details, arginfo_openssl_pkey_get_details) |
|
|
|
|
|
|
|
PHP_FALIAS(openssl_free_key, openssl_pkey_free, NULL) |
|
|
|
PHP_FALIAS(openssl_get_privatekey, openssl_pkey_get_private, NULL) |
|
|
|
PHP_FALIAS(openssl_get_publickey, openssl_pkey_get_public, NULL) |
|
|
|
|
|
|
|
/* x.509 cert funcs */ |
|
|
|
PHP_FE(openssl_x509_read, NULL) |
|
|
|
PHP_FE(openssl_x509_free, NULL) |
|
|
|
PHP_FE(openssl_x509_parse, NULL) |
|
|
|
PHP_FE(openssl_x509_checkpurpose, NULL) |
|
|
|
PHP_FE(openssl_x509_check_private_key, NULL) |
|
|
|
PHP_FE(openssl_x509_export, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_x509_export_to_file, NULL) |
|
|
|
PHP_FE(openssl_x509_read, arginfo_openssl_x509_read) |
|
|
|
PHP_FE(openssl_x509_free, arginfo_openssl_x509_free) |
|
|
|
PHP_FE(openssl_x509_parse, arginfo_openssl_x509_parse) |
|
|
|
PHP_FE(openssl_x509_checkpurpose, arginfo_openssl_x509_checkpurpose) |
|
|
|
PHP_FE(openssl_x509_check_private_key, arginfo_openssl_x509_check_private_key) |
|
|
|
PHP_FE(openssl_x509_export, arginfo_openssl_x509_export) |
|
|
|
PHP_FE(openssl_x509_export_to_file, arginfo_openssl_x509_export_to_file) |
|
|
|
|
|
|
|
/* PKCS12 funcs */ |
|
|
|
PHP_FE(openssl_pkcs12_export, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_pkcs12_export_to_file, NULL) |
|
|
|
PHP_FE(openssl_pkcs12_read, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_pkcs12_export, arginfo_openssl_pkcs12_export) |
|
|
|
PHP_FE(openssl_pkcs12_export_to_file, arginfo_openssl_pkcs12_export_to_file) |
|
|
|
PHP_FE(openssl_pkcs12_read, arginfo_openssl_pkcs12_read) |
|
|
|
|
|
|
|
/* CSR funcs */ |
|
|
|
PHP_FE(openssl_csr_new, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_csr_export, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_csr_export_to_file, NULL) |
|
|
|
PHP_FE(openssl_csr_sign, NULL) |
|
|
|
PHP_FE(openssl_csr_get_subject, NULL) |
|
|
|
PHP_FE(openssl_csr_get_public_key, NULL) |
|
|
|
|
|
|
|
PHP_FE(openssl_digest, NULL) |
|
|
|
PHP_FE(openssl_encrypt, NULL) |
|
|
|
PHP_FE(openssl_decrypt, NULL) |
|
|
|
PHP_FE(openssl_sign, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_verify, NULL) |
|
|
|
PHP_FE(openssl_seal, arg2and3_force_ref) |
|
|
|
PHP_FE(openssl_open, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_csr_new, arginfo_openssl_csr_new) |
|
|
|
PHP_FE(openssl_csr_export, arginfo_openssl_csr_export) |
|
|
|
PHP_FE(openssl_csr_export_to_file, arginfo_openssl_csr_export_to_file) |
|
|
|
PHP_FE(openssl_csr_sign, arginfo_openssl_csr_sign) |
|
|
|
PHP_FE(openssl_csr_get_subject, arginfo_openssl_csr_get_subject) |
|
|
|
PHP_FE(openssl_csr_get_public_key, arginfo_openssl_csr_get_public_key) |
|
|
|
|
|
|
|
PHP_FE(openssl_digest, arginfo_openssl_digest) |
|
|
|
PHP_FE(openssl_encrypt, arginfo_openssl_encrypt) |
|
|
|
PHP_FE(openssl_decrypt, arginfo_openssl_decrypt) |
|
|
|
PHP_FE(openssl_sign, arginfo_openssl_sign) |
|
|
|
PHP_FE(openssl_verify, arginfo_openssl_verify) |
|
|
|
PHP_FE(openssl_seal, arginfo_openssl_seal) |
|
|
|
PHP_FE(openssl_open, arginfo_openssl_open) |
|
|
|
|
|
|
|
/* for S/MIME handling */ |
|
|
|
PHP_FE(openssl_pkcs7_verify, NULL) |
|
|
|
PHP_FE(openssl_pkcs7_decrypt, NULL) |
|
|
|
PHP_FE(openssl_pkcs7_sign, NULL) |
|
|
|
PHP_FE(openssl_pkcs7_encrypt, NULL) |
|
|
|
PHP_FE(openssl_pkcs7_verify, arginfo_openssl_pkcs7_verify) |
|
|
|
PHP_FE(openssl_pkcs7_decrypt, arginfo_openssl_pkcs7_decrypt) |
|
|
|
PHP_FE(openssl_pkcs7_sign, arginfo_openssl_pkcs7_sign) |
|
|
|
PHP_FE(openssl_pkcs7_encrypt, arginfo_openssl_pkcs7_encrypt) |
|
|
|
|
|
|
|
PHP_FE(openssl_private_encrypt, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_private_decrypt, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_public_encrypt, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_public_decrypt, second_arg_force_ref) |
|
|
|
PHP_FE(openssl_private_encrypt, arginfo_openssl_private_encrypt) |
|
|
|
PHP_FE(openssl_private_decrypt, arginfo_openssl_private_decrypt) |
|
|
|
PHP_FE(openssl_public_encrypt, arginfo_openssl_public_encrypt) |
|
|
|
PHP_FE(openssl_public_decrypt, arginfo_openssl_public_decrypt) |
|
|
|
|
|
|
|
PHP_FE(openssl_get_md_methods, NULL) |
|
|
|
PHP_FE(openssl_get_cipher_methods, NULL) |
|
|
|
PHP_FE(openssl_get_md_methods, arginfo_openssl_get_md_methods) |
|
|
|
PHP_FE(openssl_get_cipher_methods, arginfo_openssl_get_cipher_methods) |
|
|
|
|
|
|
|
PHP_FE(openssl_dh_compute_key, NULL) |
|
|
|
PHP_FE(openssl_dh_compute_key, arginfo_openssl_dh_compute_key) |
|
|
|
|
|
|
|
PHP_FE(openssl_error_string, NULL) |
|
|
|
PHP_FE(openssl_error_string, arginfo_openssl_error_string) |
|
|
|
{NULL, NULL, NULL} |
|
|
|
}; |
|
|
|
/* }}} */ |
|
|
|
@ -187,9 +480,6 @@ zend_module_entry openssl_module_entry = { |
|
|
|
|
|
|
|
#ifdef COMPILE_DL_OPENSSL |
|
|
|
ZEND_GET_MODULE(openssl) |
|
|
|
# ifdef PHP_WIN32 |
|
|
|
# include "zend_arg_defs.c" |
|
|
|
# endif |
|
|
|
#endif |
|
|
|
|
|
|
|
static int le_key; |
|
|
|
@ -3391,7 +3681,7 @@ clean_exit: |
|
|
|
|
|
|
|
/* }}} */ |
|
|
|
|
|
|
|
/* {{{ proto bool openssl_private_encrypt(string data, string crypted, mixed key [, int padding]) |
|
|
|
/* {{{ proto bool openssl_private_encrypt(string data, string &crypted, mixed key [, int padding]) |
|
|
|
Encrypts data with private key */ |
|
|
|
PHP_FUNCTION(openssl_private_encrypt) |
|
|
|
{ |
|
|
|
@ -3449,7 +3739,7 @@ PHP_FUNCTION(openssl_private_encrypt) |
|
|
|
} |
|
|
|
/* }}} */ |
|
|
|
|
|
|
|
/* {{{ proto bool openssl_private_decrypt(string data, string decrypted, mixed key [, int padding]) |
|
|
|
/* {{{ proto bool openssl_private_decrypt(string data, string &decrypted, mixed key [, int padding]) |
|
|
|
Decrypts data with private key */ |
|
|
|
PHP_FUNCTION(openssl_private_decrypt) |
|
|
|
{ |
|
|
|
@ -3515,7 +3805,7 @@ PHP_FUNCTION(openssl_private_decrypt) |
|
|
|
} |
|
|
|
/* }}} */ |
|
|
|
|
|
|
|
/* {{{ proto bool openssl_public_encrypt(string data, string crypted, mixed key [, int padding]) |
|
|
|
/* {{{ proto bool openssl_public_encrypt(string data, string &crypted, mixed key [, int padding]) |
|
|
|
Encrypts data with public key */ |
|
|
|
PHP_FUNCTION(openssl_public_encrypt) |
|
|
|
{ |
|
|
|
@ -3573,7 +3863,7 @@ PHP_FUNCTION(openssl_public_encrypt) |
|
|
|
} |
|
|
|
/* }}} */ |
|
|
|
|
|
|
|
/* {{{ proto bool openssl_public_decrypt(string data, string crypted, resource key [, int padding]) |
|
|
|
/* {{{ proto bool openssl_public_decrypt(string data, string &crypted, resource key [, int padding]) |
|
|
|
Decrypts data with public key */ |
|
|
|
PHP_FUNCTION(openssl_public_decrypt) |
|
|
|
{ |
|
|
|
|