perl: Net::DNS requires Win32::IPHelper

Reini Urban rurban@x-ray.at
Mon Aug 23 14:40:00 GMT 2010


2010/8/23 Corinna Vinschen <corinna-cygwin@cygwin.com>:
> On Aug 23 15:36, Reini Urban wrote:
>> 2010/8/23 Yaakov (Cygwin/X) <yselkowitz@users.sourceforge.net>:
>> > Reini,
>> >
>> > The Net::DNS module, which you ship with perl, depends on perl-libwin32
>> > (packaged separately) and Win32::IPHelper, the latter of which depends
>> > on Win32::API and enum modules.  Win32::API needs a custom typemap file
>> > in order to compile on Cygwin, which AFAICS should be:
>> >
>> > TYPEMAP
>> > HINSTANCE   T_PTR
>> > LPCSTR      T_PV
>> > LPCWSTR     T_PV
>>
>> Oh my. Net::DNS depending on Win32::API is not really helpful.
>> He already has a DNS.xs it would be easy to add the IPHelper stuff to this xs.
>> perl-libwin32 is a bit fat for a perl require line, I'll see what I
>> can do to remove this cyclic dependency.
>> Net::DNS is only needed for the old CPAN::Reporter.
>> The new CPAN::Reporter 2.0 will use Metabase and has a entirely
>> different set of deps.
>
> 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.

Sure. It's entirely stupid for Net::DNS to treat cygwin same as MSWin32.
A good catch by Yaakov. Wonder why I never had any issue with that.

I'll come up with a better cygwin resolver for Net::DNS, which does not need
a slow and always broken Win32::API + Win32::IPHelper.
Behind my proxy using Net::DNS::Resolver::UNIX on cygwin worked okay,
but I'll test again at home and bump perl then.
-- 
Reini Urban

--
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



More information about the Cygwin mailing list