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

Mankin, Allison amankin at verisign.com
Fri Oct 31 17:54:25 CET 2014


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

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

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

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJUU7NxAAoJEOX4+CEvd6SYfA8P/2UePh9RDnxKio8ROBE6qXvR
l8k9NRyOJtuxS6L4bm3/fClx2SrJ1BarBVWVap+ariZN+zoCXHpCpg5RwI794qib
aRG7OW0DzpqNuq63f3aYsrGneB2JaIW6XgO+RBJoe3IjawWeXrFoNprvxPQqqUgK
/2zyu1kJp14DV5Gc58F6jdgNk65pl7a26IATw+6O/w3TkfhmmjUhXj1POpSCrvWX
NCLyJeHoylPrOKCZgRx3m47BIOV377hT+DSoL+lTFgeFhERTv5Sr0R1kt4ixrSw5
IbINFdph0Q5s+K8/v8RVSMpT8ao5/yVJI8Va4WJMNWPp0DUfp3E3Z0SolckcdrBr
Xrh9HZBxRj/WifwEQA1MO2pkyjczsQpHTrsUZDXrscwy1euYlUPFGbGLYjZenl/C
qmpBzumiMGNjcS1oyPv5rplvpUlYFQ0WYGCyrfOoncoa2n2XeaaaripjhEN3ZrJW
QGv1DIag2ltRPSM8UKJWAgWkNNdK5f2b3uc2isVfpbNFdibhmB9hvUvfOaG9JAY1
5kTYhJyIRkoKSqwo1VLmHJ5Rh5PKULYMmbV+qhJL3T7gZMUJ/VJHrpOKsGyKxNHl
b4FStTDktwbwxbifgBME0OFCYq+MrvNfShbDv92IpwDBStGasGiJ/cdhqCFEuPGr
jlNF6rB4tyyvi52mdldv
=W7p7
-----END PGP SIGNATURE-----
_______________________________________________
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://getdnsapi.net/pipermail/spec/attachments/20141031/f1412a93/attachment.html>
-------------- next part --------------
_______________________________________________
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