Prefer types in to our own, because it removes file content conflicts between 32- and 64-bit architectures. RFEd as #2829. --- cyrus-sasl-2.1.27/configure.ac.orig 2018-11-24 12:00:08.141550691 +0100 +++ cyrus-sasl-2.1.27/configure.ac 2018-11-24 12:52:23.144848228 +0100 @@ -1288,6 +1288,10 @@ AC_HEADER_DIRENT AC_HEADER_SYS_WAIT AC_CHECK_HEADERS(crypt.h des.h dlfcn.h fcntl.h limits.h malloc.h paths.h strings.h sys/file.h sys/time.h syslog.h unistd.h inttypes.h sys/uio.h sys/param.h sysexits.h stdarg.h varargs.h krb5.h) +AC_CHECK_TYPES([long long, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t],,,[ +#ifdef HAVE_INTTYPES_H +#include +#endif]) IPv6_CHECK_SS_FAMILY() IPv6_CHECK_SA_LEN() --- cyrus-sasl-2.1.21/include/makemd5.c 2003-02-13 14:55:52.000000000 -0500 +++ cyrus-sasl-2.1.21/include/makemd5.c 2006-05-16 07:45:08.000000000 -0400 @@ -82,12 +82,19 @@ */ +#ifdef HAVE_CONFIG_H +#include "../config.h" +#endif #include #include #include #include +#ifdef HAVE_INTTYPES_H +#include +#endif + static void my_strupr(char *s) @@ -122,6 +129,18 @@ static void try_signed(FILE *f, int len) { +#ifdef HAVE_INT8_T + BITSIZE(int8_t); +#endif +#ifdef HAVE_INT16_T + BITSIZE(int16_t); +#endif +#ifdef HAVE_INT32_T + BITSIZE(int32_t); +#endif +#ifdef HAVE_INT64_T + BITSIZE(int64_t); +#endif BITSIZE(signed char); BITSIZE(short); BITSIZE(int); @@ -135,6 +154,18 @@ static void try_unsigned(FILE *f, int len) { +#ifdef HAVE_UINT8_T + BITSIZE(uint8_t); +#endif +#ifdef HAVE_UINT16_T + BITSIZE(uint16_t); +#endif +#ifdef HAVE_UINT32_T + BITSIZE(uint32_t); +#endif +#ifdef HAVE_UINT64_T + BITSIZE(uint64_t); +#endif BITSIZE(unsigned char); BITSIZE(unsigned short); BITSIZE(unsigned int); @@ -165,6 +196,11 @@ "/* POINTER defines a generic pointer type */\n" "typedef unsigned char *POINTER;\n" "\n" +#ifdef HAVE_INTTYPES_H + "/* We try to define integer types for our use */\n" + "#include \n" + "\n" +#endif ); return 1; } @@ -212,31 +248,15 @@ print_pre(f); -#ifndef HAVE_INT8_T try_signed (f, 8); -#endif /* HAVE_INT8_T */ -#ifndef HAVE_INT16_T try_signed (f, 16); -#endif /* HAVE_INT16_T */ -#ifndef HAVE_INT32_T try_signed (f, 32); -#endif /* HAVE_INT32_T */ -#ifndef HAVE_INT64_T try_signed (f, 64); -#endif /* HAVE_INT64_T */ -#ifndef HAVE_U_INT8_T try_unsigned (f, 8); -#endif /* HAVE_INT8_T */ -#ifndef HAVE_U_INT16_T try_unsigned (f, 16); -#endif /* HAVE_U_INT16_T */ -#ifndef HAVE_U_INT32_T try_unsigned (f, 32); -#endif /* HAVE_U_INT32_T */ -#ifndef HAVE_U_INT64_T try_unsigned (f, 64); -#endif /* HAVE_U_INT64_T */ print_post(f);