Converted the bio_enc tests to use new test framework.
[openssl.git] / test / x509_dup_cert_test.c
1 /*
2  * Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
3  *
4  * Licensed under the OpenSSL license (the "License").  You may not use
5  * this file except in compliance with the License.  You can obtain a copy
6  * in the file LICENSE in the source distribution or at
7  * https://www.openssl.org/source/license.html
8  */
9
10 /* ====================================================================
11  * Copyright (c) 2017 Oracle and/or its affiliates.  All rights reserved.
12  */
13
14 #include <stdio.h>
15 #include <openssl/err.h>
16 #include <openssl/x509_vfy.h>
17
18 #include "test_main_custom.h"
19 #include "testutil.h"
20
21 static int test_509_dup_cert(const char *cert_f)
22 {
23     int ret = 0;
24     X509_STORE_CTX *sctx = NULL;
25     X509_STORE *store = NULL;
26     X509_LOOKUP *lookup = NULL;
27
28     if (TEST_ptr(store = X509_STORE_new())
29         && TEST_ptr(lookup = X509_STORE_add_lookup(store, X509_LOOKUP_file()))
30         && TEST_true(X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM))
31         && TEST_true(X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM)))
32         ret = 1;
33
34     X509_STORE_CTX_free(sctx);
35     X509_STORE_free(store);
36     return ret;
37 }
38
39 int test_main(int argc, char **argv)
40 {
41     if (!TEST_int_eq(argc, 2)) {
42         TEST_info("usage: x509_dup_cert_test cert.pem");
43         return 1;
44     }
45
46     return !test_509_dup_cert(argv[1]);
47 }