perl: Net::DNS requires Win32::IPHelper

Corinna Vinschen
Tue Aug 24 08:41:00 GMT 2010

On Aug 24 09:18, Reini Urban wrote:
> 2010/8/23 Yaakov (Cygwin/X) <>:
> > 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.

Hmm, considering that this implements a resolver from scratch (without
using the res_foo resolver functions), the IPHelper API sounds the
better way to implement this.  IMHO.  YMMV.


Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

Problem reports:
Unsubscribe info:

More information about the Cygwin mailing list