Branch: Tag:

2015-03-31

2015-03-31 12:46:11 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Protocols.DNS: Remove the retry call_out on done.

Fixes remainder of [bug 6285 (#6285)].

1505:    int retries;    int timestamp;    array args; +  mixed retry_co;    };       mapping requests=([]);
1514:    if(!r) return;    sscanf(r->req,"%2c",int id);    m_delete(requests,id); +  if (r->retry_co) remove_call_out(r->retry_co); +  r->retry_co = UNDEFINED;    r->callback(r->domain,0,@r->args);    destruct(r);    }
1524:    if (nsno >= sizeof(nameservers)) {    if(r->retries++ > RETRIES)    { -  call_out(remove,REMOVE_DELAY,r); +  r->retry_co = call_out(remove, REMOVE_DELAY, r);    return;    } else {    nsno = 0;
1532:    }       send(nameservers[nsno],53,r->req); -  call_out(retry,RETRY_DELAY,r,nsno+1); +  r->retry_co = call_out(retry, RETRY_DELAY, r, nsno+1);    }       void do_query(string domain, int cl, int type,
1554:    r->timestamp=time();    requests[lid]=r;    udp::send(nameservers[0],53,r->req); -  call_out(retry,RETRY_DELAY,r,1); +  r->retry_co = call_out(retry, RETRY_DELAY, r, 1);    return;    }    }