trace: Do not produce dead code calling BIO_printf if disabled
[openssl.git] / include / openssl / ess.h.in
1 /*
2  * {- join("\n * ", @autowarntext) -}
3  *
4  * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
5  *
6  * Licensed under the Apache License 2.0 (the "License").  You may not use
7  * this file except in compliance with the License.  You can obtain a copy
8  * in the file LICENSE in the source distribution or at
9  * https://www.openssl.org/source/license.html
10  */
11
12 {-
13 use OpenSSL::stackhash qw(generate_stack_macros);
14 -}
15
16 #ifndef OPENSSL_ESS_H
17 # define OPENSSL_ESS_H
18 # pragma once
19
20 # include <openssl/opensslconf.h>
21
22 # include <openssl/safestack.h>
23 # include <openssl/x509.h>
24 # include <openssl/esserr.h>
25
26 # ifdef  __cplusplus
27 extern "C" {
28 # endif
29
30
31 typedef struct ESS_issuer_serial ESS_ISSUER_SERIAL;
32 typedef struct ESS_cert_id ESS_CERT_ID;
33 typedef struct ESS_signing_cert ESS_SIGNING_CERT;
34
35 {-
36     generate_stack_macros("ESS_CERT_ID");
37 -}
38
39
40 typedef struct ESS_signing_cert_v2_st ESS_SIGNING_CERT_V2;
41 typedef struct ESS_cert_id_v2_st ESS_CERT_ID_V2;
42
43 {-
44     generate_stack_macros("ESS_CERT_ID_V2");
45 -}
46
47 DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_ISSUER_SERIAL)
48 DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_ISSUER_SERIAL, ESS_ISSUER_SERIAL)
49 DECLARE_ASN1_DUP_FUNCTION(ESS_ISSUER_SERIAL)
50
51 DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_CERT_ID)
52 DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_CERT_ID, ESS_CERT_ID)
53 DECLARE_ASN1_DUP_FUNCTION(ESS_CERT_ID)
54
55 DECLARE_ASN1_FUNCTIONS(ESS_SIGNING_CERT)
56 DECLARE_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT)
57
58 DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_CERT_ID_V2)
59 DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_CERT_ID_V2, ESS_CERT_ID_V2)
60 DECLARE_ASN1_DUP_FUNCTION(ESS_CERT_ID_V2)
61
62 DECLARE_ASN1_FUNCTIONS(ESS_SIGNING_CERT_V2)
63 DECLARE_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT_V2)
64
65 ESS_SIGNING_CERT *OSSL_ESS_signing_cert_new_init(const X509 *signcert,
66                                                  const STACK_OF(X509) *certs,
67                                                  int set_issuer_serial);
68 ESS_SIGNING_CERT_V2 *OSSL_ESS_signing_cert_v2_new_init(const EVP_MD *hash_alg,
69                                                        const X509 *signcert,
70                                                        const
71                                                        STACK_OF(X509) *certs,
72                                                        int set_issuer_serial);
73 int OSSL_ESS_check_signing_certs(const ESS_SIGNING_CERT *ss,
74                                  const ESS_SIGNING_CERT_V2 *ssv2,
75                                  const STACK_OF(X509) *chain,
76                                  int require_signing_cert);
77
78 # ifdef  __cplusplus
79 }
80 # endif
81 #endif