1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-02 22:46:30 +02:00

Mainly changes to adjust for the changed KSBA API.

This commit is contained in:
Werner Koch 2003-11-12 15:17:44 +00:00
parent f794da4ad4
commit dba40e5e45
36 changed files with 217 additions and 246 deletions

View file

@ -1,3 +1,7 @@
2003-11-12 Werner Koch <wk@gnupg.org>
Adjusted for API changes in Libksba.
2003-10-31 Werner Koch <wk@gnupg.org>
* certchain.c (gpgsm_validate_chain): Changed to use ksba_isotime_t.

View file

@ -27,9 +27,10 @@
#include <time.h>
#include <assert.h>
#include "gpgsm.h"
#include <ksba.h>
#include "gpgsm.h"
#include "i18n.h"
#ifdef HAVE_DOSISH_SYSTEM
@ -427,7 +428,7 @@ base64_writer_cb (void *cb_value, const void *buffer, size_t count)
parm->base64.idx = idx;
parm->base64.quad_count = quad_count;
return ferror (fp) ? KSBA_Write_Error:0;
return ferror (fp) ? gpg_error_from_errno (errno) : 0;
}
static int
@ -506,11 +507,11 @@ gpgsm_create_reader (Base64Context *ctx,
if (!*ctx)
return OUT_OF_CORE (errno);
r = ksba_reader_new ();
if (!r)
rc = ksba_reader_new (&r);
if (rc)
{
xfree (*ctx); *ctx = NULL;
return gpg_error (GPG_ERR_ENOMEM);
return rc;
}
(*ctx)->u.rparm.fp = fp;
@ -537,7 +538,7 @@ gpgsm_create_reader (Base64Context *ctx,
{
ksba_reader_release (r);
xfree (*ctx); *ctx = NULL;
return map_ksba_err (rc);
return rc;
}
*r_reader = r;
@ -571,11 +572,11 @@ gpgsm_create_writer (Base64Context *ctx,
if (!*ctx)
return OUT_OF_CORE (errno);
w = ksba_writer_new ();
if (!w)
rc = ksba_writer_new (&w);
if (rc)
{
xfree (*ctx); *ctx = NULL;
return gpg_error (GPG_ERR_ENOMEM);
return rc;
}
if (ctrl->create_pem || ctrl->create_base64)
@ -593,7 +594,7 @@ gpgsm_create_writer (Base64Context *ctx,
{
ksba_writer_release (w);
xfree (*ctx); *ctx = NULL;
return map_ksba_err (rc);
return rc;
}
*r_writer = w;

View file

@ -622,18 +622,18 @@ learn_cb (void *opaque, const void *buffer, size_t length)
/* FIXME: this should go into import.c */
cert = ksba_cert_new ();
if (!cert)
rc = ksba_cert_new (&cert);
if (rc)
{
parm->error = gpg_error (GPG_ERR_ENOMEM);
parm->error = rc;
return 0;
}
rc = ksba_cert_init_from_mem (cert, buf, len);
if (rc)
{
log_error ("failed to parse a certificate: %s\n", ksba_strerror (rc));
log_error ("failed to parse a certificate: %s\n", gpg_strerror (rc));
ksba_cert_release (cert);
parm->error = map_ksba_err (rc);
parm->error = rc;
return 0;
}

View file

@ -357,16 +357,16 @@ lookup_cb (void *opaque, const void *buffer, size_t length)
return 0;
}
cert = ksba_cert_new ();
if (!cert)
rc = ksba_cert_new (&cert);
if (rc)
{
parm->error = gpg_error (GPG_ERR_ENOMEM);
parm->error = rc;
return 0;
}
rc = ksba_cert_init_from_mem (cert, buf, len);
if (rc)
{
log_error ("failed to parse a certificate: %s\n", ksba_strerror (rc));
log_error ("failed to parse a certificate: %s\n", gpg_strerror (rc));
}
else
{

View file

@ -62,7 +62,7 @@ unknown_criticals (KsbaCert cert)
}
}
if (err && err != -1)
rc = map_ksba_err (err);
rc = err;
return rc;
}
@ -75,7 +75,7 @@ allowed_ca (KsbaCert cert, int *chainlen)
err = ksba_cert_is_ca (cert, &flag, chainlen);
if (err)
return map_ksba_err (err);
return err;
if (!flag)
{
log_error (_("issuer certificate is not marked as a CA\n"));
@ -94,10 +94,10 @@ check_cert_policy (KsbaCert cert)
int any_critical;
err = ksba_cert_get_cert_policies (cert, &policies);
if (err == KSBA_No_Data)
if (gpg_err_code (err) == GPG_ERR_NO_DATA)
return 0; /* no policy given */
if (err)
return map_ksba_err (err);
return err;
/* STRING is a line delimited list of certifiate policies as stored
in the certificate. The line itself is colon delimited where the
@ -471,7 +471,7 @@ gpgsm_validate_chain (CTRL ctrl, KsbaCert cert, ksba_isotime_t r_exptime)
if (rc)
{
log_error (_("certificate with invalid validity: %s\n"),
ksba_strerror (rc));
gpg_strerror (rc));
rc = gpg_error (GPG_ERR_BAD_CERT);
goto leave;
}
@ -522,7 +522,7 @@ gpgsm_validate_chain (CTRL ctrl, KsbaCert cert, ksba_isotime_t r_exptime)
rc = gpgsm_dirmngr_isvalid (subject_cert);
if (rc)
{
switch (rc)
switch (gpg_err_code (rc))
{
case GPG_ERR_CERT_REVOKED:
log_error (_("the certificate has been revoked\n"));

View file

@ -129,9 +129,9 @@ gpgsm_check_cert_sig (KsbaCert issuer_cert, KsbaCert cert)
rc = ksba_cert_hash (cert, 1, HASH_FNC, md);
if (rc)
{
log_error ("ksba_cert_hash failed: %s\n", ksba_strerror (rc));
log_error ("ksba_cert_hash failed: %s\n", gpg_strerror (rc));
gcry_md_close (md);
return map_ksba_err (rc);
return rc;
}
gcry_md_final (md);

View file

@ -45,7 +45,7 @@ cert_usage_p (KsbaCert cert, int mode)
unsigned int use;
err = ksba_cert_get_key_usage (cert, &use);
if (err == KSBA_No_Data)
if (gpg_err_code (err) == GPG_ERR_NO_DATA)
{
if (opt.verbose && mode < 2)
log_info (mode?
@ -56,8 +56,8 @@ cert_usage_p (KsbaCert cert, int mode)
if (err)
{
log_error (_("error getting key usage information: %s\n"),
ksba_strerror (err));
return map_ksba_err (err);
gpg_strerror (err));
return err;
}
if (mode == 4)

View file

@ -513,9 +513,9 @@ create_request (struct para_data_s *para, KsbaConstSexp public,
int rc = 0;
const char *s;
cr = ksba_certreq_new ();
if (!cr)
return gpg_error (GPG_ERR_ENOMEM);
err = ksba_certreq_new (&cr);
if (err)
return err;
rc = gcry_md_open (&md, GCRY_MD_SHA1, 0);
if (rc)
@ -533,8 +533,8 @@ create_request (struct para_data_s *para, KsbaConstSexp public,
if (err)
{
log_error ("error setting the subject's name: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -557,8 +557,8 @@ create_request (struct para_data_s *para, KsbaConstSexp public,
if (err)
{
log_error ("error setting the subject's alternate name: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}
@ -568,8 +568,8 @@ create_request (struct para_data_s *para, KsbaConstSexp public,
if (err)
{
log_error ("error setting the public key: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -578,8 +578,8 @@ create_request (struct para_data_s *para, KsbaConstSexp public,
err = ksba_certreq_build (cr, &stopreason);
if (err)
{
log_error ("ksba_certreq_build failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_error ("ksba_certreq_build failed: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
if (stopreason == KSBA_SR_NEED_SIG)
@ -630,8 +630,8 @@ create_request (struct para_data_s *para, KsbaConstSexp public,
if (err)
{
log_error ("failed to store the sig_val: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}

View file

@ -159,10 +159,10 @@ decrypt_filter (void *arg,
/* fixme: Should we issue an error when we have not seen one full block? */
if (!inlen)
return KSBA_Bug;
return gpg_error (GPG_ERR_BUG);
if (maxoutlen < 2*parm->blklen)
return KSBA_Bug;
return gpg_error (GPG_ERR_BUG);
/* make some space becuase we will later need an extra block at the end */
maxoutlen -= blklen;
@ -174,7 +174,7 @@ decrypt_filter (void *arg,
parm->helpblock[i] = ((const char*)inbuf)[j];
inlen -= j;
if (blklen > maxoutlen)
return KSBA_Bug;
return gpg_error (GPG_ERR_BUG);
if (i < blklen)
{
parm->helpblocklen = i;
@ -285,10 +285,10 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
goto leave;
}
cms = ksba_cms_new ();
if (!cms)
err = ksba_cms_new (&cms);
if (err)
{
rc = gpg_error (GPG_ERR_ENOMEM);
rc = err;
goto leave;
}
@ -296,8 +296,8 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
if (err)
{
log_debug ("ksba_cms_set_reader_writer failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -307,8 +307,8 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
err = ksba_cms_parse (cms, &stopreason);
if (err)
{
log_debug ("ksba_cms_parse failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_debug ("ksba_cms_parse failed: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
@ -352,8 +352,8 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
&dfparm.ivlen);
if (rc)
{
log_error ("error getting IV: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_error ("error getting IV: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
@ -369,7 +369,7 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
break; /* no more recipients */
if (err)
log_error ("recp %d - error getting info: %s\n",
recp, ksba_strerror (err));
recp, gpg_strerror (err));
else
{
KsbaCert cert = NULL;
@ -461,10 +461,8 @@ gpgsm_decrypt (CTRL ctrl, int in_fd, FILE *out_fp)
dfparm.lastblock,
dfparm.blklen - npadding);
if (rc)
{
rc = map_ksba_err (rc);
goto leave;
}
for (i=dfparm.blklen - npadding; i < dfparm.blklen; i++)
{
if (dfparm.lastblock[i] != npadding)

View file

@ -330,16 +330,14 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
goto leave;
}
reader = ksba_reader_new ();
if (!reader)
rc = KSBA_Out_Of_Core;
err = ksba_reader_new (&reader);
if (err)
rc = err;
if (!rc)
rc = ksba_reader_set_cb (reader, encrypt_cb, &encparm);
if (rc)
{
rc = map_ksba_err (rc);
goto leave;
}
encparm.fp = data_fp;
ctrl->pem_name = "ENCRYPTED MESSAGE";
@ -350,10 +348,10 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
goto leave;
}
cms = ksba_cms_new ();
if (!cms)
err = ksba_cms_new (&cms);
if (err)
{
rc = gpg_error (GPG_ERR_ENOMEM);
rc = err;
goto leave;
}
@ -361,8 +359,8 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
if (err)
{
log_debug ("ksba_cms_set_reader_writer failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -374,8 +372,8 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
if (err)
{
log_debug ("ksba_cms_set_content_type failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -399,8 +397,8 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
if (err)
{
log_error ("ksba_cms_set_content_enc_algo failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -432,8 +430,8 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
if (err)
{
log_error ("ksba_cms_add_recipient failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
xfree (encval);
goto leave;
}
@ -443,8 +441,8 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
if (err)
{
log_error ("ksba_cms_set_enc_val failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}
@ -456,8 +454,8 @@ gpgsm_encrypt (CTRL ctrl, CERTLIST recplist, int data_fd, FILE *out_fp)
err = ksba_cms_build (cms, &stopreason);
if (err)
{
log_debug ("ksba_cms_build failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_debug ("ksba_cms_build failed: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
}

View file

@ -155,7 +155,7 @@ gpgsm_export (CTRL ctrl, STRLIST names, FILE *fp)
rc = ksba_writer_write (writer, image, imagelen);
if (rc)
{
log_error ("write error: %s\n", ksba_strerror (rc));
log_error ("write error: %s\n", gpg_strerror (rc));
goto leave;
}

View file

@ -70,7 +70,7 @@ gpgsm_get_fingerprint (KsbaCert cert, int algo, char *array, int *r_len)
rc = ksba_cert_hash (cert, 0, HASH_FNC, md);
if (rc)
{
log_error ("ksba_cert_hash failed: %s\n", ksba_strerror (rc));
log_error ("ksba_cert_hash failed: %s\n", gpg_strerror (rc));
gcry_md_close (md);
memset (array, 0xff, len); /* better return an invalid fpr than NULL */
return array;
@ -204,7 +204,7 @@ gpgsm_get_keygrip_hexstring (KsbaCert cert)
serial number for this. In most cases the serial number is not
that large and the resulting string can be passed on an assuan
command line. Everything is hexencoded with the serialnumber
delimted from the has by a dot.
delimited from the hash by a dot.
The caller must free the string.
*/

View file

@ -221,19 +221,15 @@ import_one (CTRL ctrl, struct stats_s *stats, int in_fd)
KsbaStopReason stopreason;
int i;
cms = ksba_cms_new ();
if (!cms)
{
rc = gpg_error (GPG_ERR_ENOMEM);
goto leave;
}
rc = ksba_cms_new (&cms);
if (rc)
goto leave;
rc = ksba_cms_set_reader_writer (cms, reader, NULL);
if (rc)
{
log_error ("ksba_cms_set_reader_writer failed: %s\n",
ksba_strerror (rc));
rc = map_ksba_err (rc);
gpg_strerror (rc));
goto leave;
}
@ -243,8 +239,7 @@ import_one (CTRL ctrl, struct stats_s *stats, int in_fd)
rc = ksba_cms_parse (cms, &stopreason);
if (rc)
{
log_error ("ksba_cms_parse failed: %s\n", ksba_strerror (rc));
rc = map_ksba_err (rc);
log_error ("ksba_cms_parse failed: %s\n", gpg_strerror (rc));
goto leave;
}
@ -265,19 +260,13 @@ import_one (CTRL ctrl, struct stats_s *stats, int in_fd)
else if (ct == KSBA_CT_NONE)
{ /* Failed to identify this message - assume a certificate */
cert = ksba_cert_new ();
if (!cert)
{
rc = gpg_error (GPG_ERR_ENOMEM);
goto leave;
}
rc = ksba_cert_new (&cert);
if (rc)
goto leave;
rc = ksba_cert_read_der (cert, reader);
if (rc)
{
rc = map_ksba_err (rc);
goto leave;
}
goto leave;
check_and_store (ctrl, stats, cert, 0);
}

View file

@ -68,7 +68,7 @@ print_capabilities (KsbaCert cert, FILE *fp)
unsigned int use;
err = ksba_cert_get_key_usage (cert, &use);
if (err == KSBA_No_Data)
if (gpg_err_code (err) == GPG_ERR_NO_DATA)
{
putc ('e', fp);
putc ('s', fp);
@ -81,7 +81,7 @@ print_capabilities (KsbaCert cert, FILE *fp)
if (err)
{
log_error (_("error getting key usage information: %s\n"),
ksba_strerror (err));
gpg_strerror (err));
return;
}
@ -328,11 +328,11 @@ list_cert_std (KsbaCert cert, FILE *fp, int have_secret)
putc ('\n', fp);
kerr = ksba_cert_get_key_usage (cert, &kusage);
if (kerr != KSBA_No_Data)
if (gpg_err_code (kerr) != GPG_ERR_NO_DATA)
{
fputs (" key usage:", fp);
if (kerr)
fprintf (fp, " [error: %s]", ksba_strerror (kerr));
fprintf (fp, " [error: %s]", gpg_strerror (kerr));
else
{
if ( (kusage & KSBA_KEYUSAGE_DIGITAL_SIGNATURE))
@ -358,11 +358,11 @@ list_cert_std (KsbaCert cert, FILE *fp, int have_secret)
}
kerr = ksba_cert_get_cert_policies (cert, &string);
if (kerr != KSBA_No_Data)
if (gpg_err_code (kerr) != GPG_ERR_NO_DATA)
{
fputs (" policies: ", fp);
if (kerr)
fprintf (fp, "[error: %s]", ksba_strerror (kerr));
fprintf (fp, "[error: %s]", gpg_strerror (kerr));
else
{
for (p=string; *p; p++)
@ -381,7 +381,7 @@ list_cert_std (KsbaCert cert, FILE *fp, int have_secret)
{
fputs (" chain length: ", fp);
if (kerr)
fprintf (fp, "[error: %s]", ksba_strerror (kerr));
fprintf (fp, "[error: %s]", gpg_strerror (kerr));
else if (chainlen == -1)
fputs ("unlimited", fp);
else

View file

@ -26,7 +26,8 @@
#include <ctype.h>
#include <unistd.h>
#include <ksba.h>
#include "gpgsm.h"
#include <ksba.h>

View file

@ -88,8 +88,8 @@ hash_and_copy_data (int fd, gcry_md_hd_t md, KsbaWriter writer)
err = ksba_writer_write_octet_string (writer, buffer, nread, 0);
if (err)
{
log_error ("write failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_error ("write failed: %s\n", gpg_strerror (err));
rc = err;
}
}
}
@ -114,8 +114,8 @@ hash_and_copy_data (int fd, gcry_md_hd_t md, KsbaWriter writer)
err = ksba_writer_write_octet_string (writer, NULL, 0, 1);
if (err)
{
log_error ("write failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_error ("write failed: %s\n", gpg_strerror (err));
rc = err;
}
}
@ -278,8 +278,8 @@ add_certificate_list (CTRL ctrl, KsbaCMS cms, KsbaCert cert)
ksba_failure:
ksba_cert_release (cert);
log_error ("ksba_cms_add_cert failed: %s\n", ksba_strerror (err));
return map_ksba_err (err);
log_error ("ksba_cms_add_cert failed: %s\n", gpg_strerror (err));
return err;
}
@ -326,10 +326,10 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
goto leave;
}
cms = ksba_cms_new ();
if (!cms)
err = ksba_cms_new (&cms);
if (err)
{
rc = gpg_error (GPG_ERR_ENOMEM);
rc = err;
goto leave;
}
@ -337,8 +337,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_debug ("ksba_cms_set_reader_writer failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -349,8 +349,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_debug ("ksba_cms_set_content_type failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -386,8 +386,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
err = ksba_cms_add_signer (cms, cl->cert);
if (err)
{
log_error ("ksba_cms_add_signer failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_error ("ksba_cms_add_signer failed: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
rc = add_certificate_list (ctrl, cms, cl->cert);
@ -402,8 +402,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_debug ("ksba_cms_add_digest_algo failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}
@ -455,8 +455,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_error ("ksba_cms_set_message_digest failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}
@ -469,8 +469,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_error ("ksba_cms_set_signing_time failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}
@ -480,8 +480,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
err = ksba_cms_build (cms, &stopreason);
if (err)
{
log_debug ("ksba_cms_build failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_debug ("ksba_cms_build failed: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
@ -515,8 +515,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_error ("ksba_cms_set_message_digest failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
}
@ -546,7 +546,7 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (rc)
{
log_debug ("hashing signed attrs failed: %s\n",
ksba_strerror (rc));
gpg_strerror (rc));
gcry_md_close (md);
goto leave;
}
@ -563,8 +563,8 @@ gpgsm_sign (CTRL ctrl, CERTLIST signerlist,
if (err)
{
log_error ("failed to store the signature: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
gcry_md_close (md);
goto leave;
}

View file

@ -135,8 +135,8 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
}
}
cms = ksba_cms_new ();
if (!cms)
err = ksba_cms_new (&cms);
if (err)
{
rc = gpg_error (GPG_ERR_ENOMEM);
goto leave;
@ -146,8 +146,8 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
if (err)
{
log_error ("ksba_cms_set_reader_writer failed: %s\n",
ksba_strerror (err));
rc = map_ksba_err (err);
gpg_strerror (err));
rc = err;
goto leave;
}
@ -166,8 +166,8 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
err = ksba_cms_parse (cms, &stopreason);
if (err)
{
log_error ("ksba_cms_parse failed: %s\n", ksba_strerror (err));
rc = map_ksba_err (err);
log_error ("ksba_cms_parse failed: %s\n", gpg_strerror (err));
rc = err;
goto leave;
}
@ -250,7 +250,8 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
char *ctattr;
err = ksba_cms_get_issuer_serial (cms, signer, &issuer, &serial);
if (!signer && err == KSBA_No_Data && data_fd == -1 && is_detached)
if (!signer && gpg_err_code (err) == GPG_ERR_NO_DATA
&& data_fd == -1 && is_detached)
{
log_info ("certs-only message accepted\n");
err = 0;
@ -272,11 +273,11 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
}
err = ksba_cms_get_signing_time (cms, signer, sigtime);
if (err == KSBA_No_Data)
if (gpg_err_code (err) == GPG_ERR_NO_DATA)
*sigtime = 0;
else if (err)
{
log_error ("error getting signing time: %s\n", ksba_strerror (err));
log_error ("error getting signing time: %s\n", gpg_strerror (err));
*sigtime = 0; /* FIXME: we can't encode an error in the time
string. */
}
@ -295,7 +296,7 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
goto next_signer;
}
}
else if (err == KSBA_No_Data)
else if (gpg_err_code (err) == GPG_ERR_NO_DATA)
{
assert (!msgdigest);
err = 0;
@ -328,7 +329,7 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
else if (err != -1)
{
log_error ("error getting content-type attribute: %s\n",
ksba_strerror (err));
gpg_strerror (err));
goto next_signer;
}
err = 0;
@ -420,7 +421,7 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
if (rc)
{
log_error ("hashing signed attrs failed: %s\n",
ksba_strerror (rc));
gpg_strerror (rc));
gcry_md_close (md);
goto next_signer;
}
@ -514,9 +515,9 @@ gpgsm_verify (CTRL ctrl, int in_fd, int data_fd, FILE *out_fp)
}
rc = 0;
if (err)
{
log_error ("ksba error: %s\n", ksba_strerror (err));
rc = map_ksba_err (rc);
{ /* FIXME: still needed? */
log_error ("ksba error: %s\n", gpg_strerror (err));
rc = err;
}