EVP_PKEY_CTX *genctx = NULL;
const char *keyalg = NULL;
char *keyalgstr = NULL;
- STACK *pkeyopts = NULL;
+ STACK_OF(STRING) *pkeyopts = NULL;
EVP_PKEY *pkey=NULL;
int i=0,badops=0,newreq=0,verbose=0,pkey_type=-1;
long newkey = -1;
if (--argc < 1)
goto bad;
if (!pkeyopts)
- pkeyopts = sk_new_null();
- if (!pkeyopts || !sk_push(pkeyopts, *(++argv)))
+ pkeyopts = sk_STRING_new_null();
+ if (!pkeyopts || !sk_STRING_push(pkeyopts, *(++argv)))
goto bad;
}
else if (strcmp(*argv,"-batch") == 0)
if (pkeyopts)
{
char *genopt;
- for (i = 0; i < sk_num(pkeyopts); i++)
+ for (i = 0; i < sk_STRING_num(pkeyopts); i++)
{
- genopt = sk_value(pkeyopts, i);
+ genopt = sk_STRING_value(pkeyopts, i);
if (pkey_ctrl_string(genctx, genopt) <= 0)
{
BIO_printf(bio_err,
if (!X509_set_issuer_name(x509ss, X509_REQ_get_subject_name(req))) goto end;
if (!X509_gmtime_adj(X509_get_notBefore(x509ss),0)) goto end;
- if (!X509_gmtime_adj(X509_get_notAfter(x509ss), (long)60*60*24*days)) goto end;
+ if (!X509_time_adj_ex(X509_get_notAfter(x509ss), days, 0, NULL)) goto end;
if (!X509_set_subject_name(x509ss, X509_REQ_get_subject_name(req))) goto end;
tmppkey = X509_REQ_get_pubkey(req);
if (!tmppkey || !X509_set_pubkey(x509ss,tmppkey)) goto end;
if (genctx)
EVP_PKEY_CTX_free(genctx);
if (pkeyopts)
- sk_free(pkeyopts);
+ sk_STRING_free(pkeyopts);
#ifndef OPENSSL_NO_ENGINE
if (gen_eng)
ENGINE_free(gen_eng);