X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=lib%2Fopenssl%2Fdemos%2Fsmime%2Fsmver.c;fp=lib%2Fopenssl%2Fdemos%2Fsmime%2Fsmver.c;h=75411c40d01595a8974ccc1039a13095b4ea1593;hb=02ed66432c92de70694700164f986190aad3cbc5;hp=9d360c273a3e5f8971d5530db136a8a728ab7b90;hpb=89016837dcbf2775cd15dc8cbaba00dc6379f86e;p=cassiopeia.git diff --git a/lib/openssl/demos/smime/smver.c b/lib/openssl/demos/smime/smver.c index 9d360c2..75411c4 100644 --- a/lib/openssl/demos/smime/smver.c +++ b/lib/openssl/demos/smime/smver.c @@ -1,87 +1,83 @@ +/* + * Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL license (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + /* Simple S/MIME verification example */ #include #include #include int main(int argc, char **argv) - { - BIO *in = NULL, *out = NULL, *tbio = NULL, *cont = NULL; - X509_STORE *st = NULL; - X509 *cacert = NULL; - PKCS7 *p7 = NULL; - - int ret = 1; - - OpenSSL_add_all_algorithms(); - ERR_load_crypto_strings(); - - /* Set up trusted CA certificate store */ - - st = X509_STORE_new(); - - /* Read in signer certificate and private key */ - tbio = BIO_new_file("cacert.pem", "r"); - - if (!tbio) - goto err; +{ + BIO *in = NULL, *out = NULL, *tbio = NULL, *cont = NULL; + X509_STORE *st = NULL; + X509 *cacert = NULL; + PKCS7 *p7 = NULL; - cacert = PEM_read_bio_X509(tbio, NULL, 0, NULL); + int ret = 1; - if (!cacert) - goto err; + OpenSSL_add_all_algorithms(); + ERR_load_crypto_strings(); - if (!X509_STORE_add_cert(st, cacert)) - goto err; + /* Set up trusted CA certificate store */ - /* Open content being signed */ + st = X509_STORE_new(); - in = BIO_new_file("smout.txt", "r"); + /* Read in signer certificate and private key */ + tbio = BIO_new_file("cacert.pem", "r"); - if (!in) - goto err; + if (!tbio) + goto err; - /* Sign content */ - p7 = SMIME_read_PKCS7(in, &cont); + cacert = PEM_read_bio_X509(tbio, NULL, 0, NULL); - if (!p7) - goto err; + if (!cacert) + goto err; - /* File to output verified content to */ - out = BIO_new_file("smver.txt", "w"); - if (!out) - goto err; + if (!X509_STORE_add_cert(st, cacert)) + goto err; - if (!PKCS7_verify(p7, NULL, st, cont, out, 0)) - { - fprintf(stderr, "Verification Failure\n"); - goto err; - } + /* Open content being signed */ - fprintf(stderr, "Verification Successful\n"); + in = BIO_new_file("smout.txt", "r"); - ret = 0; + if (!in) + goto err; - err: + /* Sign content */ + p7 = SMIME_read_PKCS7(in, &cont); - if (ret) - { - fprintf(stderr, "Error Verifying Data\n"); - ERR_print_errors_fp(stderr); - } + if (!p7) + goto err; - if (p7) - PKCS7_free(p7); + /* File to output verified content to */ + out = BIO_new_file("smver.txt", "w"); + if (!out) + goto err; - if (cacert) - X509_free(cacert); + if (!PKCS7_verify(p7, NULL, st, cont, out, 0)) { + fprintf(stderr, "Verification Failure\n"); + goto err; + } - if (in) - BIO_free(in); - if (out) - BIO_free(out); - if (tbio) - BIO_free(tbio); + fprintf(stderr, "Verification Successful\n"); - return ret; + ret = 0; - } + err: + if (ret) { + fprintf(stderr, "Error Verifying Data\n"); + ERR_print_errors_fp(stderr); + } + PKCS7_free(p7); + X509_free(cacert); + BIO_free(in); + BIO_free(out); + BIO_free(tbio); + return ret; +}