Thanks for the explanation. Next, serialise/deseralise of the session is failing. Test code: { SSL_SESSION * ss = SSL_get_session(ssl); uschar * sess_asn1; int len; len = i2d_SSL_SESSION(ss, &sess_asn1); { SSL_SESSION * ss = NULL; if (!(d2i_SSL_SESSION(&ss, CUSS &sess_asn1, (long)len))) { DEBUG(D_tls) { ERR_error_string_n(ERR_get_error(), ssl_errstring, sizeof(ssl_errstring)); debug_printf("decoding session: %s\n", ssl_errstring); } } } gets me: "decoding session: error:0D0680A8:asn1 encoding routines:asn1_check_tlen:wrong tag" -- Cheers, Jeremy