aboutsummaryrefslogtreecommitdiff
path: root/include/openssl/types.h
diff options
context:
space:
mode:
authorEnji Cooper <ngie@FreeBSD.org>2025-05-07 21:18:24 +0000
committerEnji Cooper <ngie@FreeBSD.org>2025-05-07 22:37:22 +0000
commit29536654cc41bf41b92dc836c47496dc6fe0b00c (patch)
tree368a3c5b14e610bb5f6b71657f61a41e373eaf97 /include/openssl/types.h
parent1c34280346af8284acdc0eae39496811d37df25d (diff)
Diffstat (limited to 'include/openssl/types.h')
-rw-r--r--include/openssl/types.h34
1 files changed, 23 insertions, 11 deletions
diff --git a/include/openssl/types.h b/include/openssl/types.h
index de9f1665249f..344d892a9ea7 100644
--- a/include/openssl/types.h
+++ b/include/openssl/types.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2001-2021 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2001-2025 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@@ -7,9 +7,21 @@
* https://www.openssl.org/source/license.html
*/
+/*
+ * Unfortunate workaround to avoid symbol conflict with wincrypt.h
+ * See https://github.com/openssl/openssl/issues/9981
+ */
+#ifdef _WIN32
+# define WINCRYPT_USE_SYMBOL_PREFIX
+# undef X509_NAME
+# undef X509_EXTENSIONS
+# undef PKCS7_SIGNER_INFO
+# undef OCSP_REQUEST
+# undef OCSP_RESPONSE
+#endif
+
#ifndef OPENSSL_TYPES_H
# define OPENSSL_TYPES_H
-# pragma once
# include <limits.h>
@@ -21,6 +33,12 @@ extern "C" {
# include <openssl/safestack.h>
# include <openssl/macros.h>
+# if OPENSSL_VERSION_MAJOR >= 4
+# define OSSL_FUTURE_CONST const
+# else
+# define OSSL_FUTURE_CONST
+# endif
+
typedef struct ossl_provider_st OSSL_PROVIDER; /* Provider Object */
# ifdef NO_ASN1_TYPEDEFS
@@ -70,15 +88,6 @@ typedef struct ASN1_ITEM_st ASN1_ITEM;
typedef struct asn1_pctx_st ASN1_PCTX;
typedef struct asn1_sctx_st ASN1_SCTX;
-# ifdef _WIN32
-# undef X509_NAME
-# undef X509_EXTENSIONS
-# undef PKCS7_ISSUER_AND_SERIAL
-# undef PKCS7_SIGNER_INFO
-# undef OCSP_REQUEST
-# undef OCSP_RESPONSE
-# endif
-
# ifdef BIGNUM
# undef BIGNUM
# endif
@@ -105,6 +114,7 @@ typedef struct evp_md_ctx_st EVP_MD_CTX;
typedef struct evp_mac_st EVP_MAC;
typedef struct evp_mac_ctx_st EVP_MAC_CTX;
typedef struct evp_pkey_st EVP_PKEY;
+typedef struct evp_skey_st EVP_SKEY;
typedef struct evp_pkey_asn1_method_st EVP_PKEY_ASN1_METHOD;
@@ -123,6 +133,8 @@ typedef struct evp_keyexch_st EVP_KEYEXCH;
typedef struct evp_signature_st EVP_SIGNATURE;
+typedef struct evp_skeymgmt_st EVP_SKEYMGMT;
+
typedef struct evp_asym_cipher_st EVP_ASYM_CIPHER;
typedef struct evp_kem_st EVP_KEM;