Home | History | Annotate | Download | only in ssl

Lines Matching refs:ssl

0 /* ssl/ssl_locl.h */
5 * This package is an SSL implementation written
7 * The implementation was written so as to conform with Netscapes SSL.
12 * lhash, DES, etc., code; not just the SSL code. The SSL documentation
165 #include <openssl/ssl.h>
496 RSA *(*rsa_tmp_cb)(SSL *ssl,int is_export,int keysize);
500 DH *(*dh_tmp_cb)(SSL *ssl,int is_export,int keysize);
505 EC_KEY *(*ecdh_tmp_cb)(SSL *ssl,int is_export,int keysize);
527 RSA *peer_rsa_tmp; /* not used for SSL 2 */
530 DH *peer_dh_tmp; /* not used for SSL 2 */
552 #define ssl_put_cipher_by_char(ssl,ciph,ptr) \
553 ((ssl)->method->put_cipher_by_char((ciph),(ptr)))
554 #define ssl_get_cipher_by_char(ssl,ptr) \
555 ((ssl)->method->get_cipher_by_char(ptr))
562 int (*enc)(SSL *, int);
563 int (*mac)(SSL *, unsigned char *, int);
564 int (*setup_key_block)(SSL *);
565 int (*generate_master_secret)(SSL *, unsigned char *, unsigned char *, int);
566 int (*change_cipher_state)(SSL *, int);
567 int (*final_finish_mac)(SSL *, const char *, int, unsigned char *);
569 int (*cert_verify_mac)(SSL *, int, unsigned char *);
575 int (*export_keying_material)(SSL *, unsigned char *, size_t,
802 void ssl_clear_cipher_ctx(SSL *s);
803 int ssl_clear_bad_session(SSL *s);
811 int ssl_get_new_session(SSL *s, int session);
812 int ssl_get_prev_session(SSL *s, unsigned char *session,int len, const unsigned char *limit);
818 STACK_OF(SSL_CIPHER) *ssl_bytes_to_cipher_list(SSL *s,unsigned char *p,int num,
820 int ssl_cipher_list_to_bytes(SSL *s,STACK_OF(SSL_CIPHER) *sk,unsigned char *p,
826 void ssl_update_cache(SSL *s, int mode);
830 int ssl_verify_cert_chain(SSL *s,STACK_OF(X509) *sk);
831 int ssl_undefined_function(SSL *s);
833 int ssl_undefined_const_function(const SSL *s);
834 X509 *ssl_get_server_send_cert(SSL *);
835 EVP_PKEY *ssl_get_sign_pkey(SSL *s,const SSL_CIPHER *c, const EVP_MD **pmd);
838 STACK_OF(SSL_CIPHER) *ssl_get_ciphers_by_id(SSL *s);
842 int ssl2_enc_init(SSL *s, int client);
843 int ssl2_generate_key_material(SSL *s);
844 void ssl2_enc(SSL *s,int send_data);
845 void ssl2_mac(SSL *s,unsigned char *mac,int send_data);
848 int ssl2_part_read(SSL *s, unsigned long f, int i);
849 int ssl2_do_write(SSL *s);
850 int ssl2_set_certificate(SSL *s, int type, int len, const unsigned char *data);
851 void ssl2_return_error(SSL *s,int reason);
852 void ssl2_write_error(SSL *s);
855 int ssl2_new(SSL *s);
856 void ssl2_free(SSL *s);
857 int ssl2_accept(SSL *s);
858 int ssl2_connect(SSL *s);
859 int ssl2_read(SSL *s, void *buf, int len);
860 int ssl2_peek(SSL *s, void *buf, int len);
861 int ssl2_write(SSL *s, const void *buf, int len);
862 int ssl2_shutdown(SSL *s);
863 void ssl2_clear(SSL *s);
864 long ssl2_ctrl(SSL *s,int cmd, long larg, void *parg);
866 long ssl2_callback_ctrl(SSL *s,int cmd, void (*fp)(void));
868 int ssl2_pending(const SSL *s);
873 void ssl3_init_finished_mac(SSL *s);
874 int ssl3_send_server_certificate(SSL *s);
875 int ssl3_send_newsession_ticket(SSL *s);
876 int ssl3_send_cert_status(SSL *s);
877 int ssl3_get_finished(SSL *s,int state_a,int state_b);
878 int ssl3_setup_key_block(SSL *s);
879 int ssl3_send_change_cipher_spec(SSL *s,int state_a,int state_b);
880 int ssl3_change_cipher_state(SSL *s,int which);
881 void ssl3_cleanup_key_block(SSL *s);
882 int ssl3_do_write(SSL *s,int type);
883 int ssl3_send_alert(SSL *s,int level, int desc);
884 int ssl3_generate_master_secret(SSL *s, unsigned char *out,
886 int ssl3_get_req_cert_type(SSL *s,unsigned char *p);
887 long ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok);
888 int ssl3_send_finished(SSL *s, int a, int b, const char *sender,int slen);
891 int ssl3_renegotiate(SSL *ssl);
892 int ssl3_renegotiate_check(SSL *ssl);
893 int ssl3_dispatch_alert(SSL *s);
894 int ssl3_read_bytes(SSL *s, int type, unsigned char *buf, int len, int peek);
895 int ssl3_write_bytes(SSL *s, int type, const void *buf, int len);
896 int ssl3_final_finish_mac(SSL *s, const char *sender, int slen,unsigned char *p);
897 int ssl3_cert_verify_mac(SSL *s, int md_nid, unsigned char *p);
898 void ssl3_finish_mac(SSL *s, const unsigned char *buf, int len);
899 int ssl3_enc(SSL *s, int send_data);
900 int n_ssl3_mac(SSL *ssl, unsigned char *md, int send_data);
901 void ssl3_free_digest_list(SSL *s);
902 unsigned long ssl3_output_cert_chain(SSL *s, X509 *x);
903 SSL_CIPHER *ssl3_choose_cipher(SSL *ssl,STACK_OF(SSL_CIPHER) *clnt,
905 int ssl3_setup_buffers(SSL *s);
906 int ssl3_setup_read_buffer(SSL *s);
907 int ssl3_setup_write_buffer(SSL *s);
908 int ssl3_release_read_buffer(SSL *s);
909 int ssl3_release_write_buffer(SSL *s);
910 int ssl3_digest_cached_records(SSL *s);
911 int ssl3_new(SSL *s);
912 void ssl3_free(SSL *s);
913 int ssl3_accept(SSL *s);
914 int ssl3_connect(SSL *s);
915 int ssl3_read(SSL *s, void *buf, int len);
916 int ssl3_peek(SSL *s, void *buf, int len);
917 int ssl3_write(SSL *s, const void *buf, int len);
918 int ssl3_shutdown(SSL *s);
919 void ssl3_clear(SSL *s);
920 long ssl3_ctrl(SSL *s,int cmd, long larg, void *parg);
922 SSL *s,int cmd, void (*fp)(void));
924 int ssl3_pending(const SSL *s);
927 int ssl3_do_change_cipher_spec(SSL *ssl);
932 int ssl23_read(SSL *s, void *buf, int len);
933 int ssl23_peek(SSL *s, void *buf, int len);
934 int ssl23_write(SSL *s, const void *buf, int len);
940 int dtls1_do_write(SSL *s,int type);
941 int ssl3_read_n(SSL *s, int n, int max, int extend);
942 int dtls1_read_bytes(SSL *s, int type, unsigned char *buf, int len, int peek);
943 int ssl3_do_compress(SSL *ssl);
944 int ssl3_do_uncompress(SSL *ssl);
945 int ssl3_write_pending(SSL *s, int type, const unsigned char *buf,
947 unsigned char *dtls1_set_message_header(SSL *s,
951 int dtls1_write_app_data_bytes(SSL *s, int type, const void *buf, int len);
952 int dtls1_write_bytes(SSL *s, int type, const void *buf, int len);
954 int dtls1_send_change_cipher_spec(SSL *s, int a, int b);
955 int dtls1_send_finished(SSL *s, int a, int b, const char *sender, int slen);
956 unsigned long dtls1_output_cert_chain(SSL *s, X509 *x);
957 int dtls1_read_failed(SSL *s, int code);
958 int dtls1_buffer_message(SSL *s, int ccs);
959 int dtls1_retransmit_message(SSL *s, unsigned short seq,
962 int dtls1_retransmit_buffered_messages(SSL *s);
963 void dtls1_clear_record_buffer(SSL *s);
966 void dtls1_reset_seq_numbers(SSL *s, int rw);
968 struct timeval* dtls1_get_timeout(SSL *s, struct timeval* timeleft);
969 int dtls1_check_timeout_num(SSL *s);
970 int dtls1_handle_timeout(SSL *s);
972 void dtls1_start_timer(SSL *s);
973 void dtls1_stop_timer(SSL *s);
974 int dtls1_is_timer_expired(SSL *s);
975 void dtls1_double_timeout(SSL *s);
976 int dtls1_send_newsession_ticket(SSL *s);
980 int ssl3_client_hello(SSL *s);
981 int ssl3_get_server_hello(SSL *s);
982 int ssl3_get_certificate_request(SSL *s);
983 int ssl3_get_new_session_ticket(SSL *s);
984 int ssl3_get_cert_status(SSL *s);
985 int ssl3_get_server_done(SSL *s);
986 int ssl3_send_client_verify(SSL *s);
987 int ssl3_send_client_certificate(SSL *s);
988 int ssl_do_client_cert_cb(SSL *s, X509 **px509, EVP_PKEY **ppkey);
989 int ssl3_send_client_key_exchange(SSL *s);
990 int ssl3_get_key_exchange(SSL *s);
991 int ssl3_get_server_certificate(SSL *s);
992 int ssl3_check_cert_and_algorithm(SSL *s);
994 int ssl3_check_finished(SSL *s);
996 int ssl3_send_next_proto(SSL *s);
1000 int dtls1_client_hello(SSL *s);
1001 int dtls1_send_client_certificate(SSL *s);
1002 int dtls1_send_client_key_exchange(SSL *s);
1003 int dtls1_send_client_verify(SSL *s);
1006 int ssl3_get_client_hello(SSL *s);
1007 int ssl3_send_server_hello(SSL *s);
1008 int ssl3_send_hello_request(SSL *s);
1009 int ssl3_send_server_key_exchange(SSL *s);
1010 int ssl3_send_certificate_request(SSL *s);
1011 int ssl3_send_server_done(SSL *s);
1012 int ssl3_check_client_hello(SSL *s);
1013 int ssl3_get_client_certificate(SSL *s);
1014 int ssl3_get_client_key_exchange(SSL *s);
1015 int ssl3_get_cert_verify(SSL *s);
1017 int ssl3_get_next_proto(SSL *s);
1020 int dtls1_send_hello_request(SSL *s);
1021 int dtls1_send_server_hello(SSL *s);
1022 int dtls1_send_server_certificate(SSL *s);
1023 int dtls1_send_server_key_exchange(SSL *s);
1024 int dtls1_send_certificate_request(SSL *s);
1025 int dtls1_send_server_done(SSL *s);
1029 int ssl23_accept(SSL *s);
1030 int ssl23_connect(SSL *s);
1031 int ssl23_read_bytes(SSL *s, int n);
1032 int ssl23_write_bytes(SSL *s);
1034 int tls1_new(SSL *s);
1035 void tls1_free(SSL *s);
1036 void tls1_clear(SSL *s);
1037 long tls1_ctrl(SSL *s,int cmd, long larg, void *parg);
1038 long tls1_callback_ctrl(SSL *s,int cmd, void (*fp)(void));
1040 int dtls1_new(SSL *s);
1041 int dtls1_accept(SSL *s);
1042 int dtls1_connect(SSL *s);
1043 void dtls1_free(SSL *s);
1044 void dtls1_clear(SSL *s);
1045 long dtls1_ctrl(SSL *s,int cmd, long larg, void *parg);
1046 int dtls1_shutdown(SSL *s);
1048 long dtls1_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok);
1049 int dtls1_get_record(SSL *s);
1050 int do_dtls1_write(SSL *s, int type, const unsigned char *buf,
1052 int dtls1_dispatch_alert(SSL *s);
1053 int dtls1_enc(SSL *s, int snd);
1055 int ssl_init_wbio_buffer(SSL *s, int push);
1056 void ssl_free_wbio_buffer(SSL *s);
1058 int tls1_change_cipher_state(SSL *s, int which);
1059 int tls1_setup_key_block(SSL *s);
1060 int tls1_enc(SSL *s, int snd);
1061 int tls1_final_finish_mac(SSL *s,
1063 int tls1_cert_verify_mac(SSL *s, int md_nid, unsigned char *p);
1064 int tls1_mac(SSL *ssl, unsigned char *md, int snd);
1065 int tls1_generate_master_secret(SSL *s, unsigned char *out,
1067 int tls1_export_keying_material(SSL *s, unsigned char *out, size_t olen,
1072 int ssl_ok(SSL *s);
1075 int ssl_check_srvr_ecc_cert_and_alg(X509 *x, SSL *s);
1086 unsigned char *ssl_add_clienthello_tlsext(SSL *s, unsigned char *p, unsigned char *limit);
1087 unsigned char *ssl_add_serverhello_tlsext(SSL *s, unsigned char *p, unsigned char *limit);
1088 int ssl_parse_clienthello_tlsext(SSL *s, unsigned char **data, unsigned char *d, int n, int *al);
1089 int ssl_parse_serverhello_tlsext(SSL *s, unsigned char **data, unsigned char *d, int n, int *al);
1090 int ssl_prepare_clienthello_tlsext(SSL *s);
1091 int ssl_prepare_serverhello_tlsext(SSL *s);
1092 int ssl_check_clienthello_tlsext(SSL *s);
1093 int ssl_check_serverhello_tlsext(SSL *s);
1096 int tls1_heartbeat(SSL *s);
1097 int dtls1_heartbeat(SSL *s);
1098 int tls1_process_heartbeat(SSL *s);
1099 int dtls1_process_heartbeat(SSL *s);
1107 int tls1_process_ticket(SSL *s, unsigned char *session_id, int len,
1118 int ssl_add_serverhello_renegotiate_ext(SSL *s, unsigned char *p, int *len,
1120 int ssl_parse_serverhello_renegotiate_ext(SSL *s, unsigned char *d, int len,
1122 int ssl_add_clienthello_renegotiate_ext(SSL *s, unsigned char *p, int *len,
1124 int ssl_parse_clienthello_renegotiate_ext(SSL *s, unsigned char *d, int len,
1126 long ssl_get_algorithm2(SSL *s);
1127 int tls1_process_sigalgs(SSL *s, const unsigned char *data, int dsize);
1128 int tls12_get_req_sig_algs(SSL *s, unsigned char *p);
1130 int ssl_add_clienthello_use_srtp_ext(SSL *s, unsigned char *p, int *len, int maxlen);
1131 int ssl_parse_clienthello_use_srtp_ext(SSL *s, unsigned char *d, int len,int *al);
1132 int ssl_add_serverhello_use_srtp_ext(SSL *s, unsigned char *p, int *len, int maxlen);
1133 int ssl_parse_serverhello_use_srtp_ext(SSL *s, unsigned char *d, int len,int *al);