diff options
| author | Steven Fackler <[email protected]> | 2016-10-14 17:39:31 -0700 |
|---|---|---|
| committer | Steven Fackler <[email protected]> | 2016-10-14 17:39:31 -0700 |
| commit | af51b263b17faaa3e7cb0ecc5c305b858faea64c (patch) | |
| tree | f575e98381860f043f0835564b8de6b4ad342fdd /openssl-sys/src | |
| parent | Merge pull request #468 from sfackler/no-link-name (diff) | |
| download | rust-openssl-af51b263b17faaa3e7cb0ecc5c305b858faea64c.tar.xz rust-openssl-af51b263b17faaa3e7cb0ecc5c305b858faea64c.zip | |
Support hostname verification
Closes #206
Diffstat (limited to 'openssl-sys/src')
| -rw-r--r-- | openssl-sys/src/ossl110.rs | 45 |
1 files changed, 30 insertions, 15 deletions
diff --git a/openssl-sys/src/ossl110.rs b/openssl-sys/src/ossl110.rs index 5fee4045..20cd0940 100644 --- a/openssl-sys/src/ossl110.rs +++ b/openssl-sys/src/ossl110.rs @@ -1,25 +1,28 @@ -use libc::{c_int, c_void, c_char, c_uchar, c_ulong, c_long}; +use libc::{c_int, c_void, c_char, c_uchar, c_ulong, c_long, c_uint, size_t}; -pub enum stack_st_X509 {} -pub enum stack_st_X509_ATTRIBUTE {} -pub enum stack_st_X509_EXTENSION {} -pub enum stack_st_GENERAL_NAME {} -pub enum stack_st_void {} -pub enum _STACK {} -pub enum BIO_METHOD {} -pub enum RSA {} -pub enum DSA {} -pub enum EVP_PKEY {} +pub enum BIGNUM {} pub enum BIO {} +pub enum BIO_METHOD {} pub enum CRYPTO_EX_DATA {} -pub enum EVP_MD_CTX {} +pub enum DH {} +pub enum DSA {} pub enum EVP_CIPHER {} +pub enum EVP_MD_CTX {} +pub enum EVP_PKEY {} pub enum HMAC_CTX {} -pub enum BIGNUM {} pub enum OPENSSL_STACK {} -pub enum DH {} -pub enum X509 {} +pub enum RSA {} pub enum SSL_CTX {} +pub enum _STACK {} +pub enum stack_st_ASN1_OBJECT {} +pub enum stack_st_GENERAL_NAME {} +pub enum stack_st_OPENSSL_STRING {} +pub enum stack_st_void {} +pub enum stack_st_X509 {} +pub enum stack_st_X509_ATTRIBUTE {} +pub enum stack_st_X509_EXTENSION {} +pub enum X509 {} +pub enum X509_VERIFY_PARAM {} pub const SSL_OP_MICROSOFT_SESS_ID_BUG: c_ulong = 0x00000000; pub const SSL_OP_NETSCAPE_CHALLENGE_BUG: c_ulong = 0x00000000; @@ -41,6 +44,13 @@ pub const OPENSSL_DIR: c_int = 4; pub const CRYPTO_EX_INDEX_SSL: c_int = 0; pub const CRYPTO_EX_INDEX_SSL_CTX: c_int = 1; +pub const X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT: c_uint = 0x1; +pub const X509_CHECK_FLAG_NO_WILDCARDS: c_uint = 0x2; +pub const X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS: c_uint = 0x4; +pub const X509_CHECK_FLAG_MULTI_LABEL_WILDCARDS: c_uint = 0x8; +pub const X509_CHECK_FLAG_SINGLE_LABEL_SUBDOMAINS: c_uint = 0x10; +pub const X509_CHECK_FLAG_NEVER_CHECK_SUBJECT: c_uint = 0x20; + pub fn init() {} extern { @@ -96,8 +106,13 @@ extern { pub fn SSL_CTX_get_options(ctx: *const ::SSL_CTX) -> c_ulong; pub fn SSL_CTX_set_options(ctx: *mut ::SSL_CTX, op: c_ulong) -> c_ulong; pub fn SSL_CTX_clear_options(ctx: *mut ::SSL_CTX, op: c_ulong) -> c_ulong; + pub fn SSL_get0_param(ssl: *mut ::SSL) -> *mut X509_VERIFY_PARAM; pub fn X509_getm_notAfter(x: *const ::X509) -> *mut ::ASN1_TIME; pub fn X509_getm_notBefore(x: *const ::X509) -> *mut ::ASN1_TIME; + pub fn X509_VERIFY_PARAM_set_hostflags(param: *mut X509_VERIFY_PARAM, flags: c_uint); + pub fn X509_VERIFY_PARAM_set1_host(param: *mut X509_VERIFY_PARAM, + name: *const c_char, + namelen: size_t) -> c_int; pub fn DH_set0_pqg(dh: *mut ::DH, p: *mut ::BIGNUM, q: *mut ::BIGNUM, |