2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 14:07:59 +00:00
Commit Graph

139 Commits

Author SHA1 Message Date
Andreas Gustafsson
76a191c420 failures at certain points in request processing could cause
the assertion INSIST(client->lockview == NULL) to be triggered
2000-05-26 22:43:36 +00:00
Andreas Gustafsson
1c628a47a5 failure in sending response to client was not logged 2000-05-22 16:03:31 +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
b5d263a378 line 1369: warning(1185): enumerated type mixed with another type:
ISC_TF() added to the return value of an isc_boolean_t function.
2000-05-14 04:02:10 +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
Andreas Gustafsson
03384e7070 style 2000-05-02 01:16:21 +00:00
Andreas Gustafsson
82ca33427b declare arguments as UNUSED() when used in assertions only 2000-04-28 01:24:18 +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
Andreas Gustafsson
8378b720cd issue 'closetcp' trace message only if a TCP connection
was actually open
2000-04-20 17:07:46 +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
Bob Halley
738b9aa3de isc_task_create() API change 2000-04-12 01:41:21 +00:00
Michael Graff
7e2c8092db Include <isc/print.h> to get proper definition of vsnprintf() on machines which don't have it. 2000-04-07 19:17:33 +00:00
Andreas Gustafsson
a672bfbee4 wired up view options: allow-query, allow-recursion, allow-transfer 2000-04-06 23:59:19 +00:00
Michael Graff
4195904998 s/DNS_R_/ISC_R_/ change for some codes. 2000-04-06 22:03:35 +00:00
Andreas Gustafsson
a895e8e779 wired up view options: recursion, auth-nxdomain, transfer-format;
fixed failure to obey the 'recursion' option
2000-04-06 20:26:39 +00:00
Andreas Gustafsson
4caf4e9b8b added view matching 2000-04-06 17:29:47 +00:00
Andreas Gustafsson
8f804834e2 moved logging typedefs from <isc/log.h> to <isc/types.h> 2000-04-04 20:09:05 +00:00
Andreas Gustafsson
60c83e9d7c added ns_client_log(); use it when logging client
messages
2000-04-04 18:28:51 +00:00
Bob Halley
60771bb1b4 When making an OPT RR, initialize rdata's type and rdclass fields to avoid
triggering an assertion.
Add definitions for CTRACE and MTRACE of NS_CLIENT_TRACE is not defined.
2000-03-29 18:57:36 +00:00
Michael Graff
0a48eff8c7 remove debugging printf that stuck in 2000-03-28 00:09:28 +00:00
Michael Graff
ae8d0aedd6 implement pktinfo through dispatcher -> named client 2000-03-14 03:30:52 +00:00
Andreas Gustafsson
443b9e6e51 TCP client objects in excess of quota were recycled
too early, at the end of the request, instead of being kept around to serve
subsequent requests on the same TCP connection and recycled only when the
connection is closed (RT #66)
2000-03-06 17:35:13 +00:00
Andreas Gustafsson
3eef7eaba0 renamed dns_acl_checkrequest() to ns_client_checkacl()
and moved it to bin/named/client.c to reflect the fact that it
implemented BIND ACL policy more than general-purpose library
functionality; resolve ACL defaults at configuration time
rather than when the ACL is evaluated
2000-02-22 21:24:24 +00:00
Andreas Gustafsson
377333ac58 include peer address when logging TCP connections and
client requests
2000-02-17 18:18:24 +00:00
Andreas Gustafsson
d18d98734f implemented client timeouts; made outgoing zone transfers
use the client timers instead of creating their own
2000-02-14 23:56:47 +00:00
Andreas Gustafsson
ae0bc2f30e Make client reference counts work the same way as all
other reference counts: replace ns_client_wait() and
ns_client_unwait() by ns_client_attach() and ns_client_detach(),
respectively
2000-02-11 20:56:19 +00:00
Andreas Gustafsson
e5f8f2659b yet another major reorganization of client shutdown
procedures, in preparation for client timeouts
2000-02-10 22:16:56 +00:00
Andreas Gustafsson
66142ee20a client leaked socket if shutdown was in progress when
accept completed
2000-02-10 00:28:36 +00:00
Andreas Gustafsson
a174757026 implemented the 'localhost' and 'localnets' ACLs 2000-02-09 22:59:40 +00:00
Andreas Gustafsson
106003e7b4 added missing break statement after iquery case 2000-02-04 00:46:58 +00:00
Bob Halley
7d98a1783f update copyrights 2000-02-03 22:29:57 +00:00
Andreas Gustafsson
bd1dfb7939 removed overzealous INSIST() 2000-01-31 19:53:44 +00:00
Andreas Gustafsson
9c7ea152ca When a client object has served its purpose and is not
needed to listen for new requests, do not shut it down.  Instead,
wait for pending sends to finish and then store it on a linked
list of inactive client objects for later reuse.
2000-01-28 23:35:53 +00:00
Andreas Gustafsson
143c2d39fa configuration locking checkpoint 2000-01-27 01:00:16 +00:00
Andreas Gustafsson
d0449759c6 typo 2000-01-26 00:41:40 +00:00
Andreas Gustafsson
1242c7b4aa missing exit check in client_senddone() 2000-01-25 19:36:13 +00:00
Bob Halley
e485d16462 name tasks 2000-01-25 19:31:23 +00:00
Brian Wellington
651a38a706 If a query is for type ANY, match the first view that otherwise matches. 2000-01-24 21:29:12 +00:00
Brian Wellington
bf08eb90e4 use the new TSIG/TKEY code 2000-01-21 20:24:49 +00:00
Andreas Gustafsson
4702aa0b47 detach from view early in client destruction so that the resolver
can start shutting down immediately instead of only after recursions in
progress have finished
2000-01-19 22:03:58 +00:00
Bob Halley
6cff00c8e1 cancel the correct socket. 2000-01-19 00:50:42 +00:00
Bob Halley
13886f5d45 eliminate compiler warning 2000-01-18 18:16:34 +00:00
Andreas Gustafsson
d468db05b3 client manager cleanup could access freed memory 2000-01-18 18:07:07 +00:00
Andreas Gustafsson
e57d7e30f1 merged the two functions ns_clientmgr_addtodispatch() and
ns_clientmgr_accepttcp() into a new single function,
ns_clientmgr_createclients()
2000-01-17 23:48:15 +00:00
Andreas Gustafsson
ff03559f14 client can now reserve multiple types of quota simultaneously;
removed unused clienttype argument; client quota bug fixes
2000-01-15 00:36:26 +00:00
Andreas Gustafsson
0c32f6b044 added shutdown callback to client object;
used it to abort outgoing zone transfers on client shutdown
2000-01-12 18:01:12 +00:00
Andreas Gustafsson
559b10cc8f client quotas; added reference counting to ns_interface_t
and ns_interfacemgr_t so that they can safely hold quota information
2000-01-11 21:18:22 +00:00
Andreas Gustafsson
08d93839d7 support multiple simultaneous clients by creating new
client objects in place of busy ones, in preparation for client quotas
2000-01-07 19:20:25 +00:00
Andreas Gustafsson
efc3180a0e INSIST that there are no outstanding reads when
destroying tcpmsg; update comments accordingly
2000-01-06 18:25:08 +00:00