NSSLOWCERTSignedData sd;
nsslowcert_KeyFromDERCert(PRArenaPool *arena, SECItem *derCert, SECItem *key){    int rv;    NSSLOWCERTSignedData sd;    NSSLOWCERTCertKey certkey;    PORT_Memset(&sd, 0, sizeof(NSSLOWCERTSignedData));        PORT_Memset(&certkey, 0, sizeof(NSSLOWCERTCertKey));        rv = SEC_ASN1DecodeItem(arena, &sd, nsslowcert_SignedDataTemplate, derCert);        if ( rv ) {	goto loser;    }        PORT_Memset(&certkey, 0, sizeof(NSSLOWCERTCertKey));    rv = SEC_ASN1DecodeItem(arena, &certkey, 					nsslowcert_CertKeyTemplate, &sd.data);    if ( rv ) {	goto loser;    }    return(nsslowcert_KeyFromIssuerAndSN(arena, &certkey.derIssuer,				   &certkey.serialNumber, key));loser:    return(SECFailure);}