提交 09867a47 编写于 作者: R Richard Levitte

If _XOPEN_SOURCE_EXTENDED or _XOPEN_SOURCE are defined, _POSIX_C_SOURCE gets

defined in DECC$TYPES.H.  If _POSIX_C_SOURCE is defined, certain types do
not get defined (u_char, u_int, ...).  DECC.H gets included by assert.h
and others.  Now, in6.h uses the types u_char, u_int and so on, and gets
included as part of other header inclusions, and will of course fail because
of the missing types.

On the other hand, _XOPEN_SOURCE_EXTENDED is needed to get gethostname()
properly declared...

Solution: define _XOPEN_SOURCE_EXTENDED much later, so DECC$TYPES.H has
a chance to be included *first*, so the otherwise missing types get defined
properly.

Personal: *mumble* *mumble*
上级 9d5c42b6
...@@ -116,9 +116,6 @@ ...@@ -116,9 +116,6 @@
#define _BSD_SOURCE 1 /* Or gethostname won't be declared properly #define _BSD_SOURCE 1 /* Or gethostname won't be declared properly
on Linux and GNU platforms. */ on Linux and GNU platforms. */
#define _XOPEN_SOURCE_EXTENDED 1 /* Or gethostname won't be declared properly
on Compaq platforms (at least with DEC C).
*/
#include <assert.h> #include <assert.h>
#include <errno.h> #include <errno.h>
...@@ -139,6 +136,13 @@ ...@@ -139,6 +136,13 @@
#include <openssl/engine.h> #include <openssl/engine.h>
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#define _XOPEN_SOURCE_EXTENDED 1 /* Or gethostname won't be declared properly
on Compaq platforms (at least with DEC C).
Do not try to put it earlier, or IPv6 includes
get screwed...
*/
#ifdef OPENSSL_SYS_WINDOWS #ifdef OPENSSL_SYS_WINDOWS
#include <winsock.h> #include <winsock.h>
#include "../crypto/bio/bss_file.c" #include "../crypto/bio/bss_file.c"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册