Fix ssl3_get_message handle message fragmentation correctly.
[openssl.git] / ssl / s3_both.c
index 21531d5..cd97280 100644 (file)
@@ -440,6 +440,7 @@ long ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
        /* next state (stn) */
        p=(unsigned char *)s->init_buf->data;
        n=s->s3->tmp.message_size;
+       n -= s->init_num;
        while (n > 0)
                {
                i=ssl3_read_bytes(s,SSL3_RT_HANDSHAKE,&p[s->init_num],n,0);