From ea1970a3cd1b906965a90faac21a6661bdba7253 Mon Sep 17 00:00:00 2001 From: damien Date: Tue, 28 Dec 1999 15:24:35 +0000 Subject: [PATCH] - Merged AIX patch from Darren Hall - Cleaned up defines.h --- CREDITS | 1 + ChangeLog | 2 ++ acconfig.h | 1 + configure.in | 12 +++++++++ defines.h | 74 ++++++++++++++++++++++++++++++++-------------------- 5 files changed, 61 insertions(+), 29 deletions(-) diff --git a/CREDITS b/CREDITS index e505c505..84cf53de 100644 --- a/CREDITS +++ b/CREDITS @@ -9,6 +9,7 @@ Chip Salzenberg - Assorted patches Chris Saia - SuSE packaging "Chris, the Young One" - Password auth fixes Chun-Chung Chen - RPM fixes +Darren Hall - AIX patches Dan Brosemer - Autoconf support, build fixes David Agraz - Build fixes David Rankin - libwrap fixes diff --git a/ChangeLog b/ChangeLog index 9c29ac8b..bb27a81f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,8 @@ - Fully set ut_tv if present in utmp or utmpx - Portability fixes for Irix 5.3 (now compiles OK!) - autoconf and other misc cleanups + - Merged AIX patch from Darren Hall + - Cleaned up defines.h 19991227 - Automatically correct paths in manpages and configuration files. Patch diff --git a/acconfig.h b/acconfig.h index fd9fe1fc..23376f8d 100644 --- a/acconfig.h +++ b/acconfig.h @@ -105,6 +105,7 @@ #undef HAVE_INTXX_T #undef HAVE_U_INTXX_T #undef HAVE_UINTXX_T +#undef HAVE_SOCKLEN_T /* Define if you have /dev/ptmx */ #undef HAVE_DEV_PTMX diff --git a/configure.in b/configure.in index 274111e2..a232a746 100644 --- a/configure.in +++ b/configure.in @@ -177,6 +177,18 @@ AC_TRY_COMPILE( [AC_MSG_RESULT(no)] ) +AC_MSG_CHECKING([For socklen_t]) +AC_TRY_COMPILE( + [#include ], + [#include ], + [socklen_t foo; foo = 1235;], + [ + AC_DEFINE(HAVE_SOCKLEN_T) + AC_MSG_RESULT(yes) + ], + [AC_MSG_RESULT(no)] +) + AC_ARG_WITH(pam, [ --without-pam Disable PAM support ], [ diff --git a/defines.h b/defines.h index bcab3c08..1437e7b2 100644 --- a/defines.h +++ b/defines.h @@ -1,3 +1,5 @@ +/* Necessary headers */ + #include /* For u_intXX_t */ #include /* For SHUT_XXXX */ @@ -25,6 +27,8 @@ # include /* For __P() */ #endif +/* Constants */ + #ifndef SHUT_RDWR enum { @@ -37,24 +41,26 @@ enum # define SHUT_RDWR SHUT_RDWR #endif +/* Types */ + /* If sys/types.h does not supply intXX_t, supply them ourselves */ /* (or die trying) */ #ifndef HAVE_INTXX_T # if (SIZEOF_SHORT_INT == 2) -# define int16_t short int +typedef short int int16_t; # else # error "16 bit int type not found." # endif # if (SIZEOF_INT == 4) -# define int32_t int +typedef int int32_t; # else # error "32 bit int type not found." # endif # if (SIZEOF_LONG_INT == 8) -# define int64_t long int +typedef long int int64_t; # else # if (SIZEOF_LONG_LONG_INT == 8) -# define int64_t long long int +typedef long long int int64_t; # else # error "64 bit int type not found." # endif @@ -64,25 +70,25 @@ enum /* If sys/types.h does not supply u_intXX_t, supply them ourselves */ #ifndef HAVE_U_INTXX_T # ifdef HAVE_UINTXX_T -# define u_int16_t uint16_t -# define u_int32_t uint32_t -# define u_int64_t uint64_t +typedef uint16_t u_int16_t; +typedef uint32_t u_int32_t; +typedef uint64_t u_int64_t; # else # if (SIZEOF_SHORT_INT == 2) -# define u_int16_t unsigned short int +typedef unsigned short int u_int16_t; # else # error "16 bit int type not found." # endif # if (SIZEOF_INT == 4) -# define u_int32_t unsigned int +typedef unsigned int u_int32_t; # else # error "32 bit int type not found." # endif # if (SIZEOF_LONG_INT == 8) -# define u_int64_t unsigned long int +typedef unsigned long int u_int64_t; # else # if (SIZEOF_LONG_LONG_INT == 8) -# define u_int64_t unsigned long long int +typedef unsigned long long int u_int64_t; # else # error "64 bit int type not found." # endif @@ -93,9 +99,15 @@ enum /* If quad_t is not supplied, then supply it now. We can rely on int64_t */ /* being defined by the above */ #ifndef HAVE_QUAD_T -# define quad_t int64_t +typedef int64_t quad_t; #endif +#ifndef HAVE_SOCKLEN_T +typedef unsigned int socklen_t; +#endif /* HAVE_SOCKLEN_T */ + +/* Paths */ + /* If _PATH_LASTLOG is not defined by system headers, set it to the */ /* lastlog file detected by autoconf */ #ifndef _PATH_LASTLOG @@ -164,6 +176,14 @@ enum # define _PATH_MAILDIR MAILDIR #endif /* !defined(_PATH_MAILDIR) && defined(MAILDIR) */ +#ifndef _PATH_RSH +# ifdef RSH_PATH +# define _PATH_RSH RSH_PATH +# endif /* RSH_PATH */ +#endif /* _PATH_RSH */ + +/* Macros */ + #ifndef MAX # define MAX(a,b) (((a)>(b))?(a):(b)) # define MIN(a,b) (((a)<(b))?(a):(b)) @@ -181,13 +201,6 @@ enum } while (0) #endif -/* In older versions of libpam, pam_strerror takes a single argument */ -#ifdef HAVE_OLD_PAM -# define PAM_STRERROR(a,b) pam_strerror((b)) -#else -# define PAM_STRERROR(a,b) pam_strerror((a),(b)) -#endif - #ifndef __P # define __P(x) x #endif @@ -196,6 +209,19 @@ enum # define __attribute__(x) #endif /* !defined(__GNUC__) || (__GNUC__ < 2) */ +#if defined(HAVE_SECURITY_PAM_APPL_H) && !defined(DISABLE_PAM) +# define USE_PAM +#endif /* defined(HAVE_SECURITY_PAM_APPL_H) && !defined(DISABLE_PAM) */ + +/* Function replacement / compatibility hacks */ + +/* In older versions of libpam, pam_strerror takes a single argument */ +#ifdef HAVE_OLD_PAM +# define PAM_STRERROR(a,b) pam_strerror((b)) +#else +# define PAM_STRERROR(a,b) pam_strerror((a),(b)) +#endif + #if !defined(HAVE_SETEUID) && defined(HAVE_SETREUID) # define seteuid(a) setreuid(-1,a) #endif /* !defined(HAVE_SETEUID) && defined(HAVE_SETREUID) */ @@ -204,13 +230,3 @@ enum # define innetgr(a,b,c,d) (0) #endif /* HAVE_INNETGR */ -#ifndef _PATH_RSH -# ifdef RSH_PATH -# define _PATH_RSH RSH_PATH -# endif /* RSH_PATH */ -#endif /* _PATH_RSH */ - -#if defined(HAVE_SECURITY_PAM_APPL_H) && !defined(DISABLE_PAM) -# define USE_PAM -#endif /* defined(HAVE_SECURITY_PAM_APPL_H) && !defined(DISABLE_PAM) */ - -- 2.45.1