diff options
author | Tomas Mraz <tmraz@fedoraproject.org> | 2020-08-06 11:20:43 +0200 |
---|---|---|
committer | Tomas Mraz <tmraz@fedoraproject.org> | 2020-08-13 10:19:25 +0200 |
commit | 925a9d0a8168bfd0b532bc6600ba3e7ab47a7592 (patch) | |
tree | f39a45144220697675769a16c0b883104046a49d /ssl | |
parent | ea7a58a60659d12d102ec78af4d6c3e589347150 (diff) |
Avoid segfault in SSL_export_keying_material if there is no session
Fixes #12588
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/12594)
(cherry picked from commit dffeec1c10a874d7c7b83c221dbbce82f755edb1)
Diffstat (limited to 'ssl')
-rw-r--r-- | ssl/ssl_lib.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 433a537969..b1df374817 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -2897,7 +2897,8 @@ int SSL_export_keying_material(SSL *s, unsigned char *out, size_t olen, const unsigned char *context, size_t contextlen, int use_context) { - if (s->version < TLS1_VERSION && s->version != DTLS1_BAD_VER) + if (s->session == NULL + || (s->version < TLS1_VERSION && s->version != DTLS1_BAD_VER)) return -1; return s->method->ssl3_enc->export_keying_material(s, out, olen, label, |