1
0
mirror of https://frontier.innolan.net/rainlance/c-ares.git synced 2025-10-06 00:09:31 +00:00
Commit Graph

791 Commits

Author SHA1 Message Date
e4eb2d0e1d ares_strerror() segfaulted if the input error number was out of the currently
supported range.
2007-10-01 22:52:31 +00:00
250e7c4020 Prevent ares_strerror() from segfaulting if an invalid error code is passed
in as argument!
2007-10-01 22:51:38 +00:00
10df4bdba2 Fix compiler warning 2007-09-30 19:43:23 +00:00
68aa62d76b check availability of <netinet/tcp.h> 2007-09-30 02:12:11 +00:00
a0b8ac2bdc improve portability, defining MAXDNAME and MAXCDNAME 2007-09-30 00:37:47 +00:00
879f89a989 Fix a memory leak that I recently inadvertedly introduced. 2007-09-30 00:08:01 +00:00
60519063ea Use ISDIGIT instead of isdigit; fixes a gcc warning. 2007-09-29 21:57:05 +00:00
ff7137ad74 Port the TCP socket fix made in ares_fds() to ares_getsock() as well. 2007-09-29 19:26:59 +00:00
04e49e09dc Previously, processing a large batch of timeouts was O(n^2) in the number of
outstanding queries, and processing a DNS response packet was O(n) in the
number of outstanding queries. To speed things up in Google, we added a few circular,
doubly-linked lists of queries that are hash-bucketed based on
the attributes we care about, so most important operations are now O(1).

