[Stub-resolver] Fwd: [getdns-api] getdns 0.1.5 released

Willem Toorop willem at nlnetlabs.nl
Fri Oct 31 19:22:06 CET 2014


Thanks!  It did not go completely without a hitch.  Libuv changed a
prototype for which I had to write a configure test;  There were some
symbol conflicts with libunbound on FreeBSD; and I am always struggling
with the administrative overhead of nodejs, but alas;  It is released
and it is a good release!  I am happy with it.

Good work all!

Op 31-10-14 om 17:54 schreef Mankin, Allison:
> Also, beautiful work!!
> 
> On Oct 31, 2014, at 9:44, "Mankin, Allison" <amankin at verisign.com
> <mailto:amankin at verisign.com>> wrote:
> 
>> Hi Angelique, 
>>
>> Please tweet this for us from getdnsapi 
>>
>> Please indicate it is a "features release as well as making some bug
>> fixes" and point to getdnsapi.net <http://getdnsapi.net>
>>
>> Begin forwarded message:
>>
>>> *From:* Willem Toorop <willem at nlnetlabs.nl <mailto:willem at nlnetlabs.nl>>
>>> *Date:* October 31, 2014 at 9:06:13 PDT
>>> *To:* "getdns-api at vpnc.org <mailto:getdns-api at vpnc.org>"
>>> <getdns-api at vpnc.org <mailto:getdns-api at vpnc.org>>
>>> *Subject:* *[getdns-api] getdns 0.1.5 released*
>>>
> Dear all,
> 
> We have a new release, version 0.1.5 of our getdns API implementation.
> 
> This release includes the features from the API that affect hop-by-hop
> communication and apply to stub resolution mode.  The
> "add_opt_parameters" extension from section 3.3 of the spec and all
> getdns_context_set_edns_* functions from Section 8.8 have are now
> implemented.  The GETDNS_TRANSPORT_TCP_ONLY_KEEP_CONNECTIONS_OPEN
> transport mode is also implemented with this release.  IPv6 link-local
> with scope_id upstreams are now supported, both in /etc/resolv.conf as
> via getdns_context_set_upstream_recursive_servers().
> 
> In addition, TCP Fast open is available as an optional feature (linux
> only).  This mechanism enables data exchange during TCP’s initial
> handshake and in doing so it decreases application network latency by
> one full round-trip time.
> 
> To enable these features we have done a major internal rework.  Before,
> we used libunbound for both stub and recursive mode, but to get the
> amount of control needed for the hop-by-hop communication features we
> had to implement stub resolution independently.  For this task we also
> needed to review and refine our extensible event loop mechanism so it is
> able to handle events for multiple simultaneous connections.  (This was
> handled internally by libunbound before)
> 
> As a consequence, this release is binary incompatible with respect to
> the extensible event loop mechanism.  The getdns_context_fd() function
> that facilitated asynchronous processing based on select is no longer
> available.  Instead, getdns_context_run() should be used to perform
> blocking asynchronous processing.  The getdns_context_process_async()
> and getdns_context_get_num_pending_requests() functions remain for
> asynchronous processing in non-blocking fashion.
> 
> Besides our own three event loop extensions shipped alongside the
> library (for libevent, libev and libuv) we are aware of only one
> software package affected by this: the nodejs bindings.  A new release
> of the nodejs bindings fitting this release will follow shortly.
> 
> The internal rework has many improvements as a consequence.  Many
> implementation details that previously had specific code paths for the
> different modus operandi (i.e. sync/recursive, sync/stub,
> async/recursive and async stub) could be merged, resulting in a more
> consistent and easier to maintain code base.  Consequences can already
> be seen in the simultaneous querying for IPv4 and IPv6 addresses and the
> more consistent handling of name spaces, plus the possibility to alter
> name space evaluation order even after a context has been used to sent
> out a query.
> 
> Note that stub resolution will still use libunbound if any of the DNSSEC
> extensions are into play.  Performing stub validation independently from
> libunbound is on the road map for the next release.
> 
> Besides these features, many bugs have been fixed with this release.
> For a complete overview see the ChangeLog section below.
> 
> link   : https://getdnsapi.net/dist/getdns-0.1.5.tar.gz
> md5    : a963594fca8ef2849244aa7290abe7f8
> sha1   : 5da3f54d0929d967039e5d0d54e7125dd13acf38
> pgp sig: https://getdnsapi.net/dist/getdns-0.1.5.tar.gz.asc
> 
> 
> ChangeLog
> =========
> * 2014-10-31: Version 0.1.5
>  * Unit tests for transport settings
>  * Fix: adhere to set maximum UDP payload size
>  * API change: when no maximum UDP payload size is set, outgoing
>    values will adhere to the suggestions in RFC 6891 and may follow
>    a scheme that uses multiple values to maximize receptivity.
>  * Stub mode use 1232 maximum UDP payload size when connecting to an
>    IPv6 upstreams and 1432 with an IPv4 upstream.
>  * Evaluate namespaces (or not) on a per query basis
>  * GETDNS_NAMESPACE_LOCALNAMES namespace now gives just_address_answers
>    only and does not mimic a DNS packet answer anymore
>  * The add_opt_parameters extension
>  * IPv6 scope_id support with link-local addresses.  Both with parsing
>    /etc/resolv.conf and by providing them explicitly via
>    getdns_context_set_upstream_recursive_servers
>  * Query for A and AAAA simultaneously with return_both_v4_and_v6
>  * GETDNS_TRANSPORT_TCP_ONLY_KEEP_CONNECTIONS_OPEN DNS transport
>  * Fix: Answers without RRs in query secion (i.e. REFUSED)
>  * Fix: Return empty response dict on timeout in async mode too
>  * Move spec examples to spec subdirectory
>  * Fix issue#76: Setting UDP Payload size below 512 should not error
>  * Fix: Include OPT RR in response dict always (even without options)
>  * TCP Fast open support (linux only).
>    Enable with the --enable-tcp-fastopen configure option
>  * Bump library version because of binary API change
> 
>>> _______________________________________________
>>> getdns-api mailing list
>>> getdns-api at vpnc.org <mailto:getdns-api at vpnc.org>
>> _______________________________________________
>> stub-resolver mailing list
>> stub-resolver at lists.verisignlabs.com
>> <mailto:stub-resolver at lists.verisignlabs.com>
>> https://lists.verisignlabs.com/mailman/listinfo/stub-resolver
> 
> 
> _______________________________________________
> stub-resolver mailing list
> stub-resolver at lists.verisignlabs.com
> https://lists.verisignlabs.com/mailman/listinfo/stub-resolver
> 

_______________________________________________
stub-resolver mailing list
stub-resolver at lists.verisignlabs.com
https://lists.verisignlabs.com/mailman/listinfo/stub-resolver



More information about the spec mailing list