Move ssl3_pending into the record layer
authorMatt Caswell <matt@openssl.org>
Mon, 2 Feb 2015 14:03:50 +0000 (14:03 +0000)
committerMatt Caswell <matt@openssl.org>
Thu, 26 Mar 2015 15:01:59 +0000 (15:01 +0000)
Reviewed-by: Richard Levitte <levitte@openssl.org>
ssl/record/rec_layer.h
ssl/record/s3_pkt.c
ssl/s3_lib.c
ssl/ssl_locl.h

index a4f0eb8..4fb374d 100644 (file)
@@ -171,6 +171,7 @@ void RECORD_LAYER_release(RECORD_LAYER *rl);
 int RECORD_LAYER_read_pending(RECORD_LAYER *rl);
 int RECORD_LAYER_write_pending(RECORD_LAYER *rl);
 int RECORD_LAYER_set_data(RECORD_LAYER *rl, const unsigned char *buf, int len);
+__owur int ssl3_pending(const SSL *s);
 __owur int ssl23_read_bytes(SSL *s, int n);
 __owur int ssl23_write_bytes(SSL *s);
 __owur int ssl3_write_bytes(SSL *s, int type, const void *buf, int len);
index 0695d81..7653d8b 100644 (file)
@@ -201,6 +201,15 @@ int RECORD_LAYER_set_data(RECORD_LAYER *rl, const unsigned char *buf, int len)
     return 1;
 }
 
+int ssl3_pending(const SSL *s)
+{
+    if (s->rstate == SSL_ST_READ_BODY)
+        return 0;
+
+    return (SSL3_RECORD_get_type(&s->rlayer.rrec) == SSL3_RT_APPLICATION_DATA)
+           ? SSL3_RECORD_get_length(&s->rlayer.rrec) : 0;
+}
+
 int ssl3_read_n(SSL *s, int n, int max, int extend)
 {
     /*
index 2b745f6..c2f964d 100644 (file)
@@ -3078,16 +3078,6 @@ const SSL_CIPHER *ssl3_get_cipher(unsigned int u)
         return (NULL);
 }
 
-int ssl3_pending(const SSL *s)
-{
-    if (s->rstate == SSL_ST_READ_BODY)
-        return 0;
-
-    return (SSL3_RECORD_get_type(RECORD_LAYER_get_rrec(&s->rlayer))
-           == SSL3_RT_APPLICATION_DATA)
-           ? SSL3_RECORD_get_length(RECORD_LAYER_get_rrec(&s->rlayer)) : 0;
-}
-
 int ssl3_set_handshake_header(SSL *s, int htype, unsigned long len)
 {
     unsigned char *p = (unsigned char *)s->init_buf->data;
index e0dd259..323a00d 100644 (file)
@@ -2099,7 +2099,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);