{
ENGINE *e = NULL;
unsigned char *buf=NULL;
- int i,err=0;
+ int i,err=1;
const EVP_MD *md=NULL,*m;
BIO *in=NULL,*inp;
BIO *bmd=NULL;
#endif
char *hmac_key=NULL;
char *mac_name=NULL;
- STACK *sigopts = NULL, *macopts = NULL;
+ STACK_OF(STRING) *sigopts = NULL, *macopts = NULL;
apps_startup();
if (--argc < 1)
break;
if (!sigopts)
- sigopts = sk_new_null();
- if (!sigopts || !sk_push(sigopts, *(++argv)))
+ sigopts = sk_STRING_new_null();
+ if (!sigopts || !sk_STRING_push(sigopts, *(++argv)))
break;
}
else if (strcmp(*argv,"-macopt") == 0)
if (--argc < 1)
break;
if (!macopts)
- macopts = sk_new_null();
- if (!macopts || !sk_push(macopts, *(++argv)))
+ macopts = sk_STRING_new_null();
+ if (!macopts || !sk_STRING_push(macopts, *(++argv)))
break;
}
else if ((m=EVP_get_digestbyname(&((*argv)[1]))) != NULL)
if(do_verify && !sigfile) {
BIO_printf(bio_err, "No signature to verify: use the -signature option\n");
- err = 1;
goto end;
}
BIO_printf(bio_err,"-signature file signature to verify\n");
BIO_printf(bio_err,"-sigopt nm:v signature parameter\n");
BIO_printf(bio_err,"-binary output in binary form\n");
+ BIO_printf(bio_err,"-hmac key create hashed MAC with key\n");
#ifndef OPENSSL_NO_ENGINE
BIO_printf(bio_err,"-engine e use engine e, possibly a hardware device.\n");
#endif
BIO_printf(bio_err,"-%-14s to use the %s message digest algorithm\n",
SN_whirlpool,SN_whirlpool);
#endif
- err=1;
goto end;
}
}
if(out_bin == -1) {
- if(keyfile) out_bin = 1;
- else out_bin = 0;
+ if(keyfile)
+ out_bin = 1;
+ else
+ out_bin = 0;
}
if(randfile)
if (macopts)
{
char *macopt;
- for (i = 0; i < sk_num(macopts); i++)
+ for (i = 0; i < sk_STRING_num(macopts); i++)
{
- macopt = sk_value(macopts, i);
+ macopt = sk_STRING_value(macopts, i);
if (pkey_ctrl_string(mac_ctx, macopt) <= 0)
{
BIO_printf(bio_err,
if (sigopts)
{
char *sigopt;
- for (i = 0; i < sk_num(sigopts); i++)
+ for (i = 0; i < sk_STRING_num(sigopts); i++)
{
- sigopt = sk_value(sigopts, i);
+ sigopt = sk_STRING_value(sigopts, i);
if (pkey_ctrl_string(pctx, sigopt) <= 0)
{
BIO_printf(bio_err,
}
else
{
- const char *md_name, *sig_name;
- if(out_bin)
- {
- md_name = NULL;
- sig_name = NULL;
- }
- else
+ const char *md_name = NULL, *sig_name = NULL;
+ if(!out_bin)
{
if (sigkey)
{
}
md_name = EVP_MD_name(md);
}
+ err = 0;
for (i=0; i<argc; i++)
{
int r;
BIO_free_all(out);
EVP_PKEY_free(sigkey);
if (sigopts)
- sk_free(sigopts);
+ sk_STRING_free(sigopts);
if (macopts)
- sk_free(macopts);
+ sk_STRING_free(macopts);
if(sigbuf) OPENSSL_free(sigbuf);
if (bmd != NULL) BIO_free(bmd);
apps_shutdown();
{
EVP_MD_CTX *ctx;
BIO_get_md_ctx(bp, &ctx);
+ len = BUFSIZE;
if(!EVP_DigestSignFinal(ctx, buf, &len))
{
BIO_printf(bio_err, "Error Signing Data\n");
else
{
if (sig_name)
- BIO_printf(out, "%s-%s(%s)=", sig_name, md_name, file);
+ BIO_printf(out, "%s-%s(%s)= ", sig_name, md_name, file);
else if (md_name)
- BIO_printf(out, "%s(%s)=", md_name, file);
+ BIO_printf(out, "%s(%s)= ", md_name, file);
else
- BIO_printf(out, "(%s)=", file);
+ BIO_printf(out, "(%s)= ", file);
for (i=0; i<(int)len; i++)
{
if (sep && (i != 0))