X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=ssl%2Fssl_locl.h;h=b5f15fc7b4bfd65fab1de0ef983c11e5278019e4;hp=9a366554be1ea12aacad659c132ea09b0a299cb9;hb=f8caa3c813bcf9c621f8576eeba8a0df67596dac;hpb=7604202070b3d3767fe75bc8c5a268ee8aedfb52 diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index 9a366554be..b5f15fc7b4 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -1022,16 +1022,12 @@ struct ssl_st { int shutdown; /* where we are */ int state; - /* where we are when reading */ - int rstate; BUF_MEM *init_buf; /* buffer used during init */ void *init_msg; /* pointer to handshake message body, set by * ssl3_get_message() */ int init_num; /* amount read/written */ int init_off; /* amount read/written */ - /* used internally to point at a raw packet */ - unsigned char *packet; - unsigned int packet_length; + struct ssl3_state_st *s3; /* SSLv3 variables */ struct dtls1_state_st *d1; /* DTLSv1 variables */ @@ -1241,20 +1237,6 @@ typedef struct ssl3_state_st { int empty_fragment_done; /* The value of 'extra' when the buffers were initialized */ int init_extra; - /* - * storage for Alert/Handshake protocol data received but not yet - * processed by ssl3_read_bytes: - */ - unsigned char alert_fragment[2]; - unsigned int alert_fragment_len; - unsigned char handshake_fragment[4]; - unsigned int handshake_fragment_len; - /* partial write - check the numbers match */ - unsigned int wnum; /* number of bytes sent so far */ - int wpend_tot; /* number bytes written */ - int wpend_type; - int wpend_ret; /* number of bytes submitted */ - const unsigned char *wpend_buf; /* used during startup, digest all incoming/outgoing packets */ BIO *handshake_buffer; /* @@ -1376,13 +1358,6 @@ typedef struct ssl3_state_st { /* Max MTU overhead we know about so far is 40 for IPv6 + 8 for UDP */ # define DTLS1_MAX_MTU_OVERHEAD 48 -typedef struct dtls1_bitmap_st { - unsigned long map; /* track 32 packets on 32-bit systems and 64 - * - on 64-bit systems */ - unsigned char max_seq_num[8]; /* max record number seen so far, 64-bit - * value in big-endian encoding */ -} DTLS1_BITMAP; - struct dtls1_retransmit_state { EVP_CIPHER_CTX *enc_write_ctx; /* cryptographic state */ EVP_MD_CTX *write_hash; /* used for mac generation */ @@ -1419,11 +1394,6 @@ struct dtls1_timeout_st { unsigned int num_alerts; }; -typedef struct record_pqueue_st { - unsigned short epoch; - pqueue q; -} record_pqueue; - typedef struct hm_fragment_st { struct hm_header_st msg_header; unsigned char *fragment; @@ -1991,8 +1961,10 @@ const SSL_METHOD *func_name(void) \ struct openssl_ssl_test_functions { int (*p_ssl_init_wbio_buffer) (SSL *s, int push); int (*p_ssl3_setup_buffers) (SSL *s); - int (*p_tls1_process_heartbeat) (SSL *s); - int (*p_dtls1_process_heartbeat) (SSL *s); + int (*p_tls1_process_heartbeat) (SSL *s, + unsigned char *p, unsigned int length); + int (*p_dtls1_process_heartbeat) (SSL *s, + unsigned char *p, unsigned int length); }; # ifndef OPENSSL_UNIT_TEST @@ -2089,14 +2061,10 @@ __owur const SSL_CIPHER *ssl3_get_cipher(unsigned int u); int ssl3_renegotiate(SSL *ssl); int ssl3_renegotiate_check(SSL *ssl); __owur int ssl3_dispatch_alert(SSL *s); -__owur int ssl3_read_bytes(SSL *s, int type, unsigned char *buf, int len, int peek); -__owur int ssl3_write_bytes(SSL *s, int type, const void *buf, int len); __owur int ssl3_final_finish_mac(SSL *s, const char *sender, int slen, unsigned char *p); __owur int ssl3_cert_verify_mac(SSL *s, int md_nid, unsigned char *p); void ssl3_finish_mac(SSL *s, const unsigned char *buf, int len); -__owur int ssl3_enc(SSL *s, int send_data); -__owur int n_ssl3_mac(SSL *ssl, unsigned char *md, int send_data); void ssl3_free_digest_list(SSL *s); __owur unsigned long ssl3_output_cert_chain(SSL *s, CERT_PKEY *cpk); __owur SSL_CIPHER *ssl3_choose_cipher(SSL *ssl, STACK_OF(SSL_CIPHER) *clnt, @@ -2115,7 +2083,6 @@ __owur long ssl3_ctrl(SSL *s, int cmd, long larg, void *parg); __owur long ssl3_ctx_ctrl(SSL_CTX *s, int cmd, long larg, void *parg); __owur long ssl3_callback_ctrl(SSL *s, int cmd, void (*fp) (void)); __owur long ssl3_ctx_callback_ctrl(SSL_CTX *s, int cmd, void (*fp) (void)); -__owur int ssl3_pending(const SSL *s); void ssl3_record_sequence_update(unsigned char *seq); __owur int ssl3_do_change_cipher_spec(SSL *ssl); @@ -2137,12 +2104,6 @@ __owur int ssl_allow_compression(SSL *s); __owur long tls1_default_timeout(void); __owur int dtls1_do_write(SSL *s, int type); -__owur int ssl3_read_n(SSL *s, int n, int max, int extend); -__owur int dtls1_read_bytes(SSL *s, int type, unsigned char *buf, int len, int peek); -__owur int ssl3_do_compress(SSL *ssl); -__owur int ssl3_do_uncompress(SSL *ssl); -__owur int ssl3_write_pending(SSL *s, int type, const unsigned char *buf, - unsigned int len); void dtls1_set_message_header(SSL *s, unsigned char *p, unsigned char mt, unsigned long len, @@ -2164,7 +2125,6 @@ void dtls1_clear_record_buffer(SSL *s); void dtls1_get_message_header(unsigned char *data, struct hm_header_st *msg_hdr); void dtls1_get_ccs_header(unsigned char *data, struct ccs_header_st *ccs_hdr); -void dtls1_reset_seq_numbers(SSL *s, int rw); __owur long dtls1_default_timeout(void); __owur struct timeval *dtls1_get_timeout(SSL *s, struct timeval *timeleft); __owur int dtls1_check_timeout_num(SSL *s); @@ -2217,8 +2177,6 @@ __owur int ssl3_get_next_proto(SSL *s); __owur int ssl23_accept(SSL *s); __owur int ssl23_connect(SSL *s); -__owur int ssl23_read_bytes(SSL *s, int n); -__owur int ssl23_write_bytes(SSL *s); __owur int tls1_new(SSL *s); void tls1_free(SSL *s); @@ -2235,9 +2193,6 @@ long dtls1_ctrl(SSL *s, int cmd, long larg, void *parg); __owur int dtls1_shutdown(SSL *s); __owur long dtls1_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok); -__owur int dtls1_get_record(SSL *s); -__owur int do_dtls1_write(SSL *s, int type, const unsigned char *buf, - unsigned int len, int create_empty_fragement); __owur int dtls1_dispatch_alert(SSL *s); __owur int ssl_init_wbio_buffer(SSL *s, int push); @@ -2245,11 +2200,9 @@ void ssl_free_wbio_buffer(SSL *s); __owur int tls1_change_cipher_state(SSL *s, int which); __owur int tls1_setup_key_block(SSL *s); -__owur int tls1_enc(SSL *s, int snd); __owur int tls1_final_finish_mac(SSL *s, const char *str, int slen, unsigned char *p); __owur int tls1_cert_verify_mac(SSL *s, int md_nid, unsigned char *p); -__owur int tls1_mac(SSL *ssl, unsigned char *md, int snd); __owur int tls1_generate_master_secret(SSL *s, unsigned char *out, unsigned char *p, int len); __owur int tls1_export_keying_material(SSL *s, unsigned char *out, size_t olen, @@ -2298,8 +2251,8 @@ __owur int ssl_prepare_serverhello_tlsext(SSL *s); # ifndef OPENSSL_NO_HEARTBEATS __owur int tls1_heartbeat(SSL *s); __owur int dtls1_heartbeat(SSL *s); -__owur int tls1_process_heartbeat(SSL *s); -__owur int dtls1_process_heartbeat(SSL *s); +__owur int tls1_process_heartbeat(SSL *s, unsigned char *p, unsigned int length); +__owur int dtls1_process_heartbeat(SSL *s, unsigned char *p, unsigned int length); # endif __owur int tls1_process_ticket(SSL *s, unsigned char *session_id, int len, @@ -2358,14 +2311,6 @@ __owur int ssl_parse_serverhello_use_srtp_ext(SSL *s, unsigned char *d, int len, __owur int ssl_handshake_hash(SSL *s, unsigned char *out, int outlen); /* s3_cbc.c */ -void ssl3_cbc_copy_mac(unsigned char *out, - const SSL3_RECORD *rec, unsigned md_size); -__owur int ssl3_cbc_remove_padding(const SSL *s, - SSL3_RECORD *rec, - unsigned block_size, unsigned mac_size); -__owur int tls1_cbc_remove_padding(const SSL *s, - SSL3_RECORD *rec, - unsigned block_size, unsigned mac_size); __owur char ssl3_cbc_record_digest_supported(const EVP_MD_CTX *ctx); void ssl3_cbc_digest_record(const EVP_MD_CTX *ctx, unsigned char *md_out,