Introduce macro RECORD_LAYER_setup_comp_buffer

Reviewed-by: Richard Levitte <levitte@openssl.org>
This commit is contained in:
Matt Caswell 2015-02-02 14:52:32 +00:00
parent 75d40c9332
commit bd2e3a9512
5 changed files with 7 additions and 7 deletions

View File

@ -164,6 +164,7 @@ typedef struct record_layer_st {
#define RECORD_LAYER_get_wbuf(rl) (&(rl)->wbuf)
#define RECORD_LAYER_get_rrec(rl) (&(rl)->rrec)
#define RECORD_LAYER_get_wrec(rl) (&(rl)->wrec)
#define RECORD_LAYER_setup_comp_buffer(rl) (SSL3_RECORD_setup(&(rl)->rrec))
void RECORD_LAYER_init(RECORD_LAYER *rl, SSL *s);
void RECORD_LAYER_clear(RECORD_LAYER *rl);

View File

@ -143,10 +143,11 @@ void SSL3_RECORD_release(SSL3_RECORD *r)
r->comp = NULL;
}
int SSL3_RECORD_setup(SSL3_RECORD *r, size_t len)
int SSL3_RECORD_setup(SSL3_RECORD *r)
{
if (r->comp == NULL)
r->comp = (unsigned char *) OPENSSL_malloc(len);
r->comp = (unsigned char *)
OPENSSL_malloc(SSL3_RT_MAX_ENCRYPTED_LENGTH);
if (r->comp == NULL)
return 0;
return 1;

View File

@ -158,7 +158,7 @@ typedef struct ssl3_record_st {
void SSL3_RECORD_clear(SSL3_RECORD *r);
void SSL3_RECORD_release(SSL3_RECORD *r);
int SSL3_RECORD_setup(SSL3_RECORD *r, size_t len);
int SSL3_RECORD_setup(SSL3_RECORD *r);
void SSL3_RECORD_set_seq_num(SSL3_RECORD *r, const unsigned char *seq_num);
int ssl3_get_record(SSL *s);
__owur int ssl3_do_compress(SSL *ssl);

View File

@ -270,8 +270,7 @@ int ssl3_change_cipher_state(SSL *s, int which)
SSL_R_COMPRESSION_LIBRARY_ERROR);
goto err2;
}
if(!SSL3_RECORD_setup(RECORD_LAYER_get_rrec(&s->rlayer),
SSL3_RT_MAX_PLAIN_LENGTH))
if(!RECORD_LAYER_setup_comp_buffer(&s->rlayer))
goto err;
}
#endif

View File

@ -396,8 +396,7 @@ int tls1_change_cipher_state(SSL *s, int which)
SSL_R_COMPRESSION_LIBRARY_ERROR);
goto err2;
}
if (SSL3_RECORD_setup(RECORD_LAYER_get_rrec(&s->rlayer),
SSL3_RT_MAX_ENCRYPTED_LENGTH))
if (!RECORD_LAYER_setup_comp_buffer(&s->rlayer))
goto err;
}
#endif