diff options
author | Hugo Landau <hlandau@openssl.org> | 2023-10-09 19:11:39 +0100 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2023-10-11 11:10:05 +0200 |
commit | 6cf23ce54d4b9e3b11c8b4807c62ecba27e3aa16 (patch) | |
tree | 0c1788bf01bb3a582cecc5007b6534f4c870fd98 | |
parent | 3df5736cf303d2c69654ba1c295a9772b738608e (diff) |
Ensure struct timeval is defined when including ssl.h
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
(Merged from https://github.com/openssl/openssl/pull/22323)
-rw-r--r-- | include/openssl/e_ostime.h | 30 | ||||
-rw-r--r-- | include/openssl/ssl.h.in | 1 |
2 files changed, 31 insertions, 0 deletions
diff --git a/include/openssl/e_ostime.h b/include/openssl/e_ostime.h new file mode 100644 index 0000000000..8a7cc9880f --- /dev/null +++ b/include/openssl/e_ostime.h @@ -0,0 +1,30 @@ +/* + * Copyright 2023 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 + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef OPENSSL_E_OSTIME_H +# define OPENSSL_E_OSTIME_H +# pragma once + +# include <openssl/macros.h> +# include <openssl/opensslconf.h> +# include <openssl/e_os2.h> + +/* + * This header guarantees that 'struct timeval' will be available. It includes + * the minimum headers needed to facilitate this. This may still be a + * substantial set of headers on some platforms (e.g. <winsock2.h> on Win32). + */ + +# if defined(OPENSSL_SYS_WINDOWS) +# include <winsock2.h> +# else +# include <sys/time.h> +# endif + +#endif diff --git a/include/openssl/ssl.h.in b/include/openssl/ssl.h.in index 5df101ff87..59b587e657 100644 --- a/include/openssl/ssl.h.in +++ b/include/openssl/ssl.h.in @@ -25,6 +25,7 @@ use OpenSSL::stackhash qw(generate_stack_macros generate_const_stack_macros); # endif # include <openssl/e_os2.h> +# include <openssl/e_ostime.h> # include <openssl/opensslconf.h> # include <openssl/comp.h> # include <openssl/bio.h> |