]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Clean up the dns_dispatch_getudp API
authorOndřej Surý <ondrej@sury.org>
Wed, 12 May 2021 21:27:15 +0000 (23:27 +0200)
committerOndřej Surý <ondrej@sury.org>
Fri, 9 Jul 2021 13:58:02 +0000 (15:58 +0200)
Cleanup unused parts of dns_dispatch_getudp API, remove
dns_dispatch_getudp_dup() function and related code.

13 files changed:
bin/named/server.c
bin/nsupdate/nsupdate.c
bin/tests/system/pipelined/pipequeries.c
bin/tests/system/tkey/keycreate.c
bin/tests/system/tkey/keydelete.c
bin/tools/mdig.c
lib/dns/client.c
lib/dns/dispatch.c
lib/dns/include/dns/dispatch.h
lib/dns/request.c
lib/dns/resolver.c
lib/dns/tests/dispatch_test.c
lib/dns/tests/resolver_test.c

index d444e38f2000792a783abb16f61abb97f812ba29..adff7f55ccd1128ffc2ab917f344d06a012eb1b3 100644 (file)
@@ -1260,7 +1260,7 @@ get_view_querysource_dispatch(const cfg_obj_t **maps, int af,
        isc_result_t result = ISC_R_FAILURE;
        dns_dispatch_t *disp;
        isc_sockaddr_t sa;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        const cfg_obj_t *obj = NULL;
        unsigned int maxdispatchbuffers = UDPBUFFERS;
        isc_dscp_t dscp = -1;
@@ -1331,17 +1331,10 @@ get_view_querysource_dispatch(const cfg_obj_t **maps, int af,
                }
        }
 
-       attrmask = 0;
-       attrmask |= DNS_DISPATCHATTR_UDP;
-       attrmask |= DNS_DISPATCHATTR_TCP;
-       attrmask |= DNS_DISPATCHATTR_IPV4;
-       attrmask |= DNS_DISPATCHATTR_IPV6;
-
        disp = NULL;
-       result = dns_dispatch_getudp(named_g_dispatchmgr, named_g_socketmgr,
-                                    named_g_taskmgr, &sa, 4096,
-                                    maxdispatchbuffers, 32768, 16411, 16433,
-                                    attrs, attrmask, &disp);
+       result = dns_dispatch_getudp(
+               named_g_dispatchmgr, named_g_socketmgr, named_g_taskmgr, &sa,
+               4096, maxdispatchbuffers, 32768, 16411, 16433, attrs, &disp);
        if (result != ISC_R_SUCCESS) {
                isc_sockaddr_t any;
                char buf[ISC_SOCKADDR_FORMATSIZE];
@@ -10514,7 +10507,7 @@ named_add_reserved_dispatch(named_server_t *server,
        in_port_t port;
        char addrbuf[ISC_SOCKADDR_FORMATSIZE];
        isc_result_t result;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
 
        REQUIRE(NAMED_SERVER_VALID(server));
 
@@ -10554,16 +10547,11 @@ named_add_reserved_dispatch(named_server_t *server,
                result = ISC_R_NOTIMPLEMENTED;
                goto cleanup;
        }
-       attrmask = 0;
-       attrmask |= DNS_DISPATCHATTR_UDP;
-       attrmask |= DNS_DISPATCHATTR_TCP;
-       attrmask |= DNS_DISPATCHATTR_IPV4;
-       attrmask |= DNS_DISPATCHATTR_IPV6;
 
        result = dns_dispatch_getudp(named_g_dispatchmgr, named_g_socketmgr,
                                     named_g_taskmgr, &dispatch->addr, 4096,
                                     UDPBUFFERS, 32768, 16411, 16433, attrs,
-                                    attrmask, &dispatch->dispatch);
+                                    &dispatch->dispatch);
        if (result != ISC_R_SUCCESS) {
                goto cleanup;
        }
index 16be26a7facf110adf59d60fdb432dab1a279690..dfe4721be7737005edfeef70916b090e5c1bc192 100644 (file)
@@ -804,7 +804,7 @@ static void
 setup_system(void) {
        isc_result_t result;
        isc_sockaddr_t bind_any, bind_any6;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        isc_sockaddrlist_t *nslist;
        isc_logconfig_t *logconfig = NULL;
        irs_resconf_t *resconf = NULL;
@@ -939,9 +939,6 @@ setup_system(void) {
 
        set_source_ports(dispatchmgr);
 
-       attrmask = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_TCP;
-       attrmask |= DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_IPV6;
-
        if (have_ipv6) {
                attrs = DNS_DISPATCHATTR_UDP;
                attrs |= DNS_DISPATCHATTR_MAKEQUERY;
@@ -949,7 +946,7 @@ setup_system(void) {
                isc_sockaddr_any6(&bind_any6);
                result = dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr,
                                             &bind_any6, PACKETSIZE, 4, 2, 3, 5,
-                                            attrs, attrmask, &dispatchv6);
+                                            attrs, &dispatchv6);
                check_result(result, "dns_dispatch_getudp (v6)");
        }
 
@@ -960,7 +957,7 @@ setup_system(void) {
                isc_sockaddr_any(&bind_any);
                result = dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr,
                                             &bind_any, PACKETSIZE, 4, 2, 3, 5,
-                                            attrs, attrmask, &dispatchv4);
+                                            attrs, &dispatchv4);
                check_result(result, "dns_dispatch_getudp (v4)");
        }
 
index c96afd16e73a3b9c662fa6b6c5c11619ab5c96b4..b4595c7eff8add80245c604d01ab8eb5a074f50c 100644 (file)
@@ -211,7 +211,7 @@ main(int argc, char *argv[]) {
        isc_timermgr_t *timermgr = NULL;
        isc_socketmgr_t *socketmgr = NULL;
        dns_dispatchmgr_t *dispatchmgr = NULL;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        dns_dispatch_t *dispatchv4;
        dns_view_t *view;
        uint16_t port = PORT;
@@ -284,12 +284,10 @@ main(int argc, char *argv[]) {
 
        attrs = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_MAKEQUERY |
                DNS_DISPATCHATTR_IPV4;
-       attrmask = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_TCP |
-                  DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_IPV6;
        dispatchv4 = NULL;
        RUNCHECK(dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr,
                                     have_src ? &srcaddr : &bind_any, 4096, 4,
-                                    2, 3, 5, attrs, attrmask, &dispatchv4));
+                                    2, 3, 5, attrs, &dispatchv4));
        requestmgr = NULL;
        RUNCHECK(dns_requestmgr_create(mctx, timermgr, socketmgr, taskmgr,
                                       dispatchmgr, dispatchv4, NULL,
index b72b38056a4f4be2465619b0b33c4744ddfcf152..291c8618671c343e80df83ec27ee9338863a59c4 100644 (file)
@@ -198,7 +198,7 @@ main(int argc, char *argv[]) {
        isc_timermgr_t *timermgr = NULL;
        isc_socketmgr_t *socketmgr = NULL;
        isc_socket_t *sock = NULL;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        isc_sockaddr_t bind_any;
        dns_dispatchmgr_t *dispatchmgr = NULL;
        dns_dispatch_t *dispatchv4 = NULL;
@@ -245,12 +245,9 @@ main(int argc, char *argv[]) {
        isc_sockaddr_any(&bind_any);
        attrs = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_MAKEQUERY |
                DNS_DISPATCHATTR_IPV4;
-       attrmask = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_TCP |
-                  DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_IPV6;
        dispatchv4 = NULL;
        RUNCHECK(dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr, &bind_any,
-                                    4096, 4, 2, 3, 5, attrs, attrmask,
-                                    &dispatchv4));
+                                    4096, 4, 2, 3, 5, attrs, &dispatchv4));
        requestmgr = NULL;
        RUNCHECK(dns_requestmgr_create(mctx, timermgr, socketmgr, taskmgr,
                                       dispatchmgr, dispatchv4, NULL,
index 891b9cd04f3c7d526e3c2ac2334f2b1048bb29e0..5871e120329d76ba120f73d5ea0875ecb20ff6b1 100644 (file)
@@ -142,7 +142,7 @@ main(int argc, char **argv) {
        isc_timermgr_t *timermgr = NULL;
        isc_socketmgr_t *socketmgr = NULL;
        isc_socket_t *sock = NULL;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        isc_sockaddr_t bind_any;
        dns_dispatchmgr_t *dispatchmgr = NULL;
        dns_dispatch_t *dispatchv4 = NULL;
@@ -188,12 +188,9 @@ main(int argc, char **argv) {
        isc_sockaddr_any(&bind_any);
        attrs = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_MAKEQUERY |
                DNS_DISPATCHATTR_IPV4;
-       attrmask = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_TCP |
-                  DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_IPV6;
        dispatchv4 = NULL;
        RUNCHECK(dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr, &bind_any,
-                                    4096, 4, 2, 3, 5, attrs, attrmask,
-                                    &dispatchv4));
+                                    4096, 4, 2, 3, 5, attrs, &dispatchv4));
        requestmgr = NULL;
        RUNCHECK(dns_requestmgr_create(mctx, timermgr, socketmgr, taskmgr,
                                       dispatchmgr, dispatchv4, NULL,
index 0052916977bb62dfaa9a21a06fbcdb66972eccb9..e2ca8ca0f0d4cc1ec8d0d13b282cb3eaa9b193ea 100644 (file)
@@ -2071,7 +2071,7 @@ main(int argc, char *argv[]) {
        isc_timermgr_t *timermgr = NULL;
        isc_socketmgr_t *socketmgr = NULL;
        dns_dispatchmgr_t *dispatchmgr = NULL;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        dns_dispatch_t *dispatchvx = NULL;
        dns_view_t *view = NULL;
        int ns;
@@ -2139,14 +2139,10 @@ main(int argc, char *argv[]) {
                isc_sockaddr_any6(&bind_any);
                attrs |= DNS_DISPATCHATTR_IPV6;
        }
-       attrmask = DNS_DISPATCHATTR_UDP | DNS_DISPATCHATTR_TCP |
-                  DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_IPV6;
        dispatchvx = NULL;
        RUNCHECK(dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr,
                                     have_src ? &srcaddr : &bind_any, 4096, 100,
-                                    100, 17, 19, attrs, attrmask,
-                                    &dispatchvx));
-
+                                    100, 17, 19, attrs, &dispatchvx));
        RUNCHECK(dns_requestmgr_create(
                mctx, timermgr, socketmgr, taskmgr, dispatchmgr,
                have_ipv4 ? dispatchvx : NULL, have_ipv6 ? dispatchvx : NULL,
index f3eb236fb805abad5b1240474864361a35dea3c6..88244727f1b7a103ee09eef92e482df315c6d85e 100644 (file)
@@ -201,7 +201,7 @@ getudpdispatch(int family, dns_dispatchmgr_t *dispatchmgr,
               isc_socketmgr_t *socketmgr, isc_taskmgr_t *taskmgr,
               bool is_shared, dns_dispatch_t **dispp,
               const isc_sockaddr_t *localaddr) {
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
        dns_dispatch_t *disp;
        unsigned buffersize, maxbuffers, maxrequests, buckets, increment;
        isc_result_t result;
@@ -220,11 +220,6 @@ getudpdispatch(int family, dns_dispatchmgr_t *dispatchmgr,
                INSIST(0);
                ISC_UNREACHABLE();
        }
-       attrmask = 0;
-       attrmask |= DNS_DISPATCHATTR_UDP;
-       attrmask |= DNS_DISPATCHATTR_TCP;
-       attrmask |= DNS_DISPATCHATTR_IPV4;
-       attrmask |= DNS_DISPATCHATTR_IPV6;
 
        if (localaddr == NULL) {
                isc_sockaddr_anyofpf(&anyaddr, family);
@@ -240,8 +235,7 @@ getudpdispatch(int family, dns_dispatchmgr_t *dispatchmgr,
        disp = NULL;
        result = dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr, localaddr,
                                     buffersize, maxbuffers, maxrequests,
-                                    buckets, increment, attrs, attrmask,
-                                    &disp);
+                                    buckets, increment, attrs, &disp);
        if (result == ISC_R_SUCCESS) {
                *dispp = disp;
        }
index 168dc37fa12de11210658afcc57b90596aaa5047..177695184ea3aaffbfa13987fa17dea8f6b812e9 100644 (file)
@@ -1991,101 +1991,6 @@ unlock:
 
 #define ATTRMATCH(_a1, _a2, _mask) (((_a1) & (_mask)) == ((_a2) & (_mask)))
 
-static bool
-local_addr_match(dns_dispatch_t *disp, const isc_sockaddr_t *addr) {
-       isc_sockaddr_t sockaddr;
-       isc_result_t result;
-
-       REQUIRE(disp->socket != NULL);
-
-       if (addr == NULL) {
-               return (true);
-       }
-
-       /*
-        * Don't match wildcard ports unless the port is available in the
-        * current configuration.
-        */
-       if (isc_sockaddr_getport(addr) == 0 &&
-           isc_sockaddr_getport(&disp->local) == 0 &&
-           !portavailable(disp->mgr, disp->socket, NULL))
-       {
-               return (false);
-       }
-
-       /*
-        * Check if we match the binding <address,port>.
-        * Wildcard ports match/fail here.
-        */
-       if (isc_sockaddr_equal(&disp->local, addr)) {
-               return (true);
-       }
-       if (isc_sockaddr_getport(addr) == 0) {
-               return (false);
-       }
-
-       /*
-        * Check if we match a bound wildcard port <address,port>.
-        */
-       if (!isc_sockaddr_eqaddr(&disp->local, addr)) {
-               return (false);
-       }
-       result = isc_socket_getsockname(disp->socket, &sockaddr);
-       if (result != ISC_R_SUCCESS) {
-               return (false);
-       }
-
-       return (isc_sockaddr_equal(&sockaddr, addr));
-}
-
-/*
- * Requires mgr be locked.
- *
- * No dispatcher can be locked by this thread when calling this function.
- *
- *
- * NOTE:
- *     If a matching dispatcher is found, it is locked after this function
- *     returns, and must be unlocked by the caller.
- */
-static isc_result_t
-dispatch_find(dns_dispatchmgr_t *mgr, const isc_sockaddr_t *local,
-             unsigned int attributes, unsigned int mask,
-             dns_dispatch_t **dispp) {
-       dns_dispatch_t *disp;
-       isc_result_t result;
-
-       /*
-        * Make certain that we will not match a private or exclusive dispatch.
-        */
-       attributes &= ~(DNS_DISPATCHATTR_PRIVATE | DNS_DISPATCHATTR_EXCLUSIVE);
-       mask |= (DNS_DISPATCHATTR_PRIVATE | DNS_DISPATCHATTR_EXCLUSIVE);
-
-       disp = ISC_LIST_HEAD(mgr->list);
-       while (disp != NULL) {
-               LOCK(&disp->lock);
-               if ((disp->shutting_down == 0) &&
-                   ATTRMATCH(disp->attributes, attributes, mask) &&
-                   local_addr_match(disp, local))
-               {
-                       break;
-               }
-               UNLOCK(&disp->lock);
-               disp = ISC_LIST_NEXT(disp, link);
-       }
-
-       if (disp == NULL) {
-               result = ISC_R_NOTFOUND;
-               goto out;
-       }
-
-       *dispp = disp;
-       result = ISC_R_SUCCESS;
-out:
-
-       return (result);
-}
-
 static isc_result_t
 qid_allocate(dns_dispatchmgr_t *mgr, unsigned int buckets,
             unsigned int increment, dns_qid_t **qidp, bool needsocktable) {
@@ -2450,13 +2355,12 @@ dns_dispatch_gettcp(dns_dispatchmgr_t *mgr, const isc_sockaddr_t *destaddr,
 }
 
 isc_result_t
-dns_dispatch_getudp_dup(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
-                       isc_taskmgr_t *taskmgr, const isc_sockaddr_t *localaddr,
-                       unsigned int buffersize, unsigned int maxbuffers,
-                       unsigned int maxrequests, unsigned int buckets,
-                       unsigned int increment, unsigned int attributes,
-                       unsigned int mask, dns_dispatch_t **dispp,
-                       dns_dispatch_t *dup_dispatch) {
+dns_dispatch_getudp(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
+                   isc_taskmgr_t *taskmgr, const isc_sockaddr_t *localaddr,
+                   unsigned int buffersize, unsigned int maxbuffers,
+                   unsigned int maxrequests, unsigned int buckets,
+                   unsigned int increment, unsigned int attributes,
+                   dns_dispatch_t **dispp) {
        isc_result_t result;
        dns_dispatch_t *disp = NULL;
 
@@ -2484,46 +2388,12 @@ dns_dispatch_getudp_dup(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
                goto createudp;
        }
 
-       /*
-        * See if we have a dispatcher that matches.
-        */
-       if (dup_dispatch == NULL) {
-               result = dispatch_find(mgr, localaddr, attributes, mask, &disp);
-               if (result == ISC_R_SUCCESS) {
-                       disp->refcount++;
-
-                       if (disp->maxrequests < maxrequests) {
-                               disp->maxrequests = maxrequests;
-                       }
-
-                       if ((disp->attributes & DNS_DISPATCHATTR_NOLISTEN) ==
-                                   0 &&
-                           (attributes & DNS_DISPATCHATTR_NOLISTEN) != 0)
-                       {
-                               disp->attributes |= DNS_DISPATCHATTR_NOLISTEN;
-                               if (disp->recv_pending != 0) {
-                                       isc_socket_cancel(disp->socket,
-                                                         disp->task[0],
-                                                         ISC_SOCKCANCEL_RECV);
-                               }
-                       }
-
-                       UNLOCK(&disp->lock);
-                       UNLOCK(&mgr->lock);
-
-                       *dispp = disp;
-
-                       return (ISC_R_SUCCESS);
-               }
-       }
-
 createudp:
        /*
         * Nope, create one.
         */
-       result = dispatch_createudp(
-               mgr, sockmgr, taskmgr, localaddr, maxrequests, attributes,
-               &disp, dup_dispatch == NULL ? NULL : dup_dispatch->socket);
+       result = dispatch_createudp(mgr, sockmgr, taskmgr, localaddr,
+                                   maxrequests, attributes, &disp, NULL);
 
        if (result != ISC_R_SUCCESS) {
                UNLOCK(&mgr->lock);
@@ -2536,19 +2406,6 @@ createudp:
        return (ISC_R_SUCCESS);
 }
 
-isc_result_t
-dns_dispatch_getudp(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
-                   isc_taskmgr_t *taskmgr, const isc_sockaddr_t *localaddr,
-                   unsigned int buffersize, unsigned int maxbuffers,
-                   unsigned int maxrequests, unsigned int buckets,
-                   unsigned int increment, unsigned int attributes,
-                   unsigned int mask, dns_dispatch_t **dispp) {
-       return (dns_dispatch_getudp_dup(mgr, sockmgr, taskmgr, localaddr,
-                                       buffersize, maxbuffers, maxrequests,
-                                       buckets, increment, attributes, mask,
-                                       dispp, NULL));
-}
-
 /*
  * mgr should be locked.
  */
index c82b6c6ce4785f0fd420e71d9564c9e2b666a622..8ed9601d16b0fbc3a514842e4d62829276b4e17c 100644 (file)
@@ -229,16 +229,7 @@ dns_dispatch_getudp(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
                    unsigned int buffersize, unsigned int maxbuffers,
                    unsigned int maxrequests, unsigned int buckets,
                    unsigned int increment, unsigned int attributes,
-                   unsigned int mask, dns_dispatch_t **dispp);
-
-isc_result_t
-dns_dispatch_getudp_dup(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
-                       isc_taskmgr_t *taskmgr, const isc_sockaddr_t *localaddr,
-                       unsigned int buffersize, unsigned int maxbuffers,
-                       unsigned int maxrequests, unsigned int buckets,
-                       unsigned int increment, unsigned int attributes,
-                       unsigned int mask, dns_dispatch_t **dispp,
-                       dns_dispatch_t *dup);
+                   dns_dispatch_t **dispp);
 /*%<
  * Attach to existing dns_dispatch_t if one is found with dns_dispatchmgr_find,
  * otherwise create a new UDP dispatch.
index f2c3d3d94ddf216cd05ed2f9be5609dcf6127511..1311de4027e5248e0f913f463ae42195208f19e3 100644 (file)
@@ -593,7 +593,7 @@ static isc_result_t
 find_udp_dispatch(dns_requestmgr_t *requestmgr, const isc_sockaddr_t *srcaddr,
                  const isc_sockaddr_t *destaddr, dns_dispatch_t **dispatchp) {
        dns_dispatch_t *disp = NULL;
-       unsigned int attrs, attrmask;
+       unsigned int attrs;
 
        if (srcaddr == NULL) {
                switch (isc_sockaddr_pf(destaddr)) {
@@ -628,15 +628,10 @@ find_udp_dispatch(dns_requestmgr_t *requestmgr, const isc_sockaddr_t *srcaddr,
        default:
                return (ISC_R_NOTIMPLEMENTED);
        }
-       attrmask = 0;
-       attrmask |= DNS_DISPATCHATTR_UDP;
-       attrmask |= DNS_DISPATCHATTR_TCP;
-       attrmask |= DNS_DISPATCHATTR_IPV4;
-       attrmask |= DNS_DISPATCHATTR_IPV6;
        return (dns_dispatch_getudp(requestmgr->dispatchmgr,
                                    requestmgr->socketmgr, requestmgr->taskmgr,
                                    srcaddr, 4096, 32768, 32768, 16411, 16433,
-                                   attrs, attrmask, dispatchp));
+                                   attrs, dispatchp));
 }
 
 static isc_result_t
index 9772ae2628ac4cb3973761157a5a23b279c899f2..847ead38a856ae560c2b3b5ab1dc90e62e323159 100644 (file)
@@ -2158,7 +2158,7 @@ fctx_query(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo,
                 */
        } else {
                if (have_addr) {
-                       unsigned int attrs, attrmask;
+                       unsigned int attrs;
                        attrs = DNS_DISPATCHATTR_UDP;
                        switch (isc_sockaddr_pf(&addr)) {
                        case AF_INET:
@@ -2173,14 +2173,10 @@ fctx_query(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo,
                                result = ISC_R_NOTIMPLEMENTED;
                                goto cleanup_query;
                        }
-                       attrmask = DNS_DISPATCHATTR_UDP;
-                       attrmask |= DNS_DISPATCHATTR_TCP;
-                       attrmask |= DNS_DISPATCHATTR_IPV4;
-                       attrmask |= DNS_DISPATCHATTR_IPV6;
                        result = dns_dispatch_getudp(
                                res->dispatchmgr, res->socketmgr, res->taskmgr,
                                &addr, 4096, 20000, 32768, 16411, 16433, attrs,
-                               attrmask, &query->dispatch);
+                               &query->dispatch);
                        if (result != ISC_R_SUCCESS) {
                                goto cleanup_query;
                        }
index 05fd4c59d29f83e393f85102c83222043ba44882..a425091bf68879ec80ba612f9691edfeffdcccc1 100644 (file)
@@ -77,7 +77,7 @@ make_dispatchset(unsigned int ndisps) {
        isc_sockaddr_any(&any);
        attrs = DNS_DISPATCHATTR_IPV4 | DNS_DISPATCHATTR_UDP;
        result = dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr, &any, 512,
-                                    6, 1024, 17, 19, attrs, attrs, &disp);
+                                    6, 1024, 17, 19, attrs, &disp);
        if (result != ISC_R_SUCCESS) {
                return (result);
        }
index 66f7c96b834f975814fd0a02a9c9da4e5dfd3d5e..c115c34d8cec87969c6b0bbea455e76ece5b8b8e 100644 (file)
@@ -58,7 +58,7 @@ _setup(void **state) {
 
        isc_sockaddr_any(&local);
        result = dns_dispatch_getudp(dispatchmgr, socketmgr, taskmgr, &local,
-                                    4096, 100, 100, 100, 500, 0, 0, &dispatch);
+                                    4096, 100, 100, 100, 500, 0, &dispatch);
        assert_int_equal(result, ISC_R_SUCCESS);
 
        return (0);