From: Juan Manuel Guerrero Date: Tue, 1 Feb 2022 23:41:02 +0000 (+0100) Subject: Fix builds with DJGPP X-Git-Tag: OpenSSL_1_1_1n~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b728ac98f23d7b32959ca26f1a40e843b7b969a3;p=thirdparty%2Fopenssl.git Fix builds with DJGPP CLA: trivial To get the master branch compiled with DJGPP some minor adjustments are required. They will have no impact on any other ports. The DJGPP port uses the Watt-32 library to provide the required network functionality and some of its headers need to be included. Neither DJGPP nor the Watt-32 library provide in_addr_t thus it must be provided as it is done for OPENSSL_SYS_WINDOWS in crypto/bio/b_addr.c. In the DJGPP section of include/internal/sockets.h the following Watt-32 headers must be added: - arpa/inet.h: to provide declaration of inet_ntoa required in crypto/bio/b_addr.c - netinet/tcp.h: to provide defintion of TCP_NODELAY required in crypto/bio/b_sock2.c Reviewed-by: Matt Caswell Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/17623) (cherry picked from commit b9b211fcb6b9068ef1d8729a4971fbe693fd2cde) --- diff --git a/crypto/bio/b_addr.c b/crypto/bio/b_addr.c index 8ea32bce401..2e0c9d77ac8 100644 --- a/crypto/bio/b_addr.c +++ b/crypto/bio/b_addr.c @@ -744,7 +744,7 @@ int BIO_lookup_ex(const char *host, const char *service, int lookup_type, # pragma pointer_size 32 #endif /* Windows doesn't seem to have in_addr_t */ -#ifdef OPENSSL_SYS_WINDOWS +#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS) static uint32_t he_fallback_address; static const char *he_fallback_addresses[] = { (char *)&he_fallback_address, NULL }; diff --git a/include/internal/sockets.h b/include/internal/sockets.h index 39186efef20..7f3b8ea85da 100644 --- a/include/internal/sockets.h +++ b/include/internal/sockets.h @@ -30,6 +30,8 @@ # include # include # include +# include +# include # elif defined(_WIN32_WCE) && _WIN32_WCE<410 # define getservbyname _masked_declaration_getservbyname # endif