rv = SEC_ASN1DecodeItem(arena, pubk, SECKEY_RSAPublicKeyTemplate,
rv = SEC_QuickDERDecodeItem(arena, pubk, SECKEY_RSAPublicKeyTemplate,
SECKEY_DecodeDERPublicKey(SECItem *pubkder){    PRArenaPool *arena;    SECKEYPublicKey *pubk;    SECStatus rv;    arena = PORT_NewArena (DER_DEFAULT_CHUNKSIZE);    if (arena == NULL) {	PORT_SetError (SEC_ERROR_NO_MEMORY);	return NULL;    }    pubk = (SECKEYPublicKey *) PORT_ArenaZAlloc (arena, sizeof (SECKEYPublicKey));    if (pubk != NULL) {	pubk->arena = arena;	pubk->pkcs11Slot = NULL;	pubk->pkcs11ID = 0;	prepare_rsa_pub_key_for_asn1(pubk);	rv = SEC_ASN1DecodeItem(arena, pubk, SECKEY_RSAPublicKeyTemplate,				pubkder);	if (rv == SECSuccess)	    return pubk;	SECKEY_DestroyPublicKey (pubk);    } else {	PORT_SetError (SEC_ERROR_NO_MEMORY);    }    PORT_FreeArena (arena, PR_FALSE);    return NULL;}