- if(!noprompt &&
- EVP_read_pw_string(pass, 50, "Enter Export Password:", 1)) {
- BIO_printf (bio_err, "Can't read Password\n");
- goto export_end;
- }
- if (!twopass) strcpy(macpass, pass);
- /* Turn certbags into encrypted authsafe */
- authsafe = PKCS12_pack_p7encdata(cert_pbe, cpass, -1, NULL, 0,
- iter, bags);
- sk_PKCS12_SAFEBAG_pop_free(bags, PKCS12_SAFEBAG_free);
- bags = NULL;
-
- if (!authsafe) {
- ERR_print_errors (bio_err);
- goto export_end;
- }
-
- safes = sk_PKCS7_new_null ();
- sk_PKCS7_push (safes, authsafe);
-
-#ifdef CRYPTO_MDEBUG
- CRYPTO_pop_info();
- CRYPTO_push_info("building shrouded key bag");
-#endif
-
- /* Make a shrouded key bag */
- p8 = EVP_PKEY2PKCS8 (key);
- if(keytype) PKCS8_add_keyusage(p8, keytype);
- bag = PKCS12_MAKE_SHKEYBAG(key_pbe, cpass, -1, NULL, 0, iter, p8);
- PKCS8_PRIV_KEY_INFO_free(p8);
- p8 = NULL;
- if (name) PKCS12_add_friendlyname (bag, name, -1);
- if(csp_name) PKCS12_add_CSPName_asc(bag, csp_name, -1);
- PKCS12_add_localkeyid (bag, keyid, keyidlen);
- bags = sk_PKCS12_SAFEBAG_new_null();
- sk_PKCS12_SAFEBAG_push (bags, bag);
+ for (i = 0; i < sk_num(canames); i++)
+ {
+ catmp = (unsigned char *)sk_value(canames, i);
+ X509_alias_set1(sk_X509_value(certs, i), catmp, -1);
+ }
+