It might be that the number of buckets are higher than most people would need,
but on a quick calculation it should only be 100kB or so even on a 64-bit
system, so I've let it stay as-is.
2007-09-29 18:18:47 +00:00
edf1901077 We should standarise on C comments. 2007-09-29 14:37:47 +00:00
053ffe405d Fix compiler warning in setsockopt(). 2007-09-29 14:34:59 +00:00
13d4d28e11 TCP queries can time out too, not just UDP queries. (Patch from the Google tree.) 2007-09-29 14:25:14 +00:00
21feec7d2d Read and process as many packets as possible in read_udp_packets, to avoid having to run the entire event loop once per packet. (Patch from the Google tree.) 2007-09-29 14:21:47 +00:00
2f7d637426 There are two different places in write_tcp_data() that advance the send_queue; however, they are slightly different and only the first one properly uses a while loop. Consolidate both into a single function that DTTR. (Patch from the Google tree.) 2007-09-29 14:09:14 +00:00
46f3220097 Reject names that are longer than 255 characters, to avoid problems with strict or buggy DNS server implementations. (Patch from the Google tree) 2007-09-29 13:58:23 +00:00
22c2794e76 In ares_mkquery, make sure we set buflen and buf to reasonable values if there's an error. (Patch from the Google tree) 2007-09-29 13:56:36 +00:00
cccd9a58cd Be stricter about what's a valid IP address in fake_hostent. (Patch from the Google tree.) 2007-09-29 13:52:14 +00:00
49162e5b67 Handle the root of the DNS tree correctly in ares_expand_name. 2007-09-29 13:38:17 +00:00
c577d2455e today's modifications by Steinar and me 2007-09-28 20:28:20 +00:00
e64b103303 Bumped version to 1.5.0 for next release and soname bumped to 2 due to ABI
and API changes in the progress callback (and possibly more coming up from
Steinar)
2007-09-28 20:28:06 +00:00
3b5e49995f Unrevert previous 'missing' hunks. They were missing since the patch is still in for review :-) 2007-09-28 15:56:28 +00:00
f785dbd9c4 Yet more missing hunks... Nggh. 2007-09-28 15:55:11 +00:00
55d44d3be6 Always register for TCP events even if there are no outstanding queries, as the other side could always close the connection, which is a valid event which should be responded to. 2007-09-28 15:53:10 +00:00
c24cd24870 Forgot to include a few hunks from ares_process.c earlier. Fixing now. 2007-09-28 15:51:00 +00:00
56ffdcefe1 Support a few more socket options, and refactor the option setting a bit. (Patch from the Google tree.) 2007-09-28 15:15:39 +00:00
50ba81cd23 Make the query callbacks return the number of timeouts that happened during the execution of a query, and update documentation accordingly. (Patch from the Google tree.) 2007-09-28 14:46:51 +00:00
b669e17544 Three fixes in one commit (sorry): a) Take care of the tcpbuf if it ends while queued for transmission, note broken servers and close them in the main loop, and store TCP socket generation number in order not to send the same query twice over the same socket. 2007-09-28 14:28:14 +00:00
a6a159dcad Don't skip a server if it's the only one. (Bugfix from the Google tree.) 2007-09-28 14:26:11 +00:00
c97d91e349 wrong, revert the previous "fix" and instead check that the fd_set pointer
is non-NULL before we FD_CLR
2007-09-27 12:04:56 +00:00
99f15b20e8 eek, fix the conditions to return on either problem instead of requiring
both to occur
2007-09-27 12:02:15 +00:00
b17bb1bb67 Steinar H. Gunderson fixed: Correctly clear sockets from the fd_set on in
several functions (write_tcp_data, read_tcp_data, read_udp_packets) so that
if it fails and the socket is closed the following code doesn't try to use
the file descriptor.
2007-09-22 21:23:10 +00:00
eee17fc854 Steinar H. Gunderson modified c-ares to now also do to DNS retries even when
TCP is used since there are several edge cases where it still makes sense.
2007-09-22 21:04:16 +00:00
2b43edc964 Brad House provided a fix for ares_save_options(): Apparently I overlooked
something with the ares_save_options() where it would try to do a malloc(0)
when no options of that type needed to be saved.  On most platforms, this was
fine because malloc(0) doesn't actually return NULL, but on AIX it does, so
ares_save_options would return ARES_ENOMEM.
2007-09-22 20:45:50 +00:00
bebef9e940 added initial pkg-config file (attempt) curl-7_17_0 2007-07-26 21:56:47 +00:00
d750fa4c2d added curl include for debug builds. 2007-07-20 21:50:53 +00:00
8af9486408 added another SEE ALSO 2007-07-14 23:01:49 +00:00
ad734e7b2d Brad House's fix to hish a win32 compiler warning 2007-07-14 13:14:58 +00:00
278e8f3926 added Vlad's entire description of his valgrind fix 2007-07-14 13:11:36 +00:00
403b315a3b Vlad Dinulescu fixed two outstanding valgrind reports 2007-07-14 13:08:50 +00:00
1c91a98fcd added better CodeWarrior detection. curl-7_16_4 2007-07-08 23:17:56 +00:00
5afa20d5f6 removed some obsolete include paths and defines. 2007-07-07 16:26:02 +00:00
ccf47928b8 add test for gettimeofday() so that HAVE_GETTIMEOFDAY gets defined. 2007-07-04 17:20:19 +00:00
76a007538c although the check for HAVE_STRUCT_TIMEVAL solved the redefine it is incorrect; lets see if a check for HAVE_GETTIMEOFDAY also works; if gettimeofday() is present then we can assume we have the timezone struct too. 2007-07-04 10:54:15 +00:00
c58612ba12 added check for sys/param.h. 2007-07-04 09:01:40 +00:00
5a6af8adbc trial to catch problem with Daniels cross-mingw ares builds. 2007-07-03 18:18:40 +00:00
9837d91d68 added NetWare CLIB-own header to solve gcc warnings. 2007-07-03 16:21:57 +00:00
316c126447 few minor changes to make ares compile for NetWare CLIB architecture. 2007-07-03 16:00:36 +00:00
95a1092e59 changed to build for CLIB / LIBC. 2007-07-03 00:42:11 +00:00
c6a9531682 sync'd with lib makefile changes: use var for awk; fixed RECV* / SEND* defines; debug var can be overwritten; added better compiler path handling. 2007-07-02 18:50:18 +00:00
6295b70a7d start working on 1.4.1 curl-7_16_3 2007-06-08 09:01:33 +00:00