1
2
3
/* automatically generated by rust-bindgen */

pub const TLS_API : u32 = 20200120 ; pub const TLS_PROTOCOL_TLSv1_0 : u32 = 2 ; pub const TLS_PROTOCOL_TLSv1_1 : u32 = 4 ; pub const TLS_PROTOCOL_TLSv1_2 : u32 = 8 ; pub const TLS_PROTOCOL_TLSv1_3 : u32 = 16 ; pub const TLS_PROTOCOL_TLSv1 : u32 = 30 ; pub const TLS_PROTOCOLS_ALL : u32 = 30 ; pub const TLS_PROTOCOLS_DEFAULT : u32 = 24 ; pub const TLS_WANT_POLLIN : i32 = -2 ; pub const TLS_WANT_POLLOUT : i32 = -3 ; pub const TLS_OCSP_RESPONSE_SUCCESSFUL : u32 = 0 ; pub const TLS_OCSP_RESPONSE_MALFORMED : u32 = 1 ; pub const TLS_OCSP_RESPONSE_INTERNALERROR : u32 = 2 ; pub const TLS_OCSP_RESPONSE_TRYLATER : u32 = 3 ; pub const TLS_OCSP_RESPONSE_SIGREQUIRED : u32 = 4 ; pub const TLS_OCSP_RESPONSE_UNAUTHORIZED : u32 = 5 ; pub const TLS_OCSP_CERT_GOOD : u32 = 0 ; pub const TLS_OCSP_CERT_REVOKED : u32 = 1 ; pub const TLS_OCSP_CERT_UNKNOWN : u32 = 2 ; pub const TLS_CRL_REASON_UNSPECIFIED : u32 = 0 ; pub const TLS_CRL_REASON_KEY_COMPROMISE : u32 = 1 ; pub const TLS_CRL_REASON_CA_COMPROMISE : u32 = 2 ; pub const TLS_CRL_REASON_AFFILIATION_CHANGED : u32 = 3 ; pub const TLS_CRL_REASON_SUPERSEDED : u32 = 4 ; pub const TLS_CRL_REASON_CESSATION_OF_OPERATION : u32 = 5 ; pub const TLS_CRL_REASON_CERTIFICATE_HOLD : u32 = 6 ; pub const TLS_CRL_REASON_REMOVE_FROM_CRL : u32 = 8 ; pub const TLS_CRL_REASON_PRIVILEGE_WITHDRAWN : u32 = 9 ; pub const TLS_CRL_REASON_AA_COMPROMISE : u32 = 10 ; pub const TLS_MAX_SESSION_ID_LENGTH : u32 = 32 ; pub const TLS_TICKET_KEY_SIZE : u32 = 48 ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type ssize_t = __ssize_t ; pub type time_t = __time_t ; pub type size_t = :: std :: os :: raw :: c_ulong ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct tls { _unused : [ u8 ; 0 ] , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct tls_config { _unused : [ u8 ; 0 ] , } pub type tls_read_cb = :: std :: option :: Option < unsafe extern "C" fn ( _ctx : * mut tls , _buf : * mut :: std :: os :: raw :: c_void , _buflen : size_t , _cb_arg : * mut :: std :: os :: raw :: c_void ) -> ssize_t > ; pub type tls_write_cb = :: std :: option :: Option < unsafe extern "C" fn ( _ctx : * mut tls , _buf : * const :: std :: os :: raw :: c_void , _buflen : size_t , _cb_arg : * mut :: std :: os :: raw :: c_void ) -> ssize_t > ; extern "C" { pub fn tls_init ( ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_error ( _config : * mut tls_config ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_error ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_config_new ( ) -> * mut tls_config ; } extern "C" { pub fn tls_config_free ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_default_ca_cert_file ( ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_config_add_keypair_file ( _config : * mut tls_config , _cert_file : * const :: std :: os :: raw :: c_char , _key_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_add_keypair_mem ( _config : * mut tls_config , _cert : * const u8 , _cert_len : size_t , _key : * const u8 , _key_len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_add_keypair_ocsp_file ( _config : * mut tls_config , _cert_file : * const :: std :: os :: raw :: c_char , _key_file : * const :: std :: os :: raw :: c_char , _ocsp_staple_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_add_keypair_ocsp_mem ( _config : * mut tls_config , _cert : * const u8 , _cert_len : size_t , _key : * const u8 , _key_len : size_t , _staple : * const u8 , _staple_len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_alpn ( _config : * mut tls_config , _alpn : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ca_file ( _config : * mut tls_config , _ca_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ca_path ( _config : * mut tls_config , _ca_path : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ca_mem ( _config : * mut tls_config , _ca : * const u8 , _len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_cert_file ( _config : * mut tls_config , _cert_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_cert_mem ( _config : * mut tls_config , _cert : * const u8 , _len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ciphers ( _config : * mut tls_config , _ciphers : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_crl_file ( _config : * mut tls_config , _crl_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_crl_mem ( _config : * mut tls_config , _crl : * const u8 , _len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_dheparams ( _config : * mut tls_config , _params : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ecdhecurve ( _config : * mut tls_config , _curve : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ecdhecurves ( _config : * mut tls_config , _curves : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_key_file ( _config : * mut tls_config , _key_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_key_mem ( _config : * mut tls_config , _key : * const u8 , _len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_keypair_file ( _config : * mut tls_config , _cert_file : * const :: std :: os :: raw :: c_char , _key_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_keypair_mem ( _config : * mut tls_config , _cert : * const u8 , _cert_len : size_t , _key : * const u8 , _key_len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_keypair_ocsp_file ( _config : * mut tls_config , _cert_file : * const :: std :: os :: raw :: c_char , _key_file : * const :: std :: os :: raw :: c_char , _staple_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_keypair_ocsp_mem ( _config : * mut tls_config , _cert : * const u8 , _cert_len : size_t , _key : * const u8 , _key_len : size_t , _staple : * const u8 , staple_len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ocsp_staple_mem ( _config : * mut tls_config , _staple : * const u8 , _len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_ocsp_staple_file ( _config : * mut tls_config , _staple_file : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_protocols ( _config : * mut tls_config , _protocols : u32 ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_session_fd ( _config : * mut tls_config , _session_fd : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_verify_depth ( _config : * mut tls_config , _verify_depth : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_prefer_ciphers_client ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_prefer_ciphers_server ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_insecure_noverifycert ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_insecure_noverifyname ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_insecure_noverifytime ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_verify ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_ocsp_require_stapling ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_verify_client ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_verify_client_optional ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_clear_keys ( _config : * mut tls_config ) ; } extern "C" { pub fn tls_config_parse_protocols ( _protocols : * mut u32 , _protostr : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_session_id ( _config : * mut tls_config , _session_id : * const :: std :: os :: raw :: c_uchar , _len : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_set_session_lifetime ( _config : * mut tls_config , _lifetime : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_config_add_ticket_key ( _config : * mut tls_config , _keyrev : u32 , _key : * mut :: std :: os :: raw :: c_uchar , _keylen : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_client ( ) -> * mut tls ; } extern "C" { pub fn tls_server ( ) -> * mut tls ; } extern "C" { pub fn tls_configure ( _ctx : * mut tls , _config : * mut tls_config ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_reset ( _ctx : * mut tls ) ; } extern "C" { pub fn tls_free ( _ctx : * mut tls ) ; } extern "C" { pub fn tls_accept_fds ( _ctx : * mut tls , _cctx : * mut * mut tls , _fd_read : :: std :: os :: raw :: c_int , _fd_write : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_accept_socket ( _ctx : * mut tls , _cctx : * mut * mut tls , _socket : :: std :: os :: raw :: c_int ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_accept_cbs ( _ctx : * mut tls , _cctx : * mut * mut tls , _read_cb : tls_read_cb , _write_cb : tls_write_cb , _cb_arg : * mut :: std :: os :: raw :: c_void ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_connect ( _ctx : * mut tls , _host : * const :: std :: os :: raw :: c_char , _port : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_connect_fds ( _ctx : * mut tls , _fd_read : :: std :: os :: raw :: c_int , _fd_write : :: std :: os :: raw :: c_int , _servername : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_connect_servername ( _ctx : * mut tls , _host : * const :: std :: os :: raw :: c_char , _port : * const :: std :: os :: raw :: c_char , _servername : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_connect_socket ( _ctx : * mut tls , _s : :: std :: os :: raw :: c_int , _servername : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_connect_cbs ( _ctx : * mut tls , _read_cb : tls_read_cb , _write_cb : tls_write_cb , _cb_arg : * mut :: std :: os :: raw :: c_void , _servername : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_handshake ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_read ( _ctx : * mut tls , _buf : * mut :: std :: os :: raw :: c_void , _buflen : size_t ) -> ssize_t ; } extern "C" { pub fn tls_write ( _ctx : * mut tls , _buf : * const :: std :: os :: raw :: c_void , _buflen : size_t ) -> ssize_t ; } extern "C" { pub fn tls_close ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_cert_provided ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_cert_contains_name ( _ctx : * mut tls , _name : * const :: std :: os :: raw :: c_char ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_cert_hash ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_peer_cert_issuer ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_peer_cert_subject ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_peer_cert_notbefore ( _ctx : * mut tls ) -> time_t ; } extern "C" { pub fn tls_peer_cert_notafter ( _ctx : * mut tls ) -> time_t ; } extern "C" { pub fn tls_peer_cert_chain_pem ( _ctx : * mut tls , _len : * mut size_t ) -> * const u8 ; } extern "C" { pub fn tls_conn_alpn_selected ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_conn_cipher ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_conn_cipher_strength ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_conn_servername ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_conn_session_resumed ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_conn_version ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_load_file ( _file : * const :: std :: os :: raw :: c_char , _len : * mut size_t , _password : * mut :: std :: os :: raw :: c_char ) -> * mut u8 ; } extern "C" { pub fn tls_unload_file ( _buf : * mut u8 , len : size_t ) ; } extern "C" { pub fn tls_ocsp_process_response ( _ctx : * mut tls , _response : * const :: std :: os :: raw :: c_uchar , _size : size_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_ocsp_cert_status ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_ocsp_crl_reason ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_ocsp_next_update ( _ctx : * mut tls ) -> time_t ; } extern "C" { pub fn tls_peer_ocsp_response_status ( _ctx : * mut tls ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tls_peer_ocsp_result ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn tls_peer_ocsp_revocation_time ( _ctx : * mut tls ) -> time_t ; } extern "C" { pub fn tls_peer_ocsp_this_update ( _ctx : * mut tls ) -> time_t ; } extern "C" { pub fn tls_peer_ocsp_url ( _ctx : * mut tls ) -> * const :: std :: os :: raw :: c_char ; }