2010/8/23 Yaakov (Cygwin/X) <yselkow...@users.sourceforge.net>: > On Mon, 2010-08-23 at 16:07 +0200, Corinna Vinschen wrote: >> Here's a question: >> >> Why does the Net::DNS module, which provides only a resolver API, depend >> on a Win32-related package at all? Cygwin 1.7 provides a BSD compatible >> resolver API (res_init, res_query, etc) which should be used, just like >> on Linux. Does the module erroneously treat Cygwin as Windows target? >> If so, that should be fixed. > > Net::DNS does not bind libresolv on *NIX; it does its own parsing > of /etc/resolv.conf. On Win32, it uses Win32::IPHelper's bindings of > GetNetworkParams. > > So this is YA resolver implementation. When it came to BIND's liblwres, > you asked that it use the Windows APIs in order to ore closely match our > libresolv implementation and not require an /etc/resolv.conf. The same > would apply here as well.
The real problem is that there exists a native cygwin resolver module Net::DNS::Resolver::Cygwin, which is just not used. It does not need Win32::IPHelper and Win32::API, it just reads the relevant /proc/registry/HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters/ registry entries. Attached is my tested version, but I want to test it once more with ipv6 at home. -- Reini Urban
Net-DNS-0.66-cygwin.patch
Description: Binary data
-- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple