Commit Graph
61 Commits
Author SHA1 Message Date
Andreas Gustafsson 3eb5fc76b6 pullup: log message about strange socket error at ISC_LOG_ERROR level 2000-09-08 22:16:49 +00:00
Michael Graff 99a0688bec pullup for Andreas: TCP receives should never be retried 2000-09-08 22:09:13 +00:00
Brian Wellington e26e4f3891 pullup:
418.   [bug]           At debug levels >= 10, getting an unexpected
                        socket receive error would crash the server
                        while trying to log the error message.
2000-09-02 00:00:16 +00:00
Brian Wellington 317a9d3589 pullup:
330.   [func]          New function isc_log_wouldlog().

(note: #330 is out of place in CHANGES, because it's new in rc4, but if
it was in the place that 330 is supposed to go, no one would see it.  So,
leave it at the top)
2000-08-22 01:45:28 +00:00
David Lawrence 9c3531d72a add RCS id string 2000-06-22 22:00:42 +00:00
Michael Graff 8e7e1ef75b let the entropy source seed the pseudorandom source from _very_ bad sources like the time and the pid. Update the dispatcher to always expect success in these cases. 2000-06-21 22:12:23 +00:00
Michael Graff 80617c8faa Add using an entropy source to generate a random query ID seed value. 2000-06-21 21:34:43 +00:00
Mark Andrews 3c671ac666 264. [func] Dispatch can not take TCP sockets in connecting
state.  Set DNS_DISPATCHATTR_CONNECTED when calling
                        dns_dispatch_createtcp() for connected TCP sockets
                        or call dns_dispatch_starttcp() when the socket is
                        connected.
2000-06-20 23:52:54 +00:00
Michael Graff 8470db5b12 clean up ; remove unneeded function arguments 2000-06-20 17:24:47 +00:00
Andreas Gustafsson 8ed2c82a73 do not use initial caps in log messages 2000-06-16 15:51:58 +00:00
Michael Graff ce5bd92088 Store our own version of what type of socket we had, so we can clean up even after the socket is detached. 2000-06-16 00:52:05 +00:00
Andreas Gustafsson 11a91ac55e call isc_task_setname() on the dispatch tasks 2000-06-01 22:00:09 +00:00
David Lawrence cf479fdc6b removed unused static function violate_locking_hierarchy 2000-05-24 02:41:03 +00:00
Michael Graff 46993e1d9d Merge the mlg-20000518 branch onto the mainline. Change summary:
dns_dispatch_create() no longer exists.  dns_dispatch_createtcp()
	and dns_dispatch_getudp() are the replacements.  _createtcp() takes
	a bound, connected TCP socket, while _getudp() will search for
	a sharable UDP socket, and if found, attach to it and return a
	pointer to it.  If one is not found, it will create a udp socket,
	bind it to a supplied local address, and create a new dispatcher
	around it.

	dns_dispatch_remove{request,response}() no longer take the dispatch
	as an argument.

	query-source can now be set per view.

	The dispatch manager holds onto three memory pools, one for
	allocating dispatchers from, one for events, and one for
	requests/replies.  The free list on these pools is hard-coded,
	but set to 1024.  This keeps us from having to dig into the
	isc_mem_t the pools draw from as often.

	dns_resolver_create() and dns_view_createresolver() require that
	valid dispatchers be passed in; dispatchers are no longer created
	for the caller.
2000-05-19 21:46:46 +00:00
Andreas Gustafsson bbf6673828 use isc_sockaddr_format() instead of a static function doing
the same thing
2000-05-14 20:52:35 +00:00
David Lawrence 3d181bc9f1 needs string.h for memset() prototype. 2000-05-13 21:57:02 +00:00
Michael Graff b9c8f4378a Add address searching to dns_disptach_find(). 2000-05-11 07:33:17 +00:00
Michael Graff ca9739800f implement dns_dispatchmgr_t, replacing dns_dispatchlist_t. Use it throughout the library/server. 2000-05-10 21:34:50 +00:00
David Lawrence 1a69a1a78c Megacommit of dozens of files.
Cleanup of redundant/useless header file inclusion.

ISC style lint, primarily for function declarations and standalone
comments -- ie, those that appear on a line without any code, which
should be written as follows:
   /*
    * This is a comment.
    */
2000-05-08 14:38:29 +00:00
Michael Graff f6407f9a0b add print.h and string.h to files that need them 2000-05-02 16:36:22 +00:00
Michael Graff 20c266cbc9 add dispatcher logging functions 2000-04-29 00:45:26 +00:00
David Lawrence 32eddfc189 120. [cleanup] <isc/socket.h> does not need <isc/boolean.h>,
<isc/bufferlist.h>, <isc/task.h>, <isc/mem.h> or
                        <isc/net.h>.
