?? ssl.h
字號:
int SSL_has_matching_session_id(const SSL *ssl, const unsigned char *id, unsigned int id_len);SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a,const unsigned char **pp, long length);#ifdef HEADER_X509_HX509 * SSL_get_peer_certificate(const SSL *s);#endifSTACK_OF(X509) *SSL_get_peer_cert_chain(const SSL *s);int SSL_CTX_get_verify_mode(const SSL_CTX *ctx);int SSL_CTX_get_verify_depth(const SSL_CTX *ctx);int (*SSL_CTX_get_verify_callback(const SSL_CTX *ctx))(int,X509_STORE_CTX *);void SSL_CTX_set_verify(SSL_CTX *ctx,int mode, int (*callback)(int, X509_STORE_CTX *));void SSL_CTX_set_verify_depth(SSL_CTX *ctx,int depth);void SSL_CTX_set_cert_verify_callback(SSL_CTX *ctx, int (*cb)(X509_STORE_CTX *,void *), void *arg);#ifndef OPENSSL_NO_RSAint SSL_CTX_use_RSAPrivateKey(SSL_CTX *ctx, RSA *rsa);#endifint SSL_CTX_use_RSAPrivateKey_ASN1(SSL_CTX *ctx, const unsigned char *d, long len);int SSL_CTX_use_PrivateKey(SSL_CTX *ctx, EVP_PKEY *pkey);int SSL_CTX_use_PrivateKey_ASN1(int pk,SSL_CTX *ctx, const unsigned char *d, long len);int SSL_CTX_use_certificate(SSL_CTX *ctx, X509 *x);int SSL_CTX_use_certificate_ASN1(SSL_CTX *ctx, int len, const unsigned char *d);void SSL_CTX_set_default_passwd_cb(SSL_CTX *ctx, pem_password_cb *cb);void SSL_CTX_set_default_passwd_cb_userdata(SSL_CTX *ctx, void *u);int SSL_CTX_check_private_key(const SSL_CTX *ctx);int SSL_check_private_key(const SSL *ctx);int SSL_CTX_set_session_id_context(SSL_CTX *ctx,const unsigned char *sid_ctx, unsigned int sid_ctx_len);SSL * SSL_new(SSL_CTX *ctx);int SSL_set_session_id_context(SSL *ssl,const unsigned char *sid_ctx, unsigned int sid_ctx_len);int SSL_CTX_set_purpose(SSL_CTX *s, int purpose);int SSL_set_purpose(SSL *s, int purpose);int SSL_CTX_set_trust(SSL_CTX *s, int trust);int SSL_set_trust(SSL *s, int trust);void SSL_free(SSL *ssl);int SSL_accept(SSL *ssl);int SSL_connect(SSL *ssl);int SSL_read(SSL *ssl,void *buf,int num);int SSL_peek(SSL *ssl,void *buf,int num);int SSL_write(SSL *ssl,const void *buf,int num);long SSL_ctrl(SSL *ssl,int cmd, long larg, void *parg);long SSL_callback_ctrl(SSL *, int, void (*)(void));long SSL_CTX_ctrl(SSL_CTX *ctx,int cmd, long larg, void *parg);long SSL_CTX_callback_ctrl(SSL_CTX *, int, void (*)(void));int SSL_get_error(const SSL *s,int ret_code);const char *SSL_get_version(const SSL *s);/* This sets the 'default' SSL version that SSL_new() will create */int SSL_CTX_set_ssl_version(SSL_CTX *ctx,SSL_METHOD *meth);SSL_METHOD *SSLv2_method(void); /* SSLv2 */SSL_METHOD *SSLv2_server_method(void); /* SSLv2 */SSL_METHOD *SSLv2_client_method(void); /* SSLv2 */SSL_METHOD *SSLv3_method(void); /* SSLv3 */SSL_METHOD *SSLv3_server_method(void); /* SSLv3 */SSL_METHOD *SSLv3_client_method(void); /* SSLv3 */SSL_METHOD *SSLv23_method(void); /* SSLv3 but can rollback to v2 */SSL_METHOD *SSLv23_server_method(void); /* SSLv3 but can rollback to v2 */SSL_METHOD *SSLv23_client_method(void); /* SSLv3 but can rollback to v2 */SSL_METHOD *TLSv1_method(void); /* TLSv1.0 */SSL_METHOD *TLSv1_server_method(void); /* TLSv1.0 */SSL_METHOD *TLSv1_client_method(void); /* TLSv1.0 */SSL_METHOD *DTLSv1_method(void); /* DTLSv1.0 */SSL_METHOD *DTLSv1_server_method(void); /* DTLSv1.0 */SSL_METHOD *DTLSv1_client_method(void); /* DTLSv1.0 */STACK_OF(SSL_CIPHER) *SSL_get_ciphers(const SSL *s);int SSL_do_handshake(SSL *s);int SSL_renegotiate(SSL *s);int SSL_renegotiate_pending(SSL *s);int SSL_shutdown(SSL *s);SSL_METHOD *SSL_get_ssl_method(SSL *s);int SSL_set_ssl_method(SSL *s,SSL_METHOD *method);const char *SSL_alert_type_string_long(int value);const char *SSL_alert_type_string(int value);const char *SSL_alert_desc_string_long(int value);const char *SSL_alert_desc_string(int value);void SSL_set_client_CA_list(SSL *s, STACK_OF(X509_NAME) *name_list);void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *name_list);STACK_OF(X509_NAME) *SSL_get_client_CA_list(const SSL *s);STACK_OF(X509_NAME) *SSL_CTX_get_client_CA_list(const SSL_CTX *s);int SSL_add_client_CA(SSL *ssl,X509 *x);int SSL_CTX_add_client_CA(SSL_CTX *ctx,X509 *x);void SSL_set_connect_state(SSL *s);void SSL_set_accept_state(SSL *s);long SSL_get_default_timeout(const SSL *s);int SSL_library_init(void );char *SSL_CIPHER_description(SSL_CIPHER *,char *buf,int size);STACK_OF(X509_NAME) *SSL_dup_CA_list(STACK_OF(X509_NAME) *sk);SSL *SSL_dup(SSL *ssl);X509 *SSL_get_certificate(const SSL *ssl);/* EVP_PKEY */ struct evp_pkey_st *SSL_get_privatekey(SSL *ssl);void SSL_CTX_set_quiet_shutdown(SSL_CTX *ctx,int mode);int SSL_CTX_get_quiet_shutdown(const SSL_CTX *ctx);void SSL_set_quiet_shutdown(SSL *ssl,int mode);int SSL_get_quiet_shutdown(const SSL *ssl);void SSL_set_shutdown(SSL *ssl,int mode);int SSL_get_shutdown(const SSL *ssl);int SSL_version(const SSL *ssl);int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx);int SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, const char *CApath);#define SSL_get0_session SSL_get_session /* just peek at pointer */SSL_SESSION *SSL_get_session(const SSL *ssl);SSL_SESSION *SSL_get1_session(SSL *ssl); /* obtain a reference count */SSL_CTX *SSL_get_SSL_CTX(const SSL *ssl);void SSL_set_info_callback(SSL *ssl, void (*cb)(const SSL *ssl,int type,int val));void (*SSL_get_info_callback(const SSL *ssl))(const SSL *ssl,int type,int val);int SSL_state(const SSL *ssl);void SSL_set_verify_result(SSL *ssl,long v);long SSL_get_verify_result(const SSL *ssl);int SSL_set_ex_data(SSL *ssl,int idx,void *data);void *SSL_get_ex_data(const SSL *ssl,int idx);int SSL_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);int SSL_SESSION_set_ex_data(SSL_SESSION *ss,int idx,void *data);void *SSL_SESSION_get_ex_data(const SSL_SESSION *ss,int idx);int SSL_SESSION_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);int SSL_CTX_set_ex_data(SSL_CTX *ssl,int idx,void *data);void *SSL_CTX_get_ex_data(const SSL_CTX *ssl,int idx);int SSL_CTX_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);int SSL_get_ex_data_X509_STORE_CTX_idx(void );#define SSL_CTX_sess_set_cache_size(ctx,t) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SESS_CACHE_SIZE,t,NULL)#define SSL_CTX_sess_get_cache_size(ctx) \ SSL_CTX_ctrl(ctx,SSL_CTRL_GET_SESS_CACHE_SIZE,0,NULL)#define SSL_CTX_set_session_cache_mode(ctx,m) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_SESS_CACHE_MODE,m,NULL)#define SSL_CTX_get_session_cache_mode(ctx) \ SSL_CTX_ctrl(ctx,SSL_CTRL_GET_SESS_CACHE_MODE,0,NULL)#define SSL_CTX_get_default_read_ahead(ctx) SSL_CTX_get_read_ahead(ctx)#define SSL_CTX_set_default_read_ahead(ctx,m) SSL_CTX_set_read_ahead(ctx,m)#define SSL_CTX_get_read_ahead(ctx) \ SSL_CTX_ctrl(ctx,SSL_CTRL_GET_READ_AHEAD,0,NULL)#define SSL_CTX_set_read_ahead(ctx,m) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_READ_AHEAD,m,NULL)#define SSL_CTX_get_max_cert_list(ctx) \ SSL_CTX_ctrl(ctx,SSL_CTRL_GET_MAX_CERT_LIST,0,NULL)#define SSL_CTX_set_max_cert_list(ctx,m) \ SSL_CTX_ctrl(ctx,SSL_CTRL_SET_MAX_CERT_LIST,m,NULL)#define SSL_get_max_cert_list(ssl) \ SSL_ctrl(ssl,SSL_CTRL_GET_MAX_CERT_LIST,0,NULL)#define SSL_set_max_cert_list(ssl,m) \ SSL_ctrl(ssl,SSL_CTRL_SET_MAX_CERT_LIST,m,NULL) /* NB: the keylength is only applicable when is_export is true */#ifndef OPENSSL_NO_RSAvoid SSL_CTX_set_tmp_rsa_callback(SSL_CTX *ctx, RSA *(*cb)(SSL *ssl,int is_export, int keylength));void SSL_set_tmp_rsa_callback(SSL *ssl, RSA *(*cb)(SSL *ssl,int is_export, int keylength));#endif#ifndef OPENSSL_NO_DHvoid SSL_CTX_set_tmp_dh_callback(SSL_CTX *ctx, DH *(*dh)(SSL *ssl,int is_export, int keylength));void SSL_set_tmp_dh_callback(SSL *ssl, DH *(*dh)(SSL *ssl,int is_export, int keylength));#endif#ifndef OPENSSL_NO_ECDHvoid SSL_CTX_set_tmp_ecdh_callback(SSL_CTX *ctx, EC_KEY *(*ecdh)(SSL *ssl,int is_export, int keylength));void SSL_set_tmp_ecdh_callback(SSL *ssl, EC_KEY *(*ecdh)(SSL *ssl,int is_export, int keylength));#endif#ifndef OPENSSL_NO_COMPconst COMP_METHOD *SSL_get_current_compression(SSL *s);const COMP_METHOD *SSL_get_current_expansion(SSL *s);const char *SSL_COMP_get_name(const COMP_METHOD *comp);STACK_OF(SSL_COMP) *SSL_COMP_get_compression_methods(void);int SSL_COMP_add_compression_method(int id,COMP_METHOD *cm);#elseconst void *SSL_get_current_compression(SSL *s);const void *SSL_get_current_expansion(SSL *s);const char *SSL_COMP_get_name(const void *comp);void *SSL_COMP_get_compression_methods(void);int SSL_COMP_add_compression_method(int id,void *cm);#endif/* BEGIN ERROR CODES *//* The following lines are auto generated by the script mkerr.pl. Any changes * made after this point may be overwritten when the script is next run. */void ERR_load_SSL_strings(void);/* Error codes for the SSL functions. *//* Function codes. */#define SSL_F_CLIENT_CERTIFICATE 100#define SSL_F_CLIENT_FINISHED 238#define SSL_F_CLIENT_HELLO 101#define SSL_F_CLIENT_MASTER_KEY 102#define SSL_F_D2I_SSL_SESSION 103#define SSL_F_DO_DTLS1_WRITE 1003#define SSL_F_DO_SSL3_WRITE 104#define SSL_F_DTLS1_ACCEPT 1004#define SSL_F_DTLS1_BUFFER_RECORD 1005#define SSL_F_DTLS1_CLIENT_HELLO 1006#define SSL_F_DTLS1_CONNECT 1007#define SSL_F_DTLS1_ENC 1008#define SSL_F_DTLS1_GET_HELLO_VERIFY 1009#define SSL_F_DTLS1_GET_MESSAGE 1010#define SSL_F_DTLS1_GET_MESSAGE_FRAGMENT 1011#define SSL_F_DTLS1_GET_RECORD 1012#define SSL_F_DTLS1_OUTPUT_CERT_CHAIN 1013#define SSL_F_DTLS1_PROCESS_OUT_OF_SEQ_MESSAGE 1014#define SSL_F_DTLS1_PROCESS_RECORD 1015#define SSL_F_DTLS1_READ_BYTES 1016#define SSL_F_DTLS1_READ_FAILED 1001#define SSL_F_DTLS1_SEND_CERTIFICATE_REQUEST 1017#define SSL_F_DTLS1_SEND_CLIENT_CERTIFICATE 1018#define SSL_F_DTLS1_SEND_CLIENT_KEY_EXCHANGE 1019#define SSL_F_DTLS1_SEND_CLIENT_VERIFY 1020#define SSL_F_DTLS1_SEND_HELLO_VERIFY_REQUEST 1002#define SSL_F_DTLS1_SEND_SERVER_CERTIFICATE 1021#define SSL_F_DTLS1_SEND_SERVER_HELLO 1022#define SSL_F_DTLS1_SEND_SERVER_KEY_EXCHANGE 1023#define SSL_F_DTLS1_WRITE_APP_DATA_BYTES 1024#define SSL_F_GET_CLIENT_FINISHED 105#define SSL_F_GET_CLIENT_HELLO 106#define SSL_F_GET_CLIENT_MASTER_KEY 107#define SSL_F_GET_SERVER_FINISHED 108#define SSL_F_GET_SERVER_HELLO 109#define SSL_F_GET_SERVER_VERIFY 110#define SSL_F_I2D_SSL_SESSION 111#define SSL_F_READ_N 112#define SSL_F_REQUEST_CERTIFICATE 113#define SSL_F_SERVER_FINISH 239#define SSL_F_SERVER_HELLO 114#define SSL_F_SERVER_VERIFY 240#define SSL_F_SSL23_ACCEPT 115#define SSL_F_SSL23_CLIENT_HELLO 116#define SSL_F_SSL23_CONNECT 117#define SSL_F_SSL23_GET_CLIENT_HELLO 118#define SSL_F_SSL23_GET_SERVER_HELLO 119#define SSL_F_SSL23_PEEK 237#define SSL_F_SSL23_READ 120#define SSL_F_SSL23_WRITE 121#define SSL_F_SSL2_ACCEPT 122#define SSL_F_SSL2_CONNECT 123#define SSL_F_SSL2_ENC_INIT 124#define SSL_F_SSL2_GENERATE_KEY_MATERIAL 241#define SSL_F_SSL2_PEEK 234#define SSL_F_SSL2_READ 125#define SSL_F_SSL2_READ_INTERNAL 236#define SSL_F_SSL2_SET_CERTIFICATE 126#define SSL_F_SSL2_WRITE 127#define SSL_F_SSL3_ACCEPT 128#define SSL_F_SSL3_CALLBACK_CTRL 233#define SSL_F_SSL3_CHANGE_CIPHER_STATE 129#define SSL_F_SSL3_CHECK_CERT_AND_ALGORITHM 130#define SSL_F_SSL3_CLIENT_HELLO 131#define SSL_F_SSL3_CONNECT 132#define SSL_F_SSL3_CTRL 213#define SSL_F_SSL3_CTX_CTRL 133#define SSL_F_SSL3_ENC 134#define SSL_F_SSL3_GENERATE_KEY_BLOCK 238#define SSL_F_SSL3_GET_CERTIFICATE_REQUEST 135#define SSL_F_SSL3_GET_CERT_VERIFY 136#define SSL_F_SSL3_GET_CLIENT_CERTIFICATE 137#define SSL_F_SSL3_GET_CLIENT_HELLO 138#define SSL_F_SSL3_GET_CLIENT_KEY_EXCHANGE 139#define SSL_F_SSL3_GET_FINISHED 140#define SSL_F_SSL3_GET_KEY_EXCHANGE 141#define SSL_F_SSL3_GET_MESSAGE 142#define SSL_F_SSL3_GET_RECORD 143#define SSL_F_SSL3_GET_SERVER_CERTIFICATE 144#define SSL_F_SSL3_GET_SERVER_DONE 145#define SSL_F_SSL3_GET_SERVER_HELLO 146#define SSL_F_SSL3_OUTPUT_CERT_CHAIN 147#define SSL_F_SSL3_PEEK 235#define SSL_F_SSL3_READ_BYTES 148#define SSL_F_SSL3_READ_N 149#define SSL_F_SSL3_SEND_CERTIFICATE_REQUEST 150#define SSL_F_SSL3_SEND_CLIENT_CERTIFICATE 151#define SSL_F_SSL3_SEND_CLIENT_KEY_EXCHANGE 152#define SSL_F_SSL3_SEND_CLIENT_VERIFY 153#define SSL_F_SSL3_SEND_SERVER_CERTIFICATE 154#define SSL_F_SSL3_SEND_SERVER_HELLO 242#define SSL_F_SS
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -