worker.c (368129) | worker.c (368693) |
---|---|
1/* 2 * daemon/worker.c - worker that handles a pending list of requests. 3 * 4 * Copyright (c) 2007, NLnet Labs. All rights reserved. 5 * 6 * This software is open source. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 562 unchanged lines hidden (view full) --- 571 * be intact otherwise. 572 * It returns 1 on success, 0 otherwise. */ 573static int 574apply_respip_action(struct worker* worker, const struct query_info* qinfo, 575 struct respip_client_info* cinfo, struct reply_info* rep, 576 struct comm_reply* repinfo, struct ub_packed_rrset_key** alias_rrset, 577 struct reply_info** encode_repp, struct auth_zones* az) 578{ | 1/* 2 * daemon/worker.c - worker that handles a pending list of requests. 3 * 4 * Copyright (c) 2007, NLnet Labs. All rights reserved. 5 * 6 * This software is open source. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 562 unchanged lines hidden (view full) --- 571 * be intact otherwise. 572 * It returns 1 on success, 0 otherwise. */ 573static int 574apply_respip_action(struct worker* worker, const struct query_info* qinfo, 575 struct respip_client_info* cinfo, struct reply_info* rep, 576 struct comm_reply* repinfo, struct ub_packed_rrset_key** alias_rrset, 577 struct reply_info** encode_repp, struct auth_zones* az) 578{ |
579 struct respip_action_info actinfo = {0}; | 579 struct respip_action_info actinfo = {0, 0, 0, 0, NULL, 0, NULL}; |
580 actinfo.action = respip_none; 581 582 if(qinfo->qtype != LDNS_RR_TYPE_A && 583 qinfo->qtype != LDNS_RR_TYPE_AAAA && 584 qinfo->qtype != LDNS_RR_TYPE_ANY) 585 return 1; 586 587 if(!respip_rewrite_reply(qinfo, cinfo, rep, encode_repp, &actinfo, --- 1196 unchanged lines hidden (view full) --- 1784 } 1785#endif 1786 worker->front = listen_create(worker->base, ports, 1787 cfg->msg_buffer_size, (int)cfg->incoming_num_tcp, 1788 cfg->do_tcp_keepalive 1789 ? cfg->tcp_keepalive_timeout 1790 : cfg->tcp_idle_timeout, 1791 cfg->harden_large_queries, cfg->http_max_streams, | 580 actinfo.action = respip_none; 581 582 if(qinfo->qtype != LDNS_RR_TYPE_A && 583 qinfo->qtype != LDNS_RR_TYPE_AAAA && 584 qinfo->qtype != LDNS_RR_TYPE_ANY) 585 return 1; 586 587 if(!respip_rewrite_reply(qinfo, cinfo, rep, encode_repp, &actinfo, --- 1196 unchanged lines hidden (view full) --- 1784 } 1785#endif 1786 worker->front = listen_create(worker->base, ports, 1787 cfg->msg_buffer_size, (int)cfg->incoming_num_tcp, 1788 cfg->do_tcp_keepalive 1789 ? cfg->tcp_keepalive_timeout 1790 : cfg->tcp_idle_timeout, 1791 cfg->harden_large_queries, cfg->http_max_streams, |
1792 cfg->http_endpoint, worker->daemon->tcl, 1793 worker->daemon->listen_sslctx, | 1792 cfg->http_endpoint, cfg->http_notls_downstream, 1793 worker->daemon->tcl, worker->daemon->listen_sslctx, |
1794 dtenv, worker_handle_request, worker); 1795 if(!worker->front) { 1796 log_err("could not create listening sockets"); 1797 worker_delete(worker); 1798 return 0; 1799 } 1800 worker->back = outside_network_create(worker->base, 1801 cfg->msg_buffer_size, (size_t)cfg->outgoing_num_ports, 1802 cfg->out_ifs, cfg->num_out_ifs, cfg->do_ip4, cfg->do_ip6, 1803 cfg->do_tcp?cfg->outgoing_num_tcp:0, cfg->ip_dscp, 1804 worker->daemon->env->infra_cache, worker->rndstate, 1805 cfg->use_caps_bits_for_id, worker->ports, worker->numports, 1806 cfg->unwanted_threshold, cfg->outgoing_tcp_mss, 1807 &worker_alloc_cleanup, worker, 1808 cfg->do_udp || cfg->udp_upstream_without_downstream, 1809 worker->daemon->connect_sslctx, cfg->delay_close, | 1794 dtenv, worker_handle_request, worker); 1795 if(!worker->front) { 1796 log_err("could not create listening sockets"); 1797 worker_delete(worker); 1798 return 0; 1799 } 1800 worker->back = outside_network_create(worker->base, 1801 cfg->msg_buffer_size, (size_t)cfg->outgoing_num_ports, 1802 cfg->out_ifs, cfg->num_out_ifs, cfg->do_ip4, cfg->do_ip6, 1803 cfg->do_tcp?cfg->outgoing_num_tcp:0, cfg->ip_dscp, 1804 worker->daemon->env->infra_cache, worker->rndstate, 1805 cfg->use_caps_bits_for_id, worker->ports, worker->numports, 1806 cfg->unwanted_threshold, cfg->outgoing_tcp_mss, 1807 &worker_alloc_cleanup, worker, 1808 cfg->do_udp || cfg->udp_upstream_without_downstream, 1809 worker->daemon->connect_sslctx, cfg->delay_close, |
1810 cfg->tls_use_sni, dtenv); | 1810 cfg->tls_use_sni, dtenv, cfg->udp_connect); |
1811 if(!worker->back) { 1812 log_err("could not create outgoing sockets"); 1813 worker_delete(worker); 1814 return 0; 1815 } 1816 /* start listening to commands */ 1817 if(!tube_setup_bg_listen(worker->cmd, worker->base, 1818 &worker_handle_control_cmd, worker)) { --- 315 unchanged lines hidden --- | 1811 if(!worker->back) { 1812 log_err("could not create outgoing sockets"); 1813 worker_delete(worker); 1814 return 0; 1815 } 1816 /* start listening to commands */ 1817 if(!tube_setup_bg_listen(worker->cmd, worker->base, 1818 &worker_handle_control_cmd, worker)) { --- 315 unchanged lines hidden --- |