aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2008-07-21 14:01:46 +0000
committerYang Tse <yangsita@gmail.com>2008-07-21 14:01:46 +0000
commit2066d60b167854503fe5bd735042f9e67399ccf2 (patch)
tree159c4764192fdc3df7e9669a36323f31149fb782
parent51e84c77e72a2c6554ddd3c2782c48b6c0b40479 (diff)
use prototypes to improve getservbyport_r detection
-rw-r--r--ares/acinclude.m436
1 files changed, 23 insertions, 13 deletions
diff --git a/ares/acinclude.m4 b/ares/acinclude.m4
index bea042ea8..9eb8d0c07 100644
--- a/ares/acinclude.m4
+++ b/ares/acinclude.m4
@@ -2032,14 +2032,18 @@ AC_DEFUN([CARES_CHECK_GETSERVBYPORT_R], [
#ifdef HAVE_NETDB_H
#include <netdb.h>
#endif
+ extern int
+ getservbyport_r(int, const char*, struct servent*,
+ struct servent_data*);
]],[[
- int p1, p5;
- char *p2, p4[4096];
- struct servent *p3, *p6;
- getservbyport_r(p1, p2, p3, p4, p5, &p6);
+ int p1, res;
+ char *p2;
+ struct servent *p3;
+ struct servent_data *p4;
+ res = getservbyport_r(p1, p2, p3, p4);
]])
],[
- cares_cv_getservbyport_r_nargs="6"
+ cares_cv_getservbyport_r_nargs="4"
])
#
if test "$cares_cv_getservbyport_r_nargs" = "unknown"; then
@@ -2051,11 +2055,14 @@ AC_DEFUN([CARES_CHECK_GETSERVBYPORT_R], [
#ifdef HAVE_NETDB_H
#include <netdb.h>
#endif
+ extern struct servent*
+ getservbyport_r(int, const char*, struct servent*,
+ char*, int);
]],[[
int p1, p5;
char *p2, p4[4096];
- struct servent *p3;
- getservbyport_r(p1, p2, p3, p4, p5);
+ struct servent *p3, res;
+ res = getservbyport_r(p1, p2, p3, p4, p5);
]])
],[
cares_cv_getservbyport_r_nargs="5"
@@ -2071,15 +2078,18 @@ AC_DEFUN([CARES_CHECK_GETSERVBYPORT_R], [
#ifdef HAVE_NETDB_H
#include <netdb.h>
#endif
+ extern int
+ getservbyport_r(int, const char*, struct servent*,
+ char*, size_t, struct servent**);
]],[[
- int p1;
- char *p2;
- struct servent *p3;
- struct servent_data p4;
- getservbyport_r(p1, p2, p3, &p4);
+ int p1, res;
+ size_t p5;
+ char *p2, p4[4096];
+ struct servent *p3, *p6;
+ res = getservbyport_r(p1, p2, p3, p4, p5, &p6);
]])
],[
- cares_cv_getservbyport_r_nargs="4"
+ cares_cv_getservbyport_r_nargs="6"
])
fi
#