<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">That is a nicer approach - I guess I was assuming we didn’t want to make that big a change now…  As a long term solution that seems like the right thing, and I can work towards a demo that just adds a couple of  new types to the existing code and make that change later. <div class=""><br class=""></div><div class="">Also, it seems to me like the default for TCP/TLS/STARTTLS should be to keep the connections open (if the underlying implementation can support it). </div><div class=""><br class=""></div><div class="">I guess it is also worth pointing out that the UDP_FIRST_AND_FALL_BACK_TO_TCP option is currently using the DNS protocol (via the TC=1 bit), where as the other fall backs would be managed purely by the implementation.</div><div class=""><br class=""></div><div class="">Sara. </div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 12 Mar 2015, at 17:32, Wessels, Duane <<a href="mailto:dwessels@verisign.com" class="">dwessels@verisign.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">This all seems unfortunately complex.  In hindsight it may have been better<br class="">to define more simple transport types (UDP, TCP, TLSPORT, STARTTLS) and<br class="">then set them in the context as an ordered list.  If the first one in the<br class="">list doesn't work, fallback to the next one, and so on...<br class=""><br class="">Too late to change now?<br class=""><br class="">DW<br class=""><br class="">On Mar 12, 2015, at 10:11 AM, Sara Dickinson <<a href="mailto:sara@sinodun.com" class="">sara@sinodun.com</a>> wrote:<br class=""><br class=""><blockquote type="cite" class="">Hi All, <br class=""><br class="">As I mentioned yesterday in the meeting there would need to be some additional transport types as arguments to the getdns_context_set_dns_transport() method to support DNS-over-TLS. The current set are:<br class=""><br class="">GETDNS_TRANSPORT_UDP_FIRST_AND_FALL_BACK_TO_TCP<br class="">GETDNS_TRANSPORT_UDP_ONLY <br class="">GETDNS_TRANSPORT_TCP_ONLY<br class="">GETDNS_TRANSPORT_TCP_ONLY_KEEP_CONNECTIONS_OPEN<br class=""><br class="">To provide flexibility to perform different scenarios (depending on the privacy requirements of the client) as described in <a href="http://tools.ietf.org/html/draft-hzhwm-dprive-start-tls-for-dns-01" class="">http://tools.ietf.org/html/draft-hzhwm-dprive-start-tls-for-dns-01</a> we could consider adding the following:<br class=""><br class="">GETDNS_TRANSPORT_TLS_ONLY_KEEP_CONNECTIONS_OPEN<br class="">GETDNS_TRANSPORT_TLS_FIRST_AND_FALL_BACK_TO_STARRTLS_KEEP_CONNECTIONS_OPEN<br class="">GETDNS_TRANSPORT_TLS_FIRST_AND_FALL_BACK_TO_STARRTLS_THEN_TCP_KEEP_CONNECTIONS_OPEN<br class="">GETDNS_TRANSPORT_STARTTLS_ONLY_KEEP_CONNECTIONS_OPEN<br class="">GETDNS_TRANSPORT_STARTTLS_AND_FALL_BACK_TO_TCP_KEEP_CONNECTIONS_OPEN<br class=""><br class=""><br class="">1) Does anyone object to adding all 5 of these options? (Implementation note: there are 10 enums reserved in the getdns code for transport options)<br class=""><br class="">2) The names here are explicit, but verbose. Should we consider condensing them?<br class=""><br class="">3) Is there a mechanism to mark those containing STARTTLS as ‘experimental’ in the spec?<br class=""><br class="">One other note, the API does support specifying a set of upstream resolvers for stub mode (including a port), but there is no mechanism currently to specify a port to use for pure TLS.  We could extend the API or, more pragmatically for now, always use port 1022 (based on Allison’s comments) on the assumption one will hopefully be assigned by IANA. Thoughts?<br class=""><br class="">Regards<br class=""><br class="">Sara.<br class=""><br class=""><br class=""><br class="">-------------------------<br class="">Sara Dickinson<br class=""><br class=""><a href="http://sinodun.com" class="">http://sinodun.com</a><br class=""><br class="">Sinodun Internet Technologies Ltd.<br class="">Magdalen Centre<br class="">The Oxford Science Park<br class="">Oxford<br class="">OX4 4GA<br class="">U.K.<br class=""><br class="">_______________________________________________<br class="">getdns-api mailing list<br class="">getdns-api@vpnc.org<br class=""></blockquote><br class=""></div></blockquote></div><br class=""><div class="">
<div class="">-------------------------<br class="">Sara Dickinson<br class=""><br class=""><a href="http://sinodun.com" class="">http://sinodun.com</a><br class=""><br class="">Sinodun Internet Technologies Ltd.<br class="">Magdalen Centre<br class="">The Oxford Science Park<br class="">Oxford<br class="">OX4 4GA<br class="">U.K.</div>

</div>
<br class=""></div></body></html>