Encapsulate s->s3->wrec
authorMatt Caswell <matt@openssl.org>
Sun, 1 Feb 2015 15:30:37 +0000 (15:30 +0000)
committerMatt Caswell <matt@openssl.org>
Thu, 26 Mar 2015 13:53:07 +0000 (13:53 +0000)
Reviewed-by: Richard Levitte <levitte@openssl.org>
ssl/d1_pkt.c
ssl/record/rec_layer.h
ssl/s3_enc.c
ssl/s3_lib.c
ssl/s3_pkt.c
ssl/t1_enc.c

index 69a2467..fbfc723 100644 (file)
@@ -1468,7 +1468,7 @@ int do_dtls1_write(SSL *s, int type, const unsigned char *buf,
     if (len == 0 && !create_empty_fragment)
         return 0;
 
-    wr = &(s->s3->wrec);
+    wr = RECORD_LAYER_get_wrec(&s->rlayer);
     sess = s->session;
 
     if ((sess == NULL) ||
index 3a04b17..786d1a1 100644 (file)
@@ -133,3 +133,4 @@ typedef struct record_layer_st {
 #define RECORD_LAYER_get_rbuf(rl)               (&(rl)->rbuf)
 #define RECORD_LAYER_get_wbuf(rl)               (&(rl)->wbuf)
 #define RECORD_LAYER_get_rrec(rl)               (&(rl)->rrec)
+#define RECORD_LAYER_get_wrec(rl)               (&(rl)->s->s3->wrec)
index b36aca8..19cd49a 100644 (file)
@@ -500,7 +500,7 @@ int ssl3_enc(SSL *s, int send)
 
     if (send) {
         ds = s->enc_write_ctx;
-        rec = &(s->s3->wrec);
+        rec = RECORD_LAYER_get_wrec(&s->rlayer);
         if (s->enc_write_ctx == NULL)
             enc = NULL;
         else
@@ -725,7 +725,7 @@ int n_ssl3_mac(SSL *ssl, unsigned char *md, int send)
     int t;
 
     if (send) {
-        rec = &(ssl->s3->wrec);
+        rec = RECORD_LAYER_get_wrec(&ssl->rlayer);
         mac_sec = &(ssl->s3->write_mac_secret[0]);
         seq = &(ssl->s3->write_sequence[0]);
         hash = ssl->write_hash;
index 825abed..eaa15ba 100644 (file)
@@ -3112,7 +3112,7 @@ int ssl3_new(SSL *s)
         goto err;
     memset(s3, 0, sizeof *s3);
     s->s3 = s3;
-    memset(s3->wrec.seq_num, 0, sizeof(s3->wrec.seq_num));
+    SSL3_RECORD_clear(RECORD_LAYER_get_wrec(&s->rlayer));
     
 #ifndef OPENSSL_NO_SRP
     if(!SSL_SRP_CTX_init(s))
index b86ee1e..1ec7666 100644 (file)
@@ -619,7 +619,7 @@ int ssl3_do_compress(SSL *ssl)
     int i;
     SSL3_RECORD *wr;
 
-    wr = &(ssl->s3->wrec);
+    wr = RECORD_LAYER_get_wrec(&ssl->rlayer);
     i = COMP_compress_block(ssl->compress, wr->data,
                             SSL3_RT_MAX_COMPRESSED_LENGTH,
                             wr->input, (int)wr->length);
@@ -900,7 +900,7 @@ static int do_ssl3_write(SSL *s, int type, const unsigned char *buf,
     if (len == 0 && !create_empty_fragment)
         return 0;
 
-    wr = &(s->s3->wrec);
+    wr = RECORD_LAYER_get_wrec(&s->rlayer);
     sess = s->session;
 
     if ((sess == NULL) ||
index 70ea6c0..9f876b4 100644 (file)
@@ -749,7 +749,7 @@ int tls1_enc(SSL *s, int send)
             OPENSSL_assert(n >= 0);
         }
         ds = s->enc_write_ctx;
-        rec = &(s->s3->wrec);
+        rec = RECORD_LAYER_get_wrec(&s->rlayer);
         if (s->enc_write_ctx == NULL)
             enc = NULL;
         else {
@@ -971,7 +971,7 @@ int tls1_mac(SSL *ssl, unsigned char *md, int send)
     int t;
 
     if (send) {
-        rec = &(ssl->s3->wrec);
+        rec = RECORD_LAYER_get_wrec(&ssl->rlayer);
         seq = &(ssl->s3->write_sequence[0]);
         hash = ssl->write_hash;
     } else {