1 dnl @synopsis ACX_WHICH_GETHOSTBYNAME_R
3 dnl Provides a test to determine the correct way to call gethostbyname_r
5 dnl defines HAVE_GETHOSTBYNAME_R to the number of arguments required
7 dnl e.g. 6 arguments (linux)
8 dnl e.g. 5 arguments (solaris)
9 dnl e.g. 3 arguments (osf/1)
11 dnl @version $Id: acinclude.m4,v 1.6 2001/10/17 07:19:14 brian Exp $
12 dnl @author Brian Stafford <brian@stafford.uklinux.net>
14 dnl based on version by Caolan McNamara <caolan@skynet.ie>
15 dnl based on David Arnold's autoconf suggestion in the threads faq
16 dnl with fixes and updates by Matthias Andree
18 AC_DEFUN([ACX_WHICH_GETHOSTBYNAME_R],
19 [AC_CACHE_CHECK(number of arguments to gethostbyname_r,
20 acx_cv_which_gethostbyname_r, [
27 struct hostent_data data;
28 (void) gethostbyname_r(name, he, &data);
30 ],acx_cv_which_gethostbyname_r=3,
32 dnl acx_cv_which_gethostbyname_r=0
38 struct hostent *he, *res;
42 (void) gethostbyname_r(name, he, buffer, buflen, &res, &h_errnop)
43 ],acx_cv_which_gethostbyname_r=6,
46 dnl acx_cv_which_gethostbyname_r=0
56 (void) gethostbyname_r(name, he, buffer, buflen, &h_errnop)
57 ],acx_cv_which_gethostbyname_r=5,acx_cv_which_gethostbyname_r=0)
66 if test $acx_cv_which_gethostbyname_r -gt 0 ; then
67 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYNAME_R], $acx_cv_which_gethostbyname_r,
68 [Number of parameters to gethostbyname_r or 0 if not available])