]> git.ipfire.org Git - thirdparty/openssl.git/blob - test/v3ext.c
Fix SSL_check_chain()
[thirdparty/openssl.git] / test / v3ext.c
1 /*
2 * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License 2.0 (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 #include <stdio.h>
11 #include <openssl/x509.h>
12 #include <openssl/x509v3.h>
13 #include <openssl/pem.h>
14 #include <openssl/err.h>
15
16 #include "testutil.h"
17
18 static const char *infile;
19
20 static int test_pathlen(void)
21 {
22 X509 *x = NULL;
23 BIO *b = NULL;
24 long pathlen;
25 int ret = 0;
26
27 if (!TEST_ptr(b = BIO_new_file(infile, "r"))
28 || !TEST_ptr(x = PEM_read_bio_X509(b, NULL, NULL, NULL))
29 || !TEST_int_eq(pathlen = X509_get_pathlen(x), 6))
30 goto end;
31
32 ret = 1;
33
34 end:
35 BIO_free(b);
36 X509_free(x);
37 return ret;
38 }
39
40 OPT_TEST_DECLARE_USAGE("cert.pem\n")
41
42 int setup_tests(void)
43 {
44 if (!TEST_ptr(infile = test_get_argument(0)))
45 return 0;
46
47 ADD_TEST(test_pathlen);
48 return 1;
49 }