Lines Matching +defs:find +defs:file
10 * file, you can obtain one at https://mozilla.org/MPL/2.0/.
12 * See the COPYRIGHT file distributed with this work for additional
16 /*! \file */
377 dns_adbfind_t *find;
707 const char *file, unsigned int line);
757 * - Scan the answer section to find records that are responsive to the
1103 dns_adbfind_t *find = NULL;
1244 for (find = ISC_LIST_HEAD(fctx->finds); find != NULL;
1245 find = ISC_LIST_NEXT(find, publink))
1247 for (addrinfo = ISC_LIST_HEAD(find->list);
1267 for (find = ISC_LIST_HEAD(fctx->altfinds); find != NULL;
1268 find = ISC_LIST_NEXT(find, publink))
1270 for (addrinfo = ISC_LIST_HEAD(find->list);
1301 dns_adbfind_t *find = NULL, *next_find = NULL;
1306 for (find = ISC_LIST_HEAD(fctx->finds); find != NULL; find = next_find)
1308 next_find = ISC_LIST_NEXT(find, publink);
1309 ISC_LIST_UNLINK(fctx->finds, find, publink);
1310 dns_adb_destroyfind(&find);
1313 fctx->find = NULL;
1315 for (find = ISC_LIST_HEAD(fctx->altfinds); find != NULL;
1316 find = next_find)
1318 next_find = ISC_LIST_NEXT(find, publink);
1319 ISC_LIST_UNLINK(fctx->altfinds, find, publink);
1320 dns_adb_destroyfind(&find);
1651 const char *file, unsigned int line) {
1661 fprintf(stderr, "%s:%s:%s:%u:(%p): %s\n", __func__, func, file, line,
1664 UNUSED(file);
2890 dns_adbfind_t *find = (dns_adbfind_t *)arg;
2891 fetchctx_t *fctx = (fetchctx_t *)find->cbarg;
2911 if (dns_adb_findstatus(find) == DNS_ADB_MOREADDRESSES) {
2930 dns_adb_destroyfind(&find);
3126 sort_adbfind(dns_adbfind_t *find, unsigned int bias) {
3132 while (!ISC_LIST_EMPTY(find->list)) {
3134 best = ISC_LIST_HEAD(find->list);
3151 ISC_LIST_UNLINK(find->list, best, publink);
3154 find->list = sorted;
3166 /* Sort each find's addrinfo list by SRTT. */
3206 * Return true iff the ADB find has a pending fetch for 'type'. This is
3207 * used to find out whether we're in a loop, where a fetch is waiting for a
3208 * find which is waiting for that same fetch.
3217 * However, using a bit check means that in theory, an ADB find might be
3222 * query, and since an ADB find with two pending fetches is a very rare
3227 waiting_for(dns_adbfind_t *find, dns_rdatatype_t type) {
3230 return (find->query_pending & DNS_ADBFIND_INET) != 0;
3232 return (find->query_pending & DNS_ADBFIND_INET6) != 0;
3243 dns_adbfind_t *find = NULL;
3276 fctx->qc, &find);
3290 dns_adb_destroyfind(&find);
3303 if (!ISC_LIST_EMPTY(find->list)) {
3308 INSIST((find->options & DNS_ADBFIND_WANTEVENT) == 0);
3310 for (ai = ISC_LIST_HEAD(find->list); ai != NULL;
3321 ISC_LIST_APPEND(fctx->altfinds, find, publink);
3323 ISC_LIST_APPEND(fctx->finds, find, publink);
3331 * The find may be waiting on a resolver fetch for a server
3336 if (waiting_for(find, fctx->type) && dns_name_equal(name, fctx->name)) {
3342 if ((find->options & DNS_ADBFIND_WANTEVENT) != 0) {
3344 dns_adb_cancelfind(find);
3346 dns_adb_destroyfind(&find);
3354 * we'll get an event later when the find has what it needs.
3356 if ((find->options & DNS_ADBFIND_WANTEVENT) != 0) {
3364 find->result_v6 != DNS_R_NXDOMAIN) ||
3366 find->result_v4 != DNS_R_NXDOMAIN)))
3377 * No addresses and no pending events: the find failed.
3379 if ((find->options & DNS_ADBFIND_OVERQUOTA) != 0) {
3393 ((res->dispatches4 == NULL && find->result_v6 == DNS_R_NXRRSET) ||
3394 (res->dispatches6 == NULL && find->result_v4 == DNS_R_NXRRSET)))
3398 dns_adb_destroyfind(&find);
3805 dns_adbfind_t *find, *start;
3825 fctx->find = NULL;
3841 * No forwarders. Move to the next find.
3846 find = fctx->find;
3847 if (find == NULL) {
3848 find = ISC_LIST_HEAD(fctx->finds);
3850 find = ISC_LIST_NEXT(find, publink);
3851 if (find == NULL) {
3852 find = ISC_LIST_HEAD(fctx->finds);
3860 if (find != NULL) {
3861 start = find;
3863 for (addrinfo = ISC_LIST_HEAD(find->list);
3879 find = ISC_LIST_NEXT(find, publink);
3880 if (find == NULL) {
3881 find = ISC_LIST_HEAD(fctx->finds);
3883 } while (find != start);
3886 fctx->find = find;
3897 find = fctx->altfind;
3898 if (find == NULL) {
3899 find = ISC_LIST_HEAD(fctx->altfinds);
3901 find = ISC_LIST_NEXT(find, publink);
3902 if (find == NULL) {
3903 find = ISC_LIST_HEAD(fctx->altfinds);
3911 if (find != NULL) {
3912 start = find;
3914 for (addrinfo = ISC_LIST_HEAD(find->list);
3930 find = ISC_LIST_NEXT(find, publink);
3931 if (find == NULL) {
3932 find = ISC_LIST_HEAD(fctx->altfinds);
3934 } while (find != start);
3963 fctx->altfind = find;
3996 /* Try to find an address that isn't over quota */
4641 * mode, so find the best nameservers to use.
8594 * there may be additional chain answers to find.
8714 * not are skipped. We expect to find only *one* owner name; any names
8715 * after the first one processed are ignored. We expect to find only
8738 * We expect to find NS or SIG NS rdatasets, and
8861 * Did we find anything?
9236 * Handles referral responses. Check for sanity, find glue as needed,
9300 * dns_view_findzonecut() will not find them when we
9365 * Scan the additional section of a response to find records related
9453 FCTXTRACE("couldn't find a zonecut");
9549 FCTXTRACE("suspending DS lookup to find parent's NS records");