| Index: net/third_party/nss/ssl/sslnonce.c
|
| diff --git a/net/third_party/nss/ssl/sslnonce.c b/net/third_party/nss/ssl/sslnonce.c
|
| index eb5004c19665e05677ec6787db600b85eeb82730..1ca19ca072cc71265ca63730484785d2cd082261 100644
|
| --- a/net/third_party/nss/ssl/sslnonce.c
|
| +++ b/net/third_party/nss/ssl/sslnonce.c
|
| @@ -122,7 +122,21 @@ ssl_DestroySID(sslSessionID *sid)
|
| if (sid->version < SSL_LIBRARY_VERSION_3_0) {
|
| SECITEM_ZfreeItem(&sid->u.ssl2.masterKey, PR_FALSE);
|
| SECITEM_ZfreeItem(&sid->u.ssl2.cipherArg, PR_FALSE);
|
| + } else {
|
| + if (sid->u.ssl3.sessionTicket.ticket.data) {
|
| + SECITEM_FreeItem(&sid->u.ssl3.sessionTicket.ticket, PR_FALSE);
|
| + }
|
| + if (sid->u.ssl3.srvName.data) {
|
| + SECITEM_FreeItem(&sid->u.ssl3.srvName, PR_FALSE);
|
| + }
|
| + if (sid->u.ssl3.signedCertTimestamps.data) {
|
| + SECITEM_FreeItem(&sid->u.ssl3.signedCertTimestamps, PR_FALSE);
|
| + }
|
| + if (sid->u.ssl3.originalHandshakeHash.data) {
|
| + SECITEM_FreeItem(&sid->u.ssl3.originalHandshakeHash, PR_FALSE);
|
| + }
|
| }
|
| +
|
| if (sid->peerID != NULL)
|
| PORT_Free((void *)sid->peerID); /* CONST */
|
|
|
| @@ -142,16 +156,7 @@ ssl_DestroySID(sslSessionID *sid)
|
| if ( sid->localCert ) {
|
| CERT_DestroyCertificate(sid->localCert);
|
| }
|
| - if (sid->u.ssl3.sessionTicket.ticket.data) {
|
| - SECITEM_FreeItem(&sid->u.ssl3.sessionTicket.ticket, PR_FALSE);
|
| - }
|
| - if (sid->u.ssl3.srvName.data) {
|
| - SECITEM_FreeItem(&sid->u.ssl3.srvName, PR_FALSE);
|
| - }
|
| - if (sid->u.ssl3.originalHandshakeHash.data) {
|
| - SECITEM_FreeItem(&sid->u.ssl3.originalHandshakeHash, PR_FALSE);
|
| - }
|
| -
|
| +
|
| PORT_ZFree(sid, sizeof(sslSessionID));
|
| }
|
|
|
|
|