[asterisk-dev] [Code Review] 4603: pjsip: Add external PJSIP resolver implementation using core DNS API
Joshua Colp
reviewboard at asterisk.org
Wed Apr 8 14:37:06 CDT 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4603/
-----------------------------------------------------------
Review request for Asterisk Developers.
Bugs: ASTERISK-24947
https://issues.asterisk.org/jira/browse/ASTERISK-24947
Repository: Asterisk
Description
-------
This change adds the following:
1. A query set implementation. This is an API that allows queries to be executed in parallel and once all have completed a callback is invoked.
2. Unit tests for the query set implementation.
3. An external PJSIP resolver which uses the DNS core API to do NAPTR, SRV, AAAA, and A lookups.
For the resolver it will do NAPTR, SRV, and AAAA/A lookups in parallel. If NAPTR or SRV are available it will then do more queries. And so on. Preference is NAPTR > SRV > AAAA/A, with IPv6 preferred over IPv4. For transport it will prefer TLS > TCP > UDP if no explicit transport has been provided. Configured transports on the system are taken into account to eliminate resolved addresses which have no hope of completing.
Diffs
-----
/trunk/tests/test_dns_query_set.c PRE-CREATION
/trunk/res/res_pjsip_session.c 434446
/trunk/res/res_pjsip/pjsip_resolver.c PRE-CREATION
/trunk/res/res_pjsip/include/res_pjsip_private.h 434446
/trunk/res/res_pjsip.c 434446
/trunk/main/dns_srv.c 434446
/trunk/main/dns_recurring.c 434446
/trunk/main/dns_query_set.c 434446
/trunk/main/dns_naptr.c 434446
/trunk/main/dns_core.c 434446
/trunk/include/asterisk/dns_query_set.h 434446
/trunk/include/asterisk/dns_internal.h 434446
/trunk/include/asterisk/dns_core.h 434446
/trunk/include/asterisk/autoconfig.h.in 434446
/trunk/configure.ac 434446
/configure UNKNOWN
Diff: https://reviewboard.asterisk.org/r/4603/diff/
Testing
-------
Ran unit tests, they pass. Ran testsuite tests, they pass. Did spot checking using my own domains. They resolve as expected.
Thanks,
Joshua Colp
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20150408/dd7bc6d8/attachment.html>
More information about the asterisk-dev
mailing list