[asterisk-dev] [Code Review] 4474: core: Add basic DNS API implementation

Joshua Colp reviewboard at asterisk.org
Fri Mar 13 09:45:22 CDT 2015



> On March 11, 2015, 6:05 p.m., rmudgett wrote:
> > /trunk/include/asterisk/dns_recurring.h, line 48
> > <https://reviewboard.asterisk.org/r/4474/diff/1/?file=71969#file71969line48>
> >
> >     Since DNS resolution can take time, should the next refresh interval be set in advance of the lowest returned TTL so the refresh happens before a record's expiry?
> >     
> >     Would it be advisable for the resolver to supply some kind of refresh before TTL expiry?  Or add a refresh at xx% of lowest TTL or one second whichever is greater parameter?  Maybe a maximum refresh interval time if the TTL is very large.

I've updated the documentation to make this clear but I'm hesitant on adding knobs without actually seeing it in use. Primarily because there is no intelligent way to get a good time and no guarantee that it'll actually do anything. If you are using a caching server (which many of us are) it's just going to give you the same result. The unbound resolver itself also acts as a caching resolver so it will just give you the same result back as well.


- Joshua


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4474/#review14641
-----------------------------------------------------------


On March 11, 2015, 11:42 a.m., Joshua Colp wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/4474/
> -----------------------------------------------------------
> 
> (Updated March 11, 2015, 11:42 a.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24834
>     https://issues.asterisk.org/jira/browse/ASTERISK-24834
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> This change implements the basic API as described on the DNS API wiki page. Minimal changes have been made as required based on real usage and getting a feel for it. As it is the core functionality is present. Resolvers can register, queries can be made (async / sync).
> 
> As the API was basically copy/pasted from the wiki page there still remain stubs to be filled in for higher level functionality (such as parsing and query sets).
> 
> 
> Diffs
> -----
> 
>   /trunk/main/dns_query_set.c PRE-CREATION 
>   /trunk/main/dns_core.c PRE-CREATION 
>   /trunk/include/asterisk/dns_tlsa.h PRE-CREATION 
>   /trunk/include/asterisk/dns_srv.h PRE-CREATION 
>   /trunk/include/asterisk/dns_resolver.h PRE-CREATION 
>   /trunk/include/asterisk/dns_recurring.h PRE-CREATION 
>   /trunk/include/asterisk/dns_query_set.h PRE-CREATION 
>   /trunk/include/asterisk/dns_naptr.h PRE-CREATION 
>   /trunk/include/asterisk/dns_internal.h PRE-CREATION 
>   /trunk/include/asterisk/dns_core.h PRE-CREATION 
> 
> Diff: https://reviewboard.asterisk.org/r/4474/diff/
> 
> 
> Testing
> -------
> 
> Ran DNS unit tests as done by Mark, they are happy.
> 
> 
> Thanks,
> 
> Joshua Colp
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20150313/b171435b/attachment-0001.html>


More information about the asterisk-dev mailing list