diff --git a/ssl/s3_enc.c b/ssl/s3_enc.c index 7049be2c662ebb809e41f8b70ffa40e77fdb6fe5..a7943aba81e140d36f68e1a5b5fb4e7fa8ca37df 100644 --- a/ssl/s3_enc.c +++ b/ssl/s3_enc.c @@ -546,7 +546,7 @@ void ssl3_init_finished_mac(SSL *s) if (s->s3->handshake_buffer) BIO_free(s->s3->handshake_buffer); if (s->s3->handshake_dgst) ssl3_free_digest_list(s); s->s3->handshake_buffer=BIO_new(BIO_s_mem()); - BIO_set_close(s->s3->handshake_buffer,BIO_CLOSE); + (void)BIO_set_close(s->s3->handshake_buffer,BIO_CLOSE); } void ssl3_free_digest_list(SSL *s) diff --git a/ssl/s3_pkt.c b/ssl/s3_pkt.c index 06b441291804dd0d2d42cffe951d5b1c9ad3ddaf..3e5ce0c5b9bbb1970a5f92b3a318809b74befb24 100644 --- a/ssl/s3_pkt.c +++ b/ssl/s3_pkt.c @@ -129,7 +129,8 @@ int ssl3_read_n(SSL *s, int n, int max, int extend) * (If s->read_ahead is set, 'max' bytes may be stored in rbuf * [plus s->packet_length bytes if extend == 1].) */ - int i,len,left,align=0; + int i,len,left; + long align=0; unsigned char *pkt; SSL3_BUFFER *rb; @@ -138,7 +139,7 @@ int ssl3_read_n(SSL *s, int n, int max, int extend) rb = &(s->s3->rbuf); left = rb->left; #if defined(SSL3_ALIGN_PAYLOAD) && SSL3_ALIGN_PAYLOAD!=0 - align = (int)rb->buf + SSL3_RT_HEADER_LENGTH; + align = (long)rb->buf + SSL3_RT_HEADER_LENGTH; align = (-align)&(SSL3_ALIGN_PAYLOAD-1); #endif @@ -602,7 +603,8 @@ static int do_ssl3_write(SSL *s, int type, const unsigned char *buf, { unsigned char *p,*plen; int i,mac_size,clear=0; - int prefix_len=0,align=0; + int prefix_len=0; + long align=0; SSL3_RECORD *wr; SSL3_BUFFER *wb=&(s->s3->wbuf); SSL_SESSION *sess; @@ -672,7 +674,7 @@ static int do_ssl3_write(SSL *s, int type, const unsigned char *buf, * which would be multiple of SSL3_ALIGN_PAYLOAD, so * if we want to align the real payload, then we can * just pretent we simply have two headers. */ - align = (int)wb->buf + 2*SSL3_RT_HEADER_LENGTH; + align = (long)wb->buf + 2*SSL3_RT_HEADER_LENGTH; align = (-align)&(SSL3_ALIGN_PAYLOAD-1); #endif p = wb->buf + align; @@ -685,7 +687,7 @@ static int do_ssl3_write(SSL *s, int type, const unsigned char *buf, else { #if defined(SSL3_ALIGN_PAYLOAD) && SSL3_ALIGN_PAYLOAD!=0 - align = (int)wb->buf + SSL3_RT_HEADER_LENGTH; + align = (long)wb->buf + SSL3_RT_HEADER_LENGTH; align = (-align)&(SSL3_ALIGN_PAYLOAD-1); #endif p = wb->buf + align; diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 01c29db0f19a1e28d83afea7e50ef9e525eb7fd8..575cf7c69a92ff4f6b0980824acb793ff0bb8466 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -167,7 +167,7 @@ SSL3_ENC_METHOD ssl3_undef_enc_method={ (int (*)(SSL*, int))ssl_undefined_function, (int (*)(SSL *, const char*, int, unsigned char *))ssl_undefined_function, 0, /* finish_mac_length */ - (int (*)(SSL *, const EVP_MD *, unsigned char *))ssl_undefined_function, + (int (*)(SSL *, int, unsigned char *))ssl_undefined_function, NULL, /* client_finished_label */ 0, /* client_finished_label_len */ NULL, /* server_finished_label */