diff options
Diffstat (limited to 'libunbound/libworker.c')
| -rw-r--r-- | libunbound/libworker.c | 20 | 
1 files changed, 11 insertions, 9 deletions
| diff --git a/libunbound/libworker.c b/libunbound/libworker.c index ad1f84ce97d9..2af392706b68 100644 --- a/libunbound/libworker.c +++ b/libunbound/libworker.c @@ -119,7 +119,7 @@ libworker_delete_event(struct libworker* w)  /** setup fresh libworker struct */  static struct libworker* -libworker_setup(struct ub_ctx* ctx, int is_bg, struct event_base* eb) +libworker_setup(struct ub_ctx* ctx, int is_bg, struct ub_event_base* eb)  {  	unsigned int seed;  	struct libworker* w = (struct libworker*)calloc(1, sizeof(*w)); @@ -258,7 +258,7 @@ libworker_setup(struct ub_ctx* ctx, int is_bg, struct event_base* eb)  }  struct libworker* libworker_create_event(struct ub_ctx* ctx, -	struct event_base* eb) +	struct ub_event_base* eb)  {  	return libworker_setup(ctx, 0, eb);  } @@ -581,6 +581,7 @@ setup_qinfo_edns(struct libworker* w, struct ctx_query* q,  	edns->ext_rcode = 0;  	edns->edns_version = 0;  	edns->bits = EDNS_DO; +	edns->opt_list = NULL;  	if(sldns_buffer_capacity(w->back->udp_buff) < 65535)  		edns->udp_size = (uint16_t)sldns_buffer_capacity(  			w->back->udp_buff); @@ -822,9 +823,9 @@ void libworker_alloc_cleanup(void* arg)  struct outbound_entry* libworker_send_query(uint8_t* qname, size_t qnamelen,          uint16_t qtype, uint16_t qclass, uint16_t flags, int dnssec, -	int want_dnssec, int nocaps, struct sockaddr_storage* addr, -	socklen_t addrlen, uint8_t* zone, size_t zonelen, -	struct module_qstate* q) +	int want_dnssec, int nocaps, struct edns_option* opt_list, +	struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone, +	size_t zonelen, struct module_qstate* q)  {  	struct libworker* w = (struct libworker*)q->env->worker;  	struct outbound_entry* e = (struct outbound_entry*)regional_alloc( @@ -834,9 +835,9 @@ struct outbound_entry* libworker_send_query(uint8_t* qname, size_t qnamelen,  	e->qstate = q;  	e->qsent = outnet_serviced_query(w->back, qname,  		qnamelen, qtype, qclass, flags, dnssec, want_dnssec, nocaps, -		q->env->cfg->tcp_upstream, q->env->cfg->ssl_upstream, addr, -		addrlen, zone, zonelen, libworker_handle_service_reply, e, -		w->back->udp_buff); +		q->env->cfg->tcp_upstream, q->env->cfg->ssl_upstream, opt_list, +		addr, addrlen, zone, zonelen, libworker_handle_service_reply, +		e, w->back->udp_buff);  	if(!e->qsent) {  		return NULL;  	} @@ -955,7 +956,8 @@ struct outbound_entry* worker_send_query(uint8_t* ATTR_UNUSED(qname),  	size_t ATTR_UNUSED(qnamelen), uint16_t ATTR_UNUSED(qtype),   	uint16_t ATTR_UNUSED(qclass), uint16_t ATTR_UNUSED(flags),   	int ATTR_UNUSED(dnssec), int ATTR_UNUSED(want_dnssec), -	int ATTR_UNUSED(nocaps), struct sockaddr_storage* ATTR_UNUSED(addr),  +	int ATTR_UNUSED(nocaps), struct edns_option* ATTR_UNUSED(opt_list), +	struct sockaddr_storage* ATTR_UNUSED(addr),   	socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),  	size_t ATTR_UNUSED(zonelen), struct module_qstate* ATTR_UNUSED(q))  { | 
