DNS/KnotResolver/libについて、ここに記述してください。


resolve.c

41:static void set_yield(ranked_rr_array_t *array, const uint32_t qry_uid, const bool yielded)
55:static int consume_yield(kr_layer_t *ctx, knot_pkt_t *pkt)
73:static int begin_yield(kr_layer_t *ctx) { return kr_ok(); }
74:static int reset_yield(kr_layer_t *ctx) { return kr_ok(); }
75:static int finish_yield(kr_layer_t *ctx) { return kr_ok(); }
76:static int produce_yield(kr_layer_t *ctx, knot_pkt_t *pkt) { return kr_ok(); }
100:static inline size_t layer_id(struct kr_request *req, const struct kr_layer_api *api) {
119:static void randomized_qname_case(knot_dname_t * restrict qname, uint32_t secret)
131:static int invalidate_ns(struct kr_rplan *rplan, struct kr_query *qry)
148:static void check_empty_nonterms(struct kr_query *qry, knot_pkt_t *pkt, struct kr_cache *cache, uint32_t timestamp)
180:static int ns_fetch_cut(struct kr_query *qry, const knot_dname_t *requested_name,
283:static int ns_resolve_addr(struct kr_query *qry, struct kr_request *param)
360:static int edns_put(knot_pkt_t *pkt)
376:static int edns_erase_and_reserve(knot_pkt_t *pkt)
403:static int edns_create(knot_pkt_t *pkt, knot_pkt_t *template, struct kr_request *req)
419:static int answer_prepare(knot_pkt_t *answer, knot_pkt_t *query, struct kr_request *req)
438:static void write_extra_records(rr_array_t *arr, knot_pkt_t *answer)
445:static void write_extra_ranked_records(ranked_rr_array_t *arr, knot_pkt_t *answer)
463:static int answer_padding(struct kr_request *request)
494:static int answer_fail(struct kr_request *request)
510:static int answer_finalize(struct kr_request *request, int state)
571:static int query_finalize(struct kr_request *request, struct kr_query *qry, knot_pkt_t *pkt)
621:static int resolve_query(struct kr_request *request, const knot_pkt_t *packet)
682:static void update_nslist_rtt(struct kr_context *ctx, struct kr_query *qry, const struct sockaddr *src)
734:static void update_nslist_score(struct kr_request *request, struct kr_query *qry, const struct sockaddr *src, knot_pkt_t *packet)
834:static struct kr_query *zone_cut_subreq(struct kr_rplan *rplan, struct kr_query *parent,
854:static int trust_chain_check(struct kr_request *request, struct kr_query *qry)
924:static int zone_cut_check(struct kr_request *request, struct kr_query *qry, knot_pkt_t *packet)
1122:static bool outbound_request_update_cookies(struct kr_request *req,