ares_fds.c \
ares_free_hostent.c \
ares_free_string.c \
+ ares_getenv.c \
ares_gethostbyaddr.c \
ares_gethostbyname.c \
ares_getnameinfo.c \
ares_build.h \
ares_data.h \
ares_dns.h \
+ ares_getenv.h \
ares_ipv6.h \
ares_library_init.h \
ares_llist.h \
@echo $(DL)#define HAVE_ERRNO_H 1$(DL) >> $@
@echo $(DL)#define HAVE_ERR_H 1$(DL) >> $@
@echo $(DL)#define HAVE_FCNTL_H 1$(DL) >> $@
+ @echo $(DL)#define HAVE_GETENV 1$(DL) >> $@
@echo $(DL)#define HAVE_GETHOSTBYADDR 1$(DL) >> $@
@echo $(DL)#define HAVE_GETHOSTBYNAME 1$(DL) >> $@
@echo $(DL)#define HAVE_GETHOSTNAME 1$(DL) >> $@
--- /dev/null
+
+
+/* Copyright 1998 by the Massachusetts Institute of Technology.
+ *
+ * Permission to use, copy, modify, and distribute this
+ * software and its documentation for any purpose and without
+ * fee is hereby granted, provided that the above copyright
+ * notice appear in all copies and that both that copyright
+ * notice and this permission notice appear in supporting
+ * documentation, and that the name of M.I.T. not be used in
+ * advertising or publicity pertaining to distribution of the
+ * software without specific, written prior permission.
+ * M.I.T. makes no representations about the suitability of
+ * this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ */
+
+#include "ares_setup.h"
+#include "ares_getenv.h"
+
+#ifndef HAVE_GETENV
+
+char *ares_getenv(const char *name)
+{
+#ifdef _WIN32_WCE
+ return NULL;
+#endif
+}
+
+#endif
--- /dev/null
+#ifndef HEADER_CARES_GETENV_H
+#define HEADER_CARES_GETENV_H
+
+
+/* Copyright 1998 by the Massachusetts Institute of Technology.
+ *
+ * Permission to use, copy, modify, and distribute this
+ * software and its documentation for any purpose and without
+ * fee is hereby granted, provided that the above copyright
+ * notice appear in all copies and that both that copyright
+ * notice and this permission notice appear in supporting
+ * documentation, and that the name of M.I.T. not be used in
+ * advertising or publicity pertaining to distribution of the
+ * software without specific, written prior permission.
+ * M.I.T. makes no representations about the suitability of
+ * this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ */
+
+#include "ares_setup.h"
+
+#ifndef HAVE_GETENV
+extern char *ares_getenv(const char *name);
+#endif
+
+#endif /* HEADER_CARES_GETENV_H */
#include "ares_ipv6.h"
#include "ares_llist.h"
+#ifndef HAVE_GETENV
+# include "ares_getenv.h"
+# define getenv(ptr) ares_getenv(ptr)
+#endif
+
#ifndef HAVE_STRDUP
# include "ares_strdup.h"
# define strdup(ptr) ares_strdup(ptr)
#define PACKAGE "c-ares"
#define HAVE_ERRNO_H 1
+#define HAVE_GETENV 1
#define HAVE_GETTIMEOFDAY 1
#define HAVE_IOCTLSOCKET 1
#define HAVE_IOCTLSOCKET_FIONBIO 1
/* Define if you have the closesocket function. */
#define HAVE_CLOSESOCKET 1
+/* Define if you have the getenv function. */
+#define HAVE_GETENV 1
+
/* Define if you have the gethostname function. */
#define HAVE_GETHOSTNAME 1
CARES_CHECK_FUNC_FCNTL
CARES_CHECK_FUNC_FREEADDRINFO
CARES_CHECK_FUNC_GETADDRINFO
+CARES_CHECK_FUNC_GETENV
CARES_CHECK_FUNC_GETHOSTBYADDR
CARES_CHECK_FUNC_GETHOSTBYNAME
CARES_CHECK_FUNC_GETHOSTNAME
#***************************************************************************
#
-# Copyright (C) 2008 - 2010 by Daniel Stenberg et al
+# Copyright (C) 2008 - 2011 by Daniel Stenberg et al
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted, provided
#***************************************************************************
# File version for 'aclocal' use. Keep it a single number.
-# serial 40
+# serial 41
dnl CARES_INCLUDES_ARPA_INET
])
+dnl CARES_CHECK_FUNC_GETENV
+dnl -------------------------------------------------
+dnl Verify if getenv is available, prototyped, and
+dnl can be compiled. If all of these are true, and
+dnl usage has not been previously disallowed with
+dnl shell variable cares_disallow_getenv, then
+dnl HAVE_GETENV will be defined.
+
+AC_DEFUN([CARES_CHECK_FUNC_GETENV], [
+ AC_REQUIRE([CARES_INCLUDES_STDLIB])dnl
+ #
+ tst_links_getenv="unknown"
+ tst_proto_getenv="unknown"
+ tst_compi_getenv="unknown"
+ tst_allow_getenv="unknown"
+ #
+ AC_MSG_CHECKING([if getenv can be linked])
+ AC_LINK_IFELSE([
+ AC_LANG_FUNC_LINK_TRY([getenv])
+ ],[
+ AC_MSG_RESULT([yes])
+ tst_links_getenv="yes"
+ ],[
+ AC_MSG_RESULT([no])
+ tst_links_getenv="no"
+ ])
+ #
+ if test "$tst_links_getenv" = "yes"; then
+ AC_MSG_CHECKING([if getenv is prototyped])
+ AC_EGREP_CPP([getenv],[
+ $cares_includes_stdlib
+ ],[
+ AC_MSG_RESULT([yes])
+ tst_proto_getenv="yes"
+ ],[
+ AC_MSG_RESULT([no])
+ tst_proto_getenv="no"
+ ])
+ fi
+ #
+ if test "$tst_proto_getenv" = "yes"; then
+ AC_MSG_CHECKING([if getenv is compilable])
+ AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM([[
+ $cares_includes_stdlib
+ ]],[[
+ if(0 != getenv(0))
+ return 1;
+ ]])
+ ],[
+ AC_MSG_RESULT([yes])
+ tst_compi_getenv="yes"
+ ],[
+ AC_MSG_RESULT([no])
+ tst_compi_getenv="no"
+ ])
+ fi
+ #
+ if test "$tst_compi_getenv" = "yes"; then
+ AC_MSG_CHECKING([if getenv usage allowed])
+ if test "x$cares_disallow_getenv" != "xyes"; then
+ AC_MSG_RESULT([yes])
+ tst_allow_getenv="yes"
+ else
+ AC_MSG_RESULT([no])
+ tst_allow_getenv="no"
+ fi
+ fi
+ #
+ AC_MSG_CHECKING([if getenv might be used])
+ if test "$tst_links_getenv" = "yes" &&
+ test "$tst_proto_getenv" = "yes" &&
+ test "$tst_compi_getenv" = "yes" &&
+ test "$tst_allow_getenv" = "yes"; then
+ AC_MSG_RESULT([yes])
+ AC_DEFINE_UNQUOTED(HAVE_GETENV, 1,
+ [Define to 1 if you have the getenv function.])
+ ac_cv_func_getenv="yes"
+ else
+ AC_MSG_RESULT([no])
+ ac_cv_func_getenv="no"
+ fi
+])
+
+
dnl CARES_CHECK_FUNC_GETHOSTBYADDR
dnl -------------------------------------------------
dnl Verify if gethostbyaddr is available, prototyped,
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\ares_getenv.c\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\ares_gethostbyaddr.c\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\ares_getenv.h\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\ares_ipv6.h\r
# End Source File\r
# Begin Source File\r