diff options
author | Bodo Möller <bodo@openssl.org> | 2011-09-05 13:31:07 +0000 |
---|---|---|
committer | Bodo Möller <bodo@openssl.org> | 2011-09-05 13:31:07 +0000 |
commit | 5ff6e2dfbbc222296d2eec592412042e4c5389af (patch) | |
tree | 1bcf0454e8a92d05e80efb969cff3a4673e3c53c /ssl/ssl_asn1.c | |
parent | 61ac68f9f65e4dafb2ef5407a2d4c587d9c9f74d (diff) |
Fix d2i_SSL_SESSION.
Diffstat (limited to 'ssl/ssl_asn1.c')
-rw-r--r-- | ssl/ssl_asn1.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c index 994a654edb..9fd3535ca6 100644 --- a/ssl/ssl_asn1.c +++ b/ssl/ssl_asn1.c @@ -571,6 +571,19 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp, } else ret->psk_identity_hint=NULL; + + os.length=0; + os.data=NULL; + M_ASN1_D2I_get_EXP_opt(osp,d2i_ASN1_OCTET_STRING,8); + if (os.data) + { + ret->psk_identity = BUF_strndup((char *)os.data, os.length); + OPENSSL_free(os.data); + os.data = NULL; + os.length = 0; + } + else + ret->psk_identity=NULL; #endif /* OPENSSL_NO_PSK */ #ifndef OPENSSL_NO_TLSEXT |