ssl3_DestroyCipherSpec(&ssl3->specs[0]); ssl3_DestroyCipherSpec(&ssl3->specs[1]);
ssl3_DestroyCipherSpec(&ss->ssl3.specs[0]); ssl3_DestroyCipherSpec(&ss->ssl3.specs[1]);
ssl3_DestroySSL3Info(ssl3State *ssl3){    if (ssl3 == NULL)	return;		/* success the easy way. */    if (ssl3->clientCertificate != NULL)	CERT_DestroyCertificate(ssl3->clientCertificate);    if (ssl3->clientPrivateKey != NULL)	SECKEY_DestroyPrivateKey(ssl3->clientPrivateKey);    if (ssl3->peerCertArena != NULL)	ssl3_CleanupPeerCerts(ssl3);    if (ssl3->clientCertChain != NULL) {       CERT_DestroyCertificateList(ssl3->clientCertChain);       ssl3->clientCertChain = NULL;    }    /* clean up handshake */    if (ssl3->hs.md5) {	PK11_DestroyContext(ssl3->hs.md5,PR_TRUE);    }    if (ssl3->hs.sha) {	PK11_DestroyContext(ssl3->hs.sha,PR_TRUE);    }    /* free the SSL3Buffer (msg_body) */    PORT_Free(ssl3->hs.msg_body.buf);    /* free up the CipherSpecs */    ssl3_DestroyCipherSpec(&ssl3->specs[0]);    ssl3_DestroyCipherSpec(&ssl3->specs[1]);    PORT_Free(ssl3);}