/* Public domain */ /* * Definitions of primitive integer types used throughout PerCGI. Also * defines CGI_HAVE_64BIT and CGI_HAVE_LONG_DOUBLE. */ #include #ifdef _MK_HAVE_SYS_TYPES_H # undef _MK_HAVE_SYS_TYPES_H # include #endif #ifndef _PERCGI_HAVE_64BIT_H # define _PERCGI_HAVE_64BIT_H_ # include # ifdef HAVE_64BIT # define CGI_HAVE_64BIT # endif #endif #ifndef _PERCGI_HAVE_LONG_DOUBLE_H_ # define _PERCGI_HAVE_LONG_DOUBLE_H_ # include # ifdef HAVE_LONG_DOUBLE # define CGI_HAVE_LONG_DOUBLE # endif #endif #ifndef Uint #define Uint unsigned int #endif #ifndef Uchar #define Uchar unsigned char #endif #ifndef Ulong #define Ulong unsigned long #endif #ifndef Sint8 #define Sint8 int8_t #endif #ifndef Uint8 #define Uint8 u_int8_t #endif #ifndef Sint16 #define Sint16 int16_t #endif #ifndef Uint16 #define Uint16 u_int16_t #endif #ifndef Sint32 #define Sint32 int32_t #endif #ifndef Uint32 #define Uint32 u_int32_t #endif #ifdef HAVE_64BIT # ifndef Sint64 # define Sint64 int64_t # endif # ifndef Uint64 # define Uint64 u_int64_t # endif #else /* !HAVE_64BIT */ typedef struct cgi_fake_int64 { Uint32 _pad1; Uint32 _pad2; }; # ifndef Sint64 # define Sint64 struct cgi_fake_int64 # endif # ifndef Uint64 # define Uint64 struct cgi_fake_int64 # endif #endif /* HAVE_64BIT */