* *
*****************************************************************************/
-#define RECORD_LAYER_set_ssl(rl, s) ((rl)->s = (s))
#define RECORD_LAYER_set_read_ahead(rl, ra) ((rl)->read_ahead = (ra))
#define RECORD_LAYER_get_read_ahead(rl) ((rl)->read_ahead)
#define RECORD_LAYER_get_rbuf(rl) (&(rl)->rbuf)
#define RECORD_LAYER_get_rrec(rl) (&(rl)->rrec)
#define RECORD_LAYER_get_wrec(rl) (&(rl)->wrec)
+void RECORD_LAYER_init(RECORD_LAYER *rl, SSL *s);
void RECORD_LAYER_clear(RECORD_LAYER *rl);
void RECORD_LAYER_release(RECORD_LAYER *rl);
int RECORD_LAYER_read_pending(RECORD_LAYER *rl);
# define EVP_CIPH_FLAG_TLS1_1_MULTIBLOCK 0
#endif
+void RECORD_LAYER_init(RECORD_LAYER *rl, SSL *s)
+{
+ rl->s = s;
+ SSL3_RECORD_clear(&rl->rrec);
+ SSL3_RECORD_clear(&rl->wrec);
+}
+
void RECORD_LAYER_clear(RECORD_LAYER *rl)
{
unsigned char *rp, *wp;
goto err;
memset(s, 0, sizeof(SSL));
- RECORD_LAYER_set_ssl(&s->rlayer, s);
- SSL3_RECORD_clear(RECORD_LAYER_get_rrec(&s->rlayer));
- SSL3_RECORD_clear(RECORD_LAYER_get_wrec(&s->rlayer));
+ RECORD_LAYER_init(&s->rlayer, s);
#ifndef OPENSSL_NO_KRB5
s->kssl_ctx = kssl_ctx_new();