Commit Graph

874 Commits

Author SHA1 Message Date
Gisle Vanem
c9549391d1 Added HAVE_NETDB_H, HAVE_ARPA_INET_H, HAVE_STRCASECMP
and HAVE_STRNCASECMP.
2008-09-21 13:03:07 +00:00
Yang Tse
51ba24991c icc adjustments:
Disable remark #981: operands are evaluated in unspecified order

      Function calls which are triggering this remark, today, do not depend
      on the order of evaluation of its arguments.

  Disable remark #1469: "cc" clobber ignored

      Remark triggered on htons() and ntohs() due to glibc header files.
2008-09-19 15:59:28 +00:00
Yang Tse
a8323cc3f5 icc adjustments 2008-09-18 13:56:56 +00:00
Yang Tse
8fa895d65e fix netdb.h prerequisite inclusion 2008-09-18 02:23:33 +00:00
Yang Tse
0c1ae21c11 improve detection of getservbyport_r() 2008-09-17 11:31:37 +00:00
Yang Tse
f30959c6bd On Linux Intel's icc uses gcc's header files, so
we select ANSI C89 dialect plus GNU extensions.
2008-09-17 09:37:41 +00:00
Yang Tse
638e3c070c improve detection of gethostname() 2008-09-17 08:14:00 +00:00
Yang Tse
07aeac37fd NetWare builds include "nameser.h" from the c-ares subdir 2008-09-17 06:59:31 +00:00
Yang Tse
6ec76e7f9a include <strings.h> 2008-09-17 03:25:52 +00:00
Yang Tse
0776701396 Sync up with reality 2008-09-17 01:33:43 +00:00
Yang Tse
39de6c784c adjust inclusion of "nameser.h" 2008-09-17 01:02:57 +00:00
Yang Tse
e5c4482088 reorder some lines in file 2008-09-17 00:07:49 +00:00
Yang Tse
975c171d5a code cleanup 2008-09-16 18:43:25 +00:00
Yang Tse
8c6c0a7bcc NetWare seems to have writev() 2008-09-16 18:18:14 +00:00
Yang Tse
aa41743ebd rearrange to allow internal/private use of ares_writev to any system
that lacks the writev function.
2008-09-16 16:42:48 +00:00
Yang Tse
6a04c0878b NetWare CLIB target has stricmp() and strnicmp() 2008-09-15 17:31:34 +00:00
Yang Tse
db80e18308 include header file only when available 2008-09-15 17:14:29 +00:00
Yang Tse
8085c7a450 rearrange to allow internal/private use of ares_strcasecmp to any system that
lacks the strcasecmp function.
2008-09-15 15:28:26 +00:00
Yang Tse
938458b330 improve detection of:
strcasecmp()
  strcmpi()
  stricmp()
  strncasecmp()
  strncmpi()
  strnicmp()
