• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 1999-2016 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 // This file contains a table of "standard" extensions
11 
12 #if defined(__cplusplus)
13 extern "C" {
14 #endif
15 
16 extern const X509V3_EXT_METHOD v3_bcons, v3_nscert, v3_key_usage, v3_ext_ku;
17 extern const X509V3_EXT_METHOD v3_info, v3_sinfo;
18 extern const X509V3_EXT_METHOD v3_ns_ia5_list[], v3_alt[], v3_skey_id,
19     v3_akey_id;
20 extern const X509V3_EXT_METHOD v3_crl_num, v3_crl_reason, v3_crl_invdate;
21 extern const X509V3_EXT_METHOD v3_delta_crl, v3_cpols, v3_crld, v3_freshest_crl;
22 extern const X509V3_EXT_METHOD v3_ocsp_nonce, v3_ocsp_accresp, v3_ocsp_acutoff;
23 extern const X509V3_EXT_METHOD v3_ocsp_crlid, v3_ocsp_nocheck,
24     v3_ocsp_serviceloc;
25 extern const X509V3_EXT_METHOD v3_crl_hold;
26 extern const X509V3_EXT_METHOD v3_policy_mappings, v3_policy_constraints;
27 extern const X509V3_EXT_METHOD v3_name_constraints, v3_inhibit_anyp, v3_idp;
28 extern const X509V3_EXT_METHOD v3_addr, v3_asid;
29 
30 // This table will be searched using OBJ_bsearch so it *must* kept in order
31 // of the ext_nid values.
32 
33 // TODO(fork): OCSP support
34 #define OPENSSL_NO_OCSP
35 
36 static const X509V3_EXT_METHOD *const standard_exts[] = {
37     &v3_nscert,
38     &v3_ns_ia5_list[0],
39     &v3_ns_ia5_list[1],
40     &v3_ns_ia5_list[2],
41     &v3_ns_ia5_list[3],
42     &v3_ns_ia5_list[4],
43     &v3_ns_ia5_list[5],
44     &v3_ns_ia5_list[6],
45     &v3_skey_id,
46     &v3_key_usage,
47     &v3_alt[0],
48     &v3_alt[1],
49     &v3_bcons,
50     &v3_crl_num,
51     &v3_cpols,
52     &v3_akey_id,
53     &v3_crld,
54     &v3_ext_ku,
55     &v3_delta_crl,
56     &v3_crl_reason,
57     &v3_crl_invdate,
58     &v3_info,
59 #ifndef OPENSSL_NO_OCSP
60     &v3_ocsp_nonce,
61     &v3_ocsp_crlid,
62     &v3_ocsp_accresp,
63     &v3_ocsp_acutoff,
64     &v3_ocsp_serviceloc,
65 #endif
66     &v3_ocsp_nocheck,
67     &v3_sinfo,
68     &v3_policy_constraints,
69 #ifndef OPENSSL_NO_OCSP
70     &v3_crl_hold,
71 #endif
72     &v3_name_constraints,
73     &v3_policy_mappings,
74     &v3_inhibit_anyp,
75     &v3_idp,
76     &v3_alt[2],
77     &v3_freshest_crl,
78 };
79 
80 // Number of standard extensions
81 
82 #define STANDARD_EXTENSION_COUNT \
83   (sizeof(standard_exts) / sizeof(X509V3_EXT_METHOD *))
84 
85 #if defined(__cplusplus)
86 }  // extern C
87 #endif
88