Rework build: add special cases for AIX
[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 }