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

1.2.6 iterate.c

-- ToshinoriMaeno 2017-04-29 09:29:35

$ grep '^static ' iterate.c

static const knot_dname_t *minimized_qname(struct kr_query *query, uint16_t *qtype)
static bool is_paired_to_query(const knot_pkt_t *answer, struct kr_query *query)
static bool is_authoritative(const knot_pkt_t *answer, struct kr_query *query)
static bool is_valid_addr(const uint8_t *addr, size_t len)
static int update_nsaddr(const knot_rrset_t *rr, struct kr_query *query)
static void fetch_glue(knot_pkt_t *pkt, const knot_dname_t *ns, struct kr_request *req)
static int has_glue(knot_pkt_t *pkt, const knot_dname_t *ns)
static int update_cut(knot_pkt_t *pkt, const knot_rrset_t *rr,
static int pick_authority(knot_pkt_t *pkt, struct kr_request *req, bool to_wire)
static int process_authority(knot_pkt_t *pkt, struct kr_request *req)
static void finalize_answer(knot_pkt_t *pkt, struct kr_query *qry, struct kr_request *req)
static int unroll_cname(knot_pkt_t *pkt, struct kr_request *req, bool referral, const knot_dname_t **cname_ret)
static int process_referral_answer(knot_pkt_t *pkt, struct kr_request *req)
static int process_final(knot_pkt_t *pkt, struct kr_request *req,
static int process_answer(knot_pkt_t *pkt, struct kr_request *req)
static int process_stub(knot_pkt_t *pkt, struct kr_request *req)
static int resolve_error(knot_pkt_t *pkt, struct kr_request *req)
static int reset(kr_layer_t *ctx)  { return KR_STATE_PRODUCE; }
static int begin(kr_layer_t *ctx)
static int prepare_query(kr_layer_t *ctx, knot_pkt_t *pkt)
static int resolve_badmsg(knot_pkt_t *pkt, struct kr_request *req, struct kr_query *query)
static int resolve(kr_layer_t *ctx, knot_pkt_t *pkt)