rv = nsslowcert_KeyFromDERCert(arena, &cert->derCert, &cert->certKey);
rv = nsslowcert_KeyFromIssuerAndSN(arena, &cert->derIssuer, &cert->serialNumber, &cert->certKey);
nsslowcert_DecodeDERCertificate(SECItem *derSignedCert, PRBool copyDER,			 char *nickname){    NSSLOWCERTCertificate *cert;    PRArenaPool *arena;    void *data;    int rv;    int len;        /* make a new arena */    arena = PORT_NewArena(SOFT_DEFAULT_CHUNKSIZE);        if ( !arena ) {	return 0;    }    /* allocate the certificate structure */    cert = (NSSLOWCERTCertificate *)PORT_ArenaZAlloc(arena, sizeof(NSSLOWCERTCertificate));        if ( !cert ) {	goto loser;    }        cert->arena = arena;        if ( copyDER ) {	/* copy the DER data for the cert into this arena */	data = (void *)PORT_ArenaAlloc(arena, derSignedCert->len);	if ( !data ) {	    goto loser;	}	cert->derCert.data = (unsigned char *)data;	cert->derCert.len = derSignedCert->len;	PORT_Memcpy(data, derSignedCert->data, derSignedCert->len);    } else {	/* point to passed in DER data */	cert->derCert = *derSignedCert;    }    /* decode the certificate info */    rv = SEC_ASN1DecodeItem(arena, cert, nsslowcert_SignedCertificateTemplate,                    &cert->derCert);    /* cert->subjectKeyID;	 x509v3 subject key identifier */    cert->dbEntry = NULL;    cert ->trust = NULL;    /* generate and save the database key for the cert */    rv = nsslowcert_KeyFromDERCert(arena, &cert->derCert, &cert->certKey);    if ( rv ) {	goto loser;    }    /* set the nickname */    if ( nickname == NULL ) {	cert->nickname = NULL;    } else {	/* copy and install the nickname */	len = PORT_Strlen(nickname) + 1;	cert->nickname = (char*)PORT_ArenaAlloc(arena, len);	if ( cert->nickname == NULL ) {	    goto loser;	}	PORT_Memcpy(cert->nickname, nickname, len);    }#ifdef FIXME    /* initialize the subjectKeyID */    rv = cert_GetKeyID(cert);    if ( rv != SECSuccess ) {	goto loser;    }    /* set the email address */    cert->emailAddr = CERT_GetCertificateEmailAddress(cert);    #endif        cert->referenceCount = 1;        return(cert);    loser:    if ( arena ) {	PORT_FreeArena(arena, PR_FALSE);    }        return(0);}