| OLD | NEW |
| (Empty) |
| 1 diff --git a/lib/ssl/sslinfo.c b/lib/ssl/sslinfo.c | |
| 2 index 527b1a4..c59879c 100644 | |
| 3 --- a/lib/ssl/sslinfo.c | |
| 4 +++ b/lib/ssl/sslinfo.c | |
| 5 @@ -406,8 +406,13 @@ SSL_ExportKeyingMaterial(PRFileDesc *fd, | |
| 6 return SECFailure; | |
| 7 } | |
| 8 | |
| 9 + ssl_GetRecvBufLock(ss); | |
| 10 + ssl_GetSSL3HandshakeLock(ss); | |
| 11 + | |
| 12 if (ss->version < SSL_LIBRARY_VERSION_3_1_TLS) { | |
| 13 PORT_SetError(SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_VERSION); | |
| 14 + ssl_ReleaseSSL3HandshakeLock(ss); | |
| 15 + ssl_ReleaseRecvBufLock(ss); | |
| 16 return SECFailure; | |
| 17 } | |
| 18 | |
| 19 @@ -418,6 +423,8 @@ SSL_ExportKeyingMaterial(PRFileDesc *fd, | |
| 20 } | |
| 21 val = PORT_Alloc(valLen); | |
| 22 if (!val) { | |
| 23 + ssl_ReleaseSSL3HandshakeLock(ss); | |
| 24 + ssl_ReleaseRecvBufLock(ss); | |
| 25 return SECFailure; | |
| 26 } | |
| 27 i = 0; | |
| 28 @@ -445,6 +452,8 @@ SSL_ExportKeyingMaterial(PRFileDesc *fd, | |
| 29 valLen, out, outLen); | |
| 30 } | |
| 31 ssl_ReleaseSpecReadLock(ss); | |
| 32 + ssl_ReleaseSSL3HandshakeLock(ss); | |
| 33 + ssl_ReleaseRecvBufLock(ss); | |
| 34 | |
| 35 PORT_ZFree(val, valLen); | |
| 36 return rv; | |
| OLD | NEW |