2000-04-28 03:53:48 +00:00
David Lawrence 6e49e91bd0 103. [func] libisc buffer API changes for <isc/buffer.h>:
Added:
                                isc_buffer_base(b)          (pointer)
                                isc_buffer_current(b)       (pointer)
                                isc_buffer_active(b)        (pointer)
                                isc_buffer_used(b)          (pointer)
                                isc_buffer_length(b)            (int)
                                isc_buffer_usedlength(b)        (int)
                                isc_buffer_consumedlength(b)    (int)
                                isc_buffer_remaininglength(b)   (int)
                                isc_buffer_activelength(b)      (int)
                                isc_buffer_availablelength(b)   (int)
                        Removed:
                                ISC_BUFFER_USEDCOUNT(b)
                                ISC_BUFFER_AVAILABLECOUNT(b)
                                isc_buffer_type(b)
                        Changed names:
                                isc_buffer_used(b, r) ->
                                        isc_buffer_usedregion(b, r)
                                isc_buffer_available(b, r) ->
                                        isc_buffer_available_region(b, r)
                                isc_buffer_consumed(b, r) ->
                                        isc_buffer_consumedregion(b, r)
                                isc_buffer_active(b, r) ->
                                        isc_buffer_activeregion(b, r)
                                isc_buffer_remaining(b, r) ->
                                        isc_buffer_remainingregion(b, r)

                        Buffer types were removed, so the ISC_BUFFERTYPE_*
                        macros are no more, and the type argument to
                        isc_buffer_init and isc_buffer_allocate were removed.
                        isc_buffer_putstr is now void (instead of isc_result_t)
                        and requires that the caller ensure that there
                        is enough available buffer space for the string.
2000-04-27 00:03:12 +00:00
Michael Graff e44487bfc2 convert sender, arg, action, etc. to ev_sender, ev_arg, ev_action, etc. 2000-04-17 19:22:44 +00:00
Michael Graff 4195904998 s/DNS_R_/ISC_R_/ change for some codes. 2000-04-06 22:03:35 +00:00
Michael Graff ae8d0aedd6 implement pktinfo through dispatcher -> named client 2000-03-14 03:30:52 +00:00
Bob Halley 7d32c065c7 update copyright 2000-02-03 23:50:32 +00:00
Bob Halley 6da50be436 add missing exit checks to udp_recv and tcp_recv 2000-02-02 23:29:47 +00:00
Michael Graff 0941f35ad9 Start moving the dispatcher code to allow it to be used for wire format as well as for lightweight resolver daemon stuff. 2000-01-07 01:17:47 +00:00
Michael Graff 04458c8b5d fix a bug pointed out by Andreas -- don't detach from socket then use it. 2000-01-06 23:01:07 +00:00
Michael Graff 440be4c866 move util.h to <isc/util.h> 1999-12-16 22:24:22 +00:00
Michael Graff b8ef99c3a7 make the lfsr's real lfsr's, and use two of them to generate random-looking IDs 1999-12-16 00:07:21 +00:00
Michael Graff 607dc8013a make dispatcher hash sizes be primes, and provide an increment to help
resolve hash collisions
1999-12-15 17:14:52 +00:00
Michael Graff 0a9fedafec Use an LFSR to generate unpredictable IDs. 1999-12-15 03:11:00 +00:00
Michael Graff 6149906644 ipv6 changes 1999-12-04 01:27:44 +00:00
Bob Halley 3cd4668988 In tcp_recv(), free the event before calling destroy(), since the event is
a statically allocated part of the tcpmsg.
1999-11-16 21:05:09 +00:00
Michael Graff 233f59d933 put names on memory pools 1999-10-22 05:18:35 +00:00
Bob Halley 6d58c9b95e unsend 1999-10-07 19:38:39 +00:00
Bob Halley 271d5bfc5c conforming changes for task API simplification 1999-09-23 21:31:03 +00:00
Michael Graff 11e2a221f1 hack on socket code more, trying to track down a bug 1999-07-28 23:04:33 +00:00
Michael Graff d524cd03ec make the isc_socket_recv() partial flag be a byte count instead, which allows
us to say "read at least 2 bytes" for things like a DNS packet over TCP.
1999-07-28 21:30:37 +00:00
Michael Graff 6f1422b81e fix many bugs. 1999-07-22 01:34:31 +00:00
Michael Graff 3446e5e932 Don't allow responses/requests to be attached to dispatchers which are
shutting down
1999-07-14 22:16:19 +00:00
Bob Halley ef4b66d355 update isc_sockettype_t enum names 1999-07-13 01:49:33 +00:00
Michael Graff 2743e0ce08 s/dns_dispatch_destroy()/dns_dispatch_detach()/g 1999-07-13 00:25:21 +00:00
Michael Graff c6066a8e67 make this (mostly) work with tcp 1999-07-12 23:44:31 +00:00
Bob Halley 9db3eaed95 the event tag is now a void * 1999-07-10 00:55:07 +00:00
Michael Graff 04135883be cleanup a few return codes 1999-07-10 00:15:41 +00:00
Michael Graff 7f1bd55920 s/printf/XDEBUG()/g 1999-07-09 20:42:55 +00:00
Michael Graff bd7237e653 add another REQUIRE() where it might help 1999-07-09 20:34:26 +00:00