From 5b83a959d275cccd825977b4e9c3a90cf1784616 Mon Sep 17 00:00:00 2001 From: Hallvard Furuseth Date: Wed, 3 Mar 1999 21:34:49 +0000 Subject: [PATCH] Don't choke if gethostby{name,addr}_r's number of arguments differ from what the current code can handle. --- libraries/libldap/util-int.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/libraries/libldap/util-int.c b/libraries/libldap/util-int.c index 2316716da6..1308eb621d 100644 --- a/libraries/libldap/util-int.c +++ b/libraries/libldap/util-int.c @@ -42,6 +42,17 @@ # define USE_CTIME_R #endif +#if defined(HAVE_GETHOSTBYNAME_R) && \ + (GETHOSTBYNAME_R_NARGS > 6 || GETHOSTBYNAME_R_NARGS < 5) + /* Don't know how to handle this version, pretend it's not there */ +# undef HAVE_GETHOSTBYNAME_R +#endif +#if defined(HAVE_GETHOSTBYADDR_R) && \ + (GETHOSTBYADDR_R_NARGS > 8 || GETHOSTBYADDR_R_NARGS < 7) + /* Don't know how to handle this version, pretend it's not there */ +# undef HAVE_GETHOSTBYADDR_R +#endif + #ifdef LDAP_R_COMPILE # ifndef USE_CTIME_R static ldap_pvt_thread_mutex_t ldap_int_ctime_mutex; @@ -92,10 +103,6 @@ int ldap_pvt_gethostbyname_a( { #if defined( HAVE_GETHOSTBYNAME_R ) -# if (GETHOSTBYNAME_R_NARGS > 6) || (GETHOSTBYNAME_R_NARGS < 5) - Ouch! gethostbyname_r() must have either 5 or 6 args -#endif - # define NEED_SAFE_REALLOC 1 int r=-1; int buflen=BUFSTART; @@ -175,10 +182,6 @@ int ldap_pvt_gethostbyaddr_a( { #if defined( HAVE_GETHOSTBYADDR_R ) -#if (GETHOSTBYADDR_R_NARGS > 8) || (GETHOSTBYADDR_R_NARGS < 7) - Ouch! gethostbyaddr_r() must have either 7 or 8 args -#endif - # undef NEED_SAFE_REALLOC # define NEED_SAFE_REALLOC int r=-1;