Added support for ESSCertIDv2
[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 "testutil.h"
19
20 static int test_509_dup_cert(const char *cert_f)
21 {
22     int ret = 0;
23     X509_STORE_CTX *sctx = NULL;
24     X509_STORE *store = NULL;
25     X509_LOOKUP *lookup = NULL;
26
27     if (TEST_ptr(store = X509_STORE_new())
28         && TEST_ptr(lookup = X509_STORE_add_lookup(store, X509_LOOKUP_file()))
29         && TEST_true(X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM))
30         && TEST_true(X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM)))
31         ret = 1;
32
33     X509_STORE_CTX_free(sctx);
34     X509_STORE_free(store);
35     return ret;
36 }
37
38 int test_main(int argc, char **argv)
39 {
40     if (!TEST_int_eq(argc, 2)) {
41         TEST_info("usage: x509_dup_cert_test cert.pem");
42         return 1;
43     }
44
45     return !test_509_dup_cert(argv[1]);
46 }