nssArena_Destroy(arena);
add_email_entry(  NSSArena *arena,  nssTDCertificateCache *cache,   NSSCertificate *cert,  nssList *subjectList){    PRStatus nssrv = PR_SUCCESS;    nssList *subjects;    cache_entry *ce;    ce = (cache_entry *)nssHash_Lookup(cache->email, cert->email);    if (ce) {	/* Already have an entry for this email address, but not subject */	subjects = ce->entry.list;	nssrv = nssList_AddUnique(subjects, subjectList);	ce->hits++;	ce->lastHit = PR_Now();#ifdef DEBUG_CACHE	log_cert_ref("added subject to email for", cert);#endif    } else {	NSSASCII7 *email;	/* Create a new list of subject lists, add this subject */	subjects = nssList_Create(arena, PR_TRUE);	if (!subjects) {	    return PR_FAILURE;	}	/* Add the new subject to the list */	nssrv = nssList_AddUnique(subjects, subjectList);	if (nssrv != PR_SUCCESS) {	    return nssrv;	}	/* Add the new entry to the cache */	ce = new_cache_entry(arena, (void *)subjects);	if (!ce) {	    return PR_FAILURE;	}	email = nssUTF8_Duplicate(cert->email, arena);	if (!email) {	    return PR_FAILURE;	}	nssrv = nssHash_Add(cache->email, email, ce);	if (nssrv != PR_SUCCESS) {	    return nssrv;	}#ifdef DEBUG_CACHE	log_cert_ref("created email for", cert);#endif    }    return nssrv;}