Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
|
|
Proper definition of HAVE_function if function is found deeper.
|
|
|
|
|
|
Keep the '#' character as the first one on the line.
|
|
|
|
|
|
including our local m4/reentrant.m4 file. This even takes care of including the
file in the distribution tarball.
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
|
|
|
|
changed by libtool or autoconf.
|
|
|
|
|
|
|
|
|
|
definition which might be defined in config.h or config-*.h files
|
|
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.
|
|
needed, and being able to define it if appropriate for further configure tests
as well as for the generated config file.
|
|
that other package's underquoted m4 function definitions have on ours.
|
|
|
|
problem
|
|
|
|
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.
|
|
actually verify if the test is properly working
|
|
setting as the one actually used when finally building the library.
|
|
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
|
|
|
|
|
|
|
|
now cause the definition of RECVFROM_TYPE_ARG2_IS_VOID, RECVFROM_TYPE_ARG5_IS_VOID
or RECVFROM_TYPE_ARG6_IS_VOID, as appropriate.
|
|
|
|
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
|
|
|
|
to the data type pointed by its respective argument and not the pointer type.
|
|
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.
|
|
|
|
|
|
Configure process no longer needs nor checks size of curl_off_t.
Library will now be built with _REENTRANT symbol defined.
|
|
|
|
|
|
from CVS tree.
|
|
|
|
|