diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2014-06-02 14:12:07 +0100 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2014-06-02 14:19:43 +0100 |
commit | 4967a832ab7e57613dc8baebd316a2542dabbddf (patch) | |
tree | 87a63fdbcbc4966e9fd48f93a7bbb2c07c27d8a9 /apps | |
parent | 646886682373e76dee233f7b918dec0c83e180fc (diff) |
Allow reordering of certificates when signing.
Add certificates if -nocerts and -certfile specified when signing
in smime application. This can be used this to specify the
order certificates appear in the PKCS#7 structure: some broken
applications require a certain ordering.
PR#3316
(cherry picked from commit e114abee9ec084a56c1d6076ac6de8a7a3a5cf34)
Diffstat (limited to 'apps')
-rw-r--r-- | apps/smime.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/smime.c b/apps/smime.c index d1fe32d31b..d1ee48937e 100644 --- a/apps/smime.c +++ b/apps/smime.c @@ -704,6 +704,14 @@ int MAIN(int argc, char **argv) p7 = PKCS7_sign(NULL, NULL, other, in, flags); if (!p7) goto end; + if (flags & PKCS7_NOCERTS) + { + for (i = 0; i < sk_X509_num(other); i++) + { + X509 *x = sk_X509_value(other, i); + PKCS7_add_certificate(p7, x); + } + } } else flags |= PKCS7_REUSE_DIGEST; |