2008-09-15 00:31:42 +00:00
Yang Tse
e526b5ffeb *** empty log message *** 2008-09-13 01:35:15 +00:00
Gisle Vanem
2acc92828f djgpp does have strdup(). 2008-09-12 14:13:36 +00:00
Yang Tse
6d233becf0 change CRLF into LF line endings 2008-09-12 05:08:18 +00:00
Yang Tse
802f1e4406 strdup() clone for systems/configurations which lack it 2008-09-11 04:02:49 +00:00
Yang Tse
a37cc6cb08 move inclusion of ares_private.h last 2008-09-11 03:46:47 +00:00
Yang Tse
7b3f86152a icc adjustments 2008-09-10 17:35:22 +00:00
Yang Tse
3072c5b8a1 icc adjustments 2008-09-09 12:19:16 +00:00
Yang Tse
a3787eff19 Select strict ANSI C89 conformance for icc 2008-09-08 16:48:58 +00:00
Yang Tse
59e378f48f remove unnecessary typecasting of malloc() 2008-09-06 05:29:05 +00:00
Yang Tse
861b647e7b remove unnecessary typecasting of realloc() 2008-09-06 04:28:43 +00:00
Daniel Stenberg
bae4e12302 we start over working towards 1.5.4 2008-08-29 08:55:02 +00:00
Daniel Stenberg
09df1cdb5c Version 1.5.3 2008-08-29 08:33:02 +00:00
Daniel Stenberg
2946d87e48 added the three people from RELEASE-NOTES and sorted the list alphabetically 2008-08-29 08:29:47 +00:00
Yang Tse
f9894f4ebc Don't abort configuration if recvfrom() is not available. 2008-08-27 00:25:02 +00:00
Yang Tse
2a6148716c Functionality only possible if recvfrom() is available. 2008-08-26 03:08:27 +00:00
Yang Tse
db23538898 George Neill's fix acountry sample application compilation failure. 2008-08-25 03:44:43 +00:00
Yang Tse
423a18cecc Brad House's validation that DNS response address matches the request address 2008-08-25 03:34:50 +00:00
Yang Tse
0f5f91df0b fix the output name 2008-08-21 00:13:48 +00:00
Yang Tse
ceb49d3742 Get rid of ENABLE_64BIT symbol definition and usage.
Improve HAVE_LONGLONG symbol description.
2008-08-21 00:06:15 +00:00
Yang Tse
347213d124 Export 'ares_process_fd' too. 2008-08-20 23:38:36 +00:00
Gisle Vanem
315bb970a5 Ops, remove 'use_vc'. 2008-08-16 17:05:42 +00:00
Gisle Vanem
65b0f6049d Support Watt-32 under Win32. 2008-08-16 16:42:44 +00:00
Yang Tse
6237fd2c16 Fix: Remove now this SIZEOF_CURL_OFF_T symbol definition.
This should have been done with the initial 64-bit curl_off_t patch.
2008-08-10 00:39:45 +00:00
Yang Tse
4594187732 Improve CURL_CHECK_DEF 2008-08-09 17:26:24 +00:00
Yang Tse
63818f8488 Fix IBM C and DEC/Compaq C compiler detection 2008-08-09 17:01:17 +00:00
Yang Tse
14240e9e10 Initial support of curlbuild.h and curlrules.h which allows
to have a curl_off_t data type no longer gated to off_t.
2008-08-07 00:29:08 +00:00
Yang Tse
182a415555 The minimum autoconf version required for this file is 2.50
Avoid dot notation in aclocal serial file number, use a single number now.
2008-08-05 09:08:43 +00:00
Daniel Stenberg
931fc45f05 - Fix by Tofu Linden:
The symptom:
  * Users (usually, but not always) on 2-Wire routers and the Comcast service
  and a wired connection to their router would find that the second and
  subsequent DNS lookups from fresh processes using c-ares to resolve the same
  address would cause the process to never see a reply (it keeps polling for
  around 1m15s before giving up).

  The repro:
  * On such a machine (and yeah, it took us a lot of QA to find the systems
  that reproduce such a specific problem!), do 'ahost www.secondlife.com',
  then do it again.  The first process's lookup will work, subsequent lookups
  will time-out and fail.

  The cause:
  * init_id_key() was calling randomize_key() *before* it initialized
  key->state, meaning that the randomness generated by randomize_key() is
  immediately overwritten with deterministic values. (/dev/urandom was also
  being read incorrectly in the c-ares version we were using, but this was
  fixed in a later version.)
  * This makes the stream of generated query-IDs from any new c-ares process
  be an identical and predictable sequence of IDs.
  * This makes the 2-Wire's default built-in DNS server detect these queries
  as probable-duplicates and (erroneously) not respond at all.
2008-08-04 20:23:12 +00:00
Yang Tse
b4fdccf87a Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. But,
autoconf 2.62 version of AC_AIX defines _ALL_SOURCE along with other four
preprocessor symbols no matter if the system is AIX or not. To keep the
traditional behaviour, as well as an uniform one, across autoconf versions
AC_AIX is replaced with our own internal macro.
2008-08-04 06:48:11 +00:00
Yang Tse
74d77cb140 Adjust DEC/Compaq C compiler settings. 2008-08-03 03:14:05 +00:00
Yang Tse
47724ef238 Another AC_TRY_LINK conversion to AC_LINK_IFELSE.
Proper definition of HAVE_function if function is found deeper.
2008-08-01 19:29:05 +00:00
Yang Tse
5cff8124b0 Sync up with reality 2008-08-01 03:10:54 +00:00
Yang Tse
90e2510e2f Rename reentrant.m4 to avoid filename clash. 2008-08-01 02:48:00 +00:00
Yang Tse
f3bc16f4f5 Add file version serial number that might be used by 'aclocal' and others.
Keep the '#' character as the first one on the line.
2008-07-30 12:09:35 +00:00
Yang Tse
15f94858f2 Update copyright year. 2008-07-30 08:27:02 +00:00
Yang Tse
5febd06c25 Sync comment with reality. 2008-07-30 08:21:25 +00:00
Yang Tse
a3498f96ef Reinstate the 'aclocal -I m4' in buildconf and 'ACLOCAL_AMFLAGS = -I m4' way of
including our local m4/reentrant.m4 file. This even takes care of including the
file in the distribution tarball.
2008-07-30 03:10:03 +00:00
Yang Tse
a8baa05023 Add quoting for the AC_DEFINE arguments. 2008-07-29 18:23:11 +00:00
Yang Tse
7066a79466 Also remove the whitespace. 2008-07-29 18:01:29 +00:00
Yang Tse
4a623f7ed2 Also remove the extra quoting. 2008-07-29 17:45:33 +00:00
Yang Tse
f18700ef64 Replace some '@%:@' quadigraphs by its actual representation '#'.
This quadigraph used before a C preprocessor 'define' directive could
be fooling M4, when processing this file, and make it think that the
line contains a pure M4 'define' macro.
2008-07-29 16:29:34 +00:00
Yang Tse
52d9a3c34f Tests done using 'aclocal -I m4' in buildconf and 'ACLOCAL_AMFLAGS = -I m4
in top Makefile.am triggered a problem that prevented aclocal from running
successfully on SunOS 5.10 with GNU m4 1.4.5 and GNU Autoconf 2.61

A tarball which reproduces mentioned problem is the one dated July-28-2008
http://cool.haxx.se/curl-daily/curl-7.19.0-20080728.tar.gz

We actually don't need all the bells and whistles that the above mechanism
provides. We only need to include our m4/reentrant.m4 file in acinclude.m4
so here we go with this simpler mechanism.
2008-07-29 02:26:21 +00:00
Yang Tse
7634091325 for debugging purposes show ACLOCAL_FLAGS 2008-07-28 15:13:31 +00:00
Yang Tse
817efbc29c These lines were unintentionally removed in previous commit 2008-07-27 23:43:53 +00:00
Yang Tse
d2661cb4b2 Partially undo change that prevented SED, GREP, EGREP and AR from being changed by libtool or autoconf. 2008-07-27 22:25:07 +00:00
Yang Tse
9b0110f50c Assert that SED and GREP are set 2008-07-27 21:47:22 +00:00
Yang Tse
5876381f86 Require autoconf 2.57 or newer 2008-07-27 20:29:04 +00:00
Yang Tse
c4edc25d01 When calling aclocal, user defined ACLOCAL_FLAGS will now precede ours. 2008-07-27 18:10:54 +00:00
Yang Tse
c8fe5f485c move ACLOCAL_AMFLAGS after AUTOMAKE_OPTIONS 2008-07-27 16:37:02 +00:00
Yang Tse
1ac1212925 setup.h handles definition of _REENTRANT based on NEED_REENTRANT
definition which might be defined in config.h or config-*.h files
2008-07-27 03:16:37 +00:00
Yang Tse
3d4fb5136d Remove explicit inclusion of our m4 files first. It was interesting as a test,
but it breaks aclocal execution on some systems, with the following error:

Can't locate object method "rel2abs" via package "File::Spec" at /usr/local/bin/aclocal line 256.
2008-07-27 02:41:13 +00:00
Yang Tse
052f9ddedb Another step towards detecting if _REENTRANT is already defined or actually
needed, and being able to define it if appropriate for further configure tests
as well as for the generated config file.
2008-07-27 01:36:33 +00:00
Yang Tse
fa1009b6fc Explicitly include our m4 files first. This might minimize the impact
that other package's underquoted m4 function definitions have on ours.
2008-07-26 14:45:16 +00:00
Yang Tse
9a806f667b Add a 3 argument check for getprotobyname_r 2008-07-26 01:24:50 +00:00
Yang Tse
6b7e74a030 move reentrant.m4 to the m4 subdirectory to avoid infinite loop inclusion problem 2008-07-25 13:21:14 +00:00
Yang Tse
7fdeb14e6d add checks for strtok_r and getprotobyname_r 2008-07-24 18:02:44 +00:00
Yang Tse
8a323f8354 Another step towards detecting if _REENTRANT is already defined or actually
needed, and being able to define it if appropriate for further configure tests
as well as for the generated config file.

Introduced reentrant.m4 intended for our reentrant related autotools/m4 macros.
2008-07-24 15:20:35 +00:00
Yang Tse
f14e020370 reorder argument number detection for getservbyport_r to
actually verify if the test is properly working
2008-07-23 04:20:39 +00:00
Yang Tse
1bc490077a Make sure that configure process tests are done with the same _REENTRANT
setting as the one actually used when finally building the library.
2008-07-22 19:04:16 +00:00
Yang Tse
0919de4511 Change recvfrom's sixth argument data type to the 'historically standard' 'int'
data type for systems where this sixth argument is prototyped as a void pointer.

Start of thread: http://curl.haxx.se/mail/lib-2008-07/0153.html
2008-07-21 18:24:32 +00:00
Yang Tse
2066d60b16 use prototypes to improve getservbyport_r detection 2008-07-21 14:01:46 +00:00
Yang Tse
a20d55fb64 Adjust recvfrom's sixth arg data type definition for NetWare (LIBC) 2008-07-21 03:50:02 +00:00
Yang Tse
1b37baf656 Use the sreadfrom() wrapper to replace recvfrom() in our code. 2008-07-21 03:06:07 +00:00
Yang Tse
bffe69a151 when recvfrom prototype uses a void pointer for arguments 2, 5 or 6 this will
now cause the definition of RECVFROM_TYPE_ARG2_IS_VOID, RECVFROM_TYPE_ARG5_IS_VOID
or RECVFROM_TYPE_ARG6_IS_VOID, as appropriate.
2008-07-21 00:36:55 +00:00
Yang Tse
71525352f0 Adjust DEC/Compaq C compiler settings 2008-07-20 17:18:29 +00:00
Yang Tse
184229b1e5 Added "pointer to void" as another data type to check for the sixth argument of
function recvfrom as a result of the info additionally logged when running on a
Solaris system.

The compiler error showed that the prototype being used on Solaris was the one
declared in line 427 of "/usr/include/sys/socket.h" as:

function(int,
         pointer to void,
         unsigned int,
         int,
         pointer to struct sockaddr,
         pointer to void) returning int
2008-07-20 09:46:52 +00:00
Yang Tse
3f84e373ac Adjust DEC/Compaq C compiler settings 2008-07-19 11:27:45 +00:00
Yang Tse
39f23aec6b RECVFROM_TYPE_ARG2, RECVFROM_TYPE_ARG5 and RECVFROM_TYPE_ARG6 are now defined
to the data type pointed by its respective argument and not the pointer type.
2008-07-17 03:07:54 +00:00
Yang Tse
a9dc900515 Configure process now checks availability of recvfrom() socket function and
finds out its return type and the types of its arguments. Added definitions
for non-configure systems config files, and introduced macro sreadfrom which
will be used on udp sockets as a recvfrom() wrapper.
2008-07-16 19:16:41 +00:00
Yang Tse
3a705696af Initial DEC/Compaq C compiler detection and flags 2008-07-16 14:17:56 +00:00
Yang Tse
2cfb8a2bf0 Improved configure detection of number of arguments for getservbyport_r 2008-07-16 12:26:09 +00:00
Yang Tse
21ee1c2d01 Allow --enable-largefile and --disable-largefile configurations.
Configure process no longer needs nor checks size of curl_off_t.
Library will now be built with _REENTRANT symbol defined.
2008-07-15 16:43:39 +00:00
Yang Tse
e30bbfd85d fix compiler warning 2008-07-10 08:21:48 +00:00
Yang Tse
aee7fc118b since Jun 30 2008 MAXHOSTNAMELEN define is no longer used 2008-07-09 16:38:55 +00:00
Yang Tse
d816a11bca fix c-ares version reported in generated libcares.pc file when building
from CVS tree.
2008-07-07 02:11:21 +00:00
Yang Tse
0b57c47547 egrep and ar are also mandatory 2008-07-04 04:03:55 +00:00
Daniel Stenberg
02db4450df just to clarify that c-ares actually have some ipv6 support 2008-07-03 11:41:11 +00:00
Daniel Stenberg
ed7af82bdf ares_gethostbyname() fallback from AAA to A records with CNAME present 2008-07-03 11:34:34 +00:00
Daniel Stenberg
e3b5673e98 - Phil Blundell: If you ask ares_gethostbyname() to do an AF_INET6 lookup and
the target host has only A records, it automatically falls back to an
  AF_INET lookup and gives you the A results.  However, if the target host has
  a CNAME record, this behaviour is defeated since the original query does
  return some data even though ares_parse_aaa_reply() doesn't consider it
  relevant. Here's a small patch to make it behave the same with and without
  the CNAME.
2008-07-03 11:32:35 +00:00
Yang Tse
bfaab6ed6b The configure process will now halt when sed or grep are unavailable 2008-07-02 17:42:08 +00:00
Yang Tse
97333deb3f fallback to gettimeofday when monotonic clock is unavailable at run-time 2008-07-02 03:04:56 +00:00