mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-31 06:25:31 +00:00
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.
This commit is contained in:
@@ -450,6 +450,7 @@ dns_view_createresolver(dns_view_t *view,
|
||||
view->attributes &= ~DNS_VIEWATTR_ADBSHUTDOWN;
|
||||
|
||||
result = dns_requestmgr_create(view->mctx, timermgr, socketmgr,
|
||||
dns_resolver_taskmgr(view->resolver),
|
||||
dns_resolver_dispatchmgr(view->resolver),
|
||||
dns_resolver_dispatchv4(view->resolver),
|
||||
dns_resolver_dispatchv6(view->resolver),
|
||||
|
Reference in New Issue
Block a user