diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-04-25 23:08:37 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-04-25 23:08:37 +0200 |
commit | 42f8488a5f66d7c1e5324bd1755d7f693b16ee97 (patch) | |
tree | 54c7d2a62c4ea34b1250b5362c8e6f89d03f1a02 /security/nss/lib/ssl/sslreveal.c | |
parent | 681c39a0ecc84fc918b2bec72cc69ad27d39903a (diff) | |
parent | 6c3f95480a191ce432ddfb2aa400a6d70c4884a8 (diff) | |
download | UXP-42f8488a5f66d7c1e5324bd1755d7f693b16ee97.tar UXP-42f8488a5f66d7c1e5324bd1755d7f693b16ee97.tar.gz UXP-42f8488a5f66d7c1e5324bd1755d7f693b16ee97.tar.lz UXP-42f8488a5f66d7c1e5324bd1755d7f693b16ee97.tar.xz UXP-42f8488a5f66d7c1e5324bd1755d7f693b16ee97.zip |
Merge branch 'master' into Basilisk-releasev2018.04.26
Diffstat (limited to 'security/nss/lib/ssl/sslreveal.c')
-rw-r--r-- | security/nss/lib/ssl/sslreveal.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/security/nss/lib/ssl/sslreveal.c b/security/nss/lib/ssl/sslreveal.c index cc16f574d..4c124a1dc 100644 --- a/security/nss/lib/ssl/sslreveal.c +++ b/security/nss/lib/ssl/sslreveal.c @@ -92,16 +92,18 @@ SSL_HandshakeNegotiatedExtension(PRFileDesc *socket, /* according to public API SSL_GetChannelInfo, this doesn't need a lock */ if (sslsocket->opt.useSecurity) { - /* now we know this socket went through ssl3_InitState() and - * ss->xtnData got initialized, which is the only member accessed by - * ssl3_ExtensionNegotiated(); - * Member xtnData appears to get accessed in functions that handle - * the handshake (hello messages and extension sending), - * therefore the handshake lock should be sufficient. - */ - ssl_GetSSL3HandshakeLock(sslsocket); - *pYes = ssl3_ExtensionNegotiated(sslsocket, extId); - ssl_ReleaseSSL3HandshakeLock(sslsocket); + if (sslsocket->ssl3.initialized) { /* SSL3 and TLS */ + /* now we know this socket went through ssl3_InitState() and + * ss->xtnData got initialized, which is the only member accessed by + * ssl3_ExtensionNegotiated(); + * Member xtnData appears to get accessed in functions that handle + * the handshake (hello messages and extension sending), + * therefore the handshake lock should be sufficient. + */ + ssl_GetSSL3HandshakeLock(sslsocket); + *pYes = ssl3_ExtensionNegotiated(sslsocket, extId); + ssl_ReleaseSSL3HandshakeLock(sslsocket); + } } return SECSuccess; |