aboutsummaryrefslogtreecommitdiffstats
path: root/sm/sign.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2010-04-14 11:24:02 +0000
committerWerner Koch <[email protected]>2010-04-14 11:24:02 +0000
commit31d7bdfe771853a480203d7d4a661d476d2231a4 (patch)
tree470c4ed27b06188b1a1a000ce6fb2c41b260b96d /sm/sign.c
parent2010-04-13 Marcus Brinkmann <[email protected]> (diff)
downloadgnupg-31d7bdfe771853a480203d7d4a661d476d2231a4.tar.gz
gnupg-31d7bdfe771853a480203d7d4a661d476d2231a4.zip
Whole lot of changes to support CE.
Diffstat (limited to 'sm/sign.c')
-rw-r--r--sm/sign.c45
1 files changed, 24 insertions, 21 deletions
diff --git a/sm/sign.c b/sm/sign.c
index e6ce05ddd..f902a388d 100644
--- a/sm/sign.c
+++ b/sm/sign.c
@@ -503,31 +503,34 @@ gpgsm_sign (ctrl_t ctrl, certlist_t signerlist,
/* Check whether one of the certificates is qualified. Note that we
already validated the certificate and thus the user data stored
flag must be available. */
- for (cl=signerlist; cl; cl = cl->next)
+ if (!opt.no_chain_validation)
{
- size_t buflen;
- char buffer[1];
-
- err = ksba_cert_get_user_data (cl->cert, "is_qualified",
- &buffer, sizeof (buffer), &buflen);
- if (err || !buflen)
+ for (cl=signerlist; cl; cl = cl->next)
{
- log_error (_("checking for qualified certificate failed: %s\n"),
- gpg_strerror (err));
- rc = err;
- goto leave;
- }
- if (*buffer)
- err = gpgsm_qualified_consent (ctrl, cl->cert);
- else
- err = gpgsm_not_qualified_warning (ctrl, cl->cert);
- if (err)
- {
- rc = err;
- goto leave;
+ size_t buflen;
+ char buffer[1];
+
+ err = ksba_cert_get_user_data (cl->cert, "is_qualified",
+ &buffer, sizeof (buffer), &buflen);
+ if (err || !buflen)
+ {
+ log_error (_("checking for qualified certificate failed: %s\n"),
+ gpg_strerror (err));
+ rc = err;
+ goto leave;
+ }
+ if (*buffer)
+ err = gpgsm_qualified_consent (ctrl, cl->cert);
+ else
+ err = gpgsm_not_qualified_warning (ctrl, cl->cert);
+ if (err)
+ {
+ rc = err;
+ goto leave;
+ }
}
}
-
+
/* Prepare hashing (actually we are figuring out what we have set
above). */
rc = gcry_md_open (&data_md, 0, 0);