From: "Iñaki Baz Castillo" Date: 2011-07-09T02:31:55+09:00 Subject: [ANN] EM-Udns 0.2.3 - async DNS resolver for EventMachine based on udns C library Hi, I announce EM-Udns (gem version 0.2.3): EM-Udns is an async DNS resolver for EventMachine based on udns C library. Having most of the code written in C, EM-Udns becomes very fast. It can resolve DNS A, AAAA, PTR, MX, TXT, SRV and NAPTR records, and can handle every kind of errors (domain/record not found, request timeout, malformed response...). The project in Github, including the README file: https://github.com/ibc/em-udns Important changes in 0.2.X releases are: ---------------------------------------------------------- - No exception is raised when performing a query (which is not friendly within EventMachine), even if an error occurs (such a malformed domain name or internal error). Instead EM::Deferrable#errback (in EM::Udns::Query object) is called with new error arguments (a Ruby Symbol): - :dns_error_nxdomain - The domain name does not exist. - :dns_error_nodata - The domain exists, but has no data of requested type. - :dns_error_tempfail - Temporary error, the resolver nameserver was not able to process our query or timed out. - :dns_error_protocol - Protocol error, a nameserver returned malformed reply. - :dns_error_badquery - Bad query, name of dn is invalid. - :dns_error_nomem - No memory available to allocate query structure. - :dns_error_unknown - An unknown error has occurred. -- Iñaki Baz Castillo