+#if USE_CDSA_CRYPTO
+ algorithm = SECOID_FindyCssmAlgorithmByTag(bulkalgtag);
+ if (!algorithm)
+ goto loser;
+ rv = SecKeyGenerate(NULL, /* keychainRef */
+ algorithm,
+ SecCmsContentInfoGetBulkKeySize(cinfo),
+ 0, /* contextHandle */
+ CSSM_KEYUSE_ENCRYPT | CSSM_KEYUSE_DECRYPT,
+ CSSM_KEYATTR_EXTRACTABLE,
+ NULL, /* initialAccess */
+ &bulkkey);
+ if (rv)
+ goto loser;
+#else