Gisle Vanem [Sat, 16 Aug 2008 16:42:44 +0000 (16:42 +0000)]
Support Watt-32 under Win32.
Yang Tse [Sun, 10 Aug 2008 00:39:45 +0000 (00:39 +0000)]
Fix: Remove now this SIZEOF_CURL_OFF_T symbol definition.
This should have been done with the initial 64-bit curl_off_t patch.
Yang Tse [Sat, 9 Aug 2008 17:26:24 +0000 (17:26 +0000)]
Improve CURL_CHECK_DEF
Yang Tse [Sat, 9 Aug 2008 17:01:17 +0000 (17:01 +0000)]
Fix IBM C and DEC/Compaq C compiler detection
Yang Tse [Thu, 7 Aug 2008 00:29:08 +0000 (00:29 +0000)]
Initial support of curlbuild.h and curlrules.h which allows
to have a curl_off_t data type no longer gated to off_t.
Yang Tse [Tue, 5 Aug 2008 09:08:43 +0000 (09:08 +0000)]
The minimum autoconf version required for this file is 2.50
Avoid dot notation in aclocal serial file number, use a single number now.
Daniel Stenberg [Mon, 4 Aug 2008 20:23:12 +0000 (20:23 +0000)]
- 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.
Yang Tse [Mon, 4 Aug 2008 06:48:11 +0000 (06:48 +0000)]
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.
Yang Tse [Sun, 3 Aug 2008 03:14:05 +0000 (03:14 +0000)]
Adjust DEC/Compaq C compiler settings.
Yang Tse [Fri, 1 Aug 2008 19:29:05 +0000 (19:29 +0000)]
Another AC_TRY_LINK conversion to AC_LINK_IFELSE.
Proper definition of HAVE_function if function is found deeper.
Yang Tse [Fri, 1 Aug 2008 03:10:54 +0000 (03:10 +0000)]
Sync up with reality
Yang Tse [Fri, 1 Aug 2008 02:48:00 +0000 (02:48 +0000)]
Rename reentrant.m4 to avoid filename clash.
Yang Tse [Wed, 30 Jul 2008 12:09:35 +0000 (12:09 +0000)]
Add file version serial number that might be used by 'aclocal' and others.
Keep the '#' character as the first one on the line.
Yang Tse [Wed, 30 Jul 2008 08:27:02 +0000 (08:27 +0000)]
Update copyright year.
Yang Tse [Wed, 30 Jul 2008 08:21:25 +0000 (08:21 +0000)]
Sync comment with reality.
Yang Tse [Wed, 30 Jul 2008 03:10:03 +0000 (03:10 +0000)]
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.
Yang Tse [Tue, 29 Jul 2008 18:23:11 +0000 (18:23 +0000)]
Add quoting for the AC_DEFINE arguments.
Yang Tse [Tue, 29 Jul 2008 18:01:29 +0000 (18:01 +0000)]
Also remove the whitespace.
Yang Tse [Tue, 29 Jul 2008 17:45:33 +0000 (17:45 +0000)]
Also remove the extra quoting.
Yang Tse [Tue, 29 Jul 2008 16:29:34 +0000 (16:29 +0000)]
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.
Yang Tse [Tue, 29 Jul 2008 02:26:21 +0000 (02:26 +0000)]
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.
Yang Tse [Mon, 28 Jul 2008 15:13:31 +0000 (15:13 +0000)]
for debugging purposes show ACLOCAL_FLAGS
Yang Tse [Sun, 27 Jul 2008 23:43:53 +0000 (23:43 +0000)]
These lines were unintentionally removed in previous commit
Yang Tse [Sun, 27 Jul 2008 22:25:07 +0000 (22:25 +0000)]
Partially undo change that prevented SED, GREP, EGREP and AR from being changed by libtool or autoconf.
Yang Tse [Sun, 27 Jul 2008 21:47:22 +0000 (21:47 +0000)]
Assert that SED and GREP are set
Yang Tse [Sun, 27 Jul 2008 20:29:04 +0000 (20:29 +0000)]
Require autoconf 2.57 or newer
Yang Tse [Sun, 27 Jul 2008 18:10:54 +0000 (18:10 +0000)]
When calling aclocal, user defined ACLOCAL_FLAGS will now precede ours.
Yang Tse [Sun, 27 Jul 2008 16:37:02 +0000 (16:37 +0000)]
move ACLOCAL_AMFLAGS after AUTOMAKE_OPTIONS
Yang Tse [Sun, 27 Jul 2008 03:16:37 +0000 (03:16 +0000)]
setup.h handles definition of _REENTRANT based on NEED_REENTRANT
definition which might be defined in config.h or config-*.h files
Yang Tse [Sun, 27 Jul 2008 02:41:13 +0000 (02:41 +0000)]
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.
Yang Tse [Sun, 27 Jul 2008 01:36:37 +0000 (01:36 +0000)]
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.
Yang Tse [Sat, 26 Jul 2008 14:45:16 +0000 (14:45 +0000)]
Explicitly include our m4 files first. This might minimize the impact
that other package's underquoted m4 function definitions have on ours.
Yang Tse [Sat, 26 Jul 2008 01:24:50 +0000 (01:24 +0000)]
Add a 3 argument check for getprotobyname_r
Yang Tse [Fri, 25 Jul 2008 13:21:14 +0000 (13:21 +0000)]
move reentrant.m4 to the m4 subdirectory to avoid infinite loop inclusion problem
Yang Tse [Thu, 24 Jul 2008 18:02:44 +0000 (18:02 +0000)]
add checks for strtok_r and getprotobyname_r
Yang Tse [Thu, 24 Jul 2008 15:20:35 +0000 (15:20 +0000)]
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.
Yang Tse [Wed, 23 Jul 2008 04:20:39 +0000 (04:20 +0000)]
reorder argument number detection for getservbyport_r to
actually verify if the test is properly working
Yang Tse [Tue, 22 Jul 2008 19:04:16 +0000 (19:04 +0000)]
Make sure that configure process tests are done with the same _REENTRANT
setting as the one actually used when finally building the library.
Yang Tse [Mon, 21 Jul 2008 18:24:32 +0000 (18:24 +0000)]
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
Yang Tse [Mon, 21 Jul 2008 14:01:46 +0000 (14:01 +0000)]
use prototypes to improve getservbyport_r detection
Yang Tse [Mon, 21 Jul 2008 03:50:02 +0000 (03:50 +0000)]
Adjust recvfrom's sixth arg data type definition for NetWare (LIBC)
Yang Tse [Mon, 21 Jul 2008 03:06:08 +0000 (03:06 +0000)]
Use the sreadfrom() wrapper to replace recvfrom() in our code.
Yang Tse [Mon, 21 Jul 2008 00:36:55 +0000 (00:36 +0000)]
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.
Yang Tse [Sun, 20 Jul 2008 17:18:29 +0000 (17:18 +0000)]
Adjust DEC/Compaq C compiler settings
Yang Tse [Sun, 20 Jul 2008 09:46:52 +0000 (09:46 +0000)]
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
Yang Tse [Sat, 19 Jul 2008 11:27:45 +0000 (11:27 +0000)]
Adjust DEC/Compaq C compiler settings
Yang Tse [Thu, 17 Jul 2008 03:07:54 +0000 (03:07 +0000)]
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.
Yang Tse [Wed, 16 Jul 2008 19:16:41 +0000 (19:16 +0000)]
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.
Yang Tse [Wed, 16 Jul 2008 14:17:56 +0000 (14:17 +0000)]
Initial DEC/Compaq C compiler detection and flags
Yang Tse [Wed, 16 Jul 2008 12:26:09 +0000 (12:26 +0000)]
Improved configure detection of number of arguments for getservbyport_r
Yang Tse [Tue, 15 Jul 2008 16:43:39 +0000 (16:43 +0000)]
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.
Yang Tse [Thu, 10 Jul 2008 08:21:48 +0000 (08:21 +0000)]
fix compiler warning
Yang Tse [Wed, 9 Jul 2008 16:38:55 +0000 (16:38 +0000)]
since Jun 30 2008 MAXHOSTNAMELEN define is no longer used
Yang Tse [Mon, 7 Jul 2008 02:11:21 +0000 (02:11 +0000)]
fix c-ares version reported in generated libcares.pc file when building
from CVS tree.
Yang Tse [Fri, 4 Jul 2008 04:03:56 +0000 (04:03 +0000)]
egrep and ar are also mandatory
Daniel Stenberg [Thu, 3 Jul 2008 11:41:11 +0000 (11:41 +0000)]
just to clarify that c-ares actually have some ipv6 support
Daniel Stenberg [Thu, 3 Jul 2008 11:34:34 +0000 (11:34 +0000)]
ares_gethostbyname() fallback from AAA to A records with CNAME present
Daniel Stenberg [Thu, 3 Jul 2008 11:32:35 +0000 (11:32 +0000)]
- 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.
Yang Tse [Wed, 2 Jul 2008 17:42:08 +0000 (17:42 +0000)]
The configure process will now halt when sed or grep are unavailable
Yang Tse [Wed, 2 Jul 2008 03:04:56 +0000 (03:04 +0000)]
fallback to gettimeofday when monotonic clock is unavailable at run-time
Yang Tse [Tue, 1 Jul 2008 10:29:25 +0000 (10:29 +0000)]
IBM C/C++ compiler predefined macro check
Yang Tse [Tue, 1 Jul 2008 00:30:46 +0000 (00:30 +0000)]
set earlier in configure process IBM compilers optimization flags
Yang Tse [Mon, 30 Jun 2008 14:10:27 +0000 (14:10 +0000)]
make check message wording more precise
Daniel Stenberg [Mon, 30 Jun 2008 12:48:25 +0000 (12:48 +0000)]
- As was pointed out to me by Andreas Schuldei, the MAXHOSTNAMELEN define is
not posix or anything and thus c-ares failed to build on hurd (and possibly
elsewhere). The define was also somewhat artificially used in the windows
port. Now, I instead rewrote the use of gethostbyname to enlarge the host
name buffer in case of need and totally avoid the use of the MAXHOSTNAMELEN
define. I thus also removed the defien from the namser.h file where it was
once added for the windows build.
I also fixed init_by_defaults() function to not leak memory in case if
error.
Yang Tse [Sun, 29 Jun 2008 11:08:52 +0000 (11:08 +0000)]
fix C style comment
Yang Tse [Sun, 29 Jun 2008 03:19:21 +0000 (03:19 +0000)]
John Lightsey filed bug report #1999181: "CLOCK_MONOTONIC always fails on
some systems" (http://curl.haxx.se/bug/view.cgi?id=1999181). The problem was
that the configure script did not use the _POSIX_MONOTONIC_CLOCK feature test
macro when checking monotonic clock availability. This is now fixed and the
monotonic clock will not be used unless the feature test macro is defined
with a value greater than zero indicating always supported.
Yang Tse [Fri, 20 Jun 2008 18:09:48 +0000 (18:09 +0000)]
Modified configuration script to actually verify if the compiler is good
enough at detecting compilation errors or at least it has been properly
configured to do so. Configuration heavily depends on this capability, so
if this compiler sanity check fails the configuration process will now fail.
Yang Tse [Wed, 18 Jun 2008 04:39:29 +0000 (04:39 +0000)]
No longer break out of a shell "for" statement from inside
AC_FOO_IFELSE macros, otherwise temp files are not removed.
Identation adjustment.
Gunter Knauf [Wed, 11 Jun 2008 00:07:08 +0000 (00:07 +0000)]
enable additional CFLAGS from commandline.
Yang Tse [Mon, 9 Jun 2008 01:06:48 +0000 (01:06 +0000)]
fix pkg-config reporting of private libraries needed for static linking
Yang Tse [Fri, 6 Jun 2008 18:44:40 +0000 (18:44 +0000)]
MSVC does build Windows native targets
Yang Tse [Fri, 30 May 2008 15:26:42 +0000 (15:26 +0000)]
Brad House fixed a missing header file inclusion in adig sample program
Daniel Stenberg [Thu, 29 May 2008 20:39:18 +0000 (20:39 +0000)]
start working on 1.5.3
Daniel Stenberg [Thu, 29 May 2008 20:10:40 +0000 (20:10 +0000)]
1.5.2
Yang Tse [Mon, 26 May 2008 13:52:25 +0000 (13:52 +0000)]
fix compiler warning: unreferenced formal parameter
Daniel Stenberg [Fri, 23 May 2008 21:52:56 +0000 (21:52 +0000)]
list all local sources the (demo) tools need, add a few missing scripts to
the dist tarball and remove a two duplicate file names from EXTRA_DIST
(most of it pointed out by Yang Tse)
Daniel Stenberg [Fri, 23 May 2008 21:46:29 +0000 (21:46 +0000)]
this is not used (anymore)
Daniel Stenberg [Thu, 22 May 2008 17:41:29 +0000 (17:41 +0000)]
make sure the configure.ac file with the correct version number is shipped
in the tarball
Yang Tse [Thu, 22 May 2008 16:10:57 +0000 (16:10 +0000)]
MSVC6+ clean-up targets must also remove acountry.exe
Yang Tse [Thu, 22 May 2008 15:31:06 +0000 (15:31 +0000)]
sync with reality
Yang Tse [Wed, 21 May 2008 18:24:09 +0000 (18:24 +0000)]
fix: [action-if-found] part of AC_CHECK_TYPE macro cannot be quoted when empty
Yang Tse [Wed, 21 May 2008 14:04:14 +0000 (14:04 +0000)]
fix: remove need and definition of HAVE_SOCKLEN_T symbol
Yang Tse [Wed, 21 May 2008 13:57:51 +0000 (13:57 +0000)]
fix: socklen_t definition comment
Yang Tse [Tue, 20 May 2008 15:55:31 +0000 (15:55 +0000)]
update several macros using AC_TRY_LINK with AC_LINK_IFELSE
Yang Tse [Tue, 20 May 2008 04:23:31 +0000 (04:23 +0000)]
fix underquoting of AC_LANG_PROGRAM arguments
Yang Tse [Tue, 20 May 2008 01:24:19 +0000 (01:24 +0000)]
if'def out private function ares__tvdiff(), it is not in use yet.
Yang Tse [Tue, 20 May 2008 01:04:13 +0000 (01:04 +0000)]
update several macros using AC_TRY_LINK with AC_LINK_IFELSE
Yang Tse [Mon, 19 May 2008 12:31:12 +0000 (12:31 +0000)]
fix socklen_t equivalent detection when cross compiling Windows target
Yang Tse [Mon, 19 May 2008 02:50:29 +0000 (02:50 +0000)]
if WINSOCK2 API is used link with 'ws2_32', else
if WINSOCK API is used under WinCE link with 'winsock', else
if WINSOCK API is used link with 'wsock32'.
Yang Tse [Sun, 18 May 2008 20:13:13 +0000 (20:13 +0000)]
on winsock systems linking is done using library 'ws2_32' when
winsock2.h is available, and library 'winsock' is used when only
winsock.h is available.
Yang Tse [Sat, 17 May 2008 01:20:57 +0000 (01:20 +0000)]
minor change for wince-cegcc and wince-mingw32ce support
Yang Tse [Thu, 15 May 2008 22:57:33 +0000 (22:57 +0000)]
millisecond resolution support followup
Gisle Vanem [Thu, 15 May 2008 20:47:45 +0000 (20:47 +0000)]
Replaced "-DHAVE_FIONBIO" with "-DHAVE_IOCTLSOCKET".
Added "-DHAVE_GETTIMEOFDAY". Trimmed lines.
Yang Tse [Thu, 15 May 2008 10:04:15 +0000 (10:04 +0000)]
sync with reality
Yang Tse [Thu, 15 May 2008 09:18:05 +0000 (09:18 +0000)]
remove compilation time generated files
Yang Tse [Thu, 15 May 2008 00:00:19 +0000 (00:00 +0000)]
use same time source for timeout initialization and processing
Yang Tse [Wed, 14 May 2008 19:42:17 +0000 (19:42 +0000)]
Improve toolchain detection for WinCE cross compilation:
When cross compiling WinCE with the arm-wince-cegcc-gcc C compiler
symbol __CEGCC__ is defined and the unix-like compatibility layer
is used. For our purposes this is not a native Windows build.
When cross compiling WinCE with the arm-wince-mingw32ce-gcc C compiler
symbol __MINGW32CE__ is defined and the unix-like compatibility layer
is not used. For our purposes this _is_ a native Windows build.
Yang Tse [Wed, 14 May 2008 16:14:35 +0000 (16:14 +0000)]
skip checks for Windows specific header files
when build target is not a native Windows one
Yang Tse [Wed, 14 May 2008 13:54:41 +0000 (13:54 +0000)]
WinCE cross compilation adjustments:
HAVE_WINSOCK2_H shall not be defined.
HAVE_WS2TCPIP_H shall not be defined.
Daniel Stenberg [Tue, 13 May 2008 20:48:48 +0000 (20:48 +0000)]
- Introducing millisecond resolution support for the timeout option. See
ares_init_options()'s ARES_OPT_TIMEOUTMS.