X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Tue, 24 Aug 2010 10:40:34 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: perl: Net::DNS requires Win32::IPHelper Message-ID: <20100824084034.GP6726@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <1282535618 DOT 6888 DOT 51 DOT camel AT YAAKOV04> <20100823140705 DOT GG6726 AT calimero DOT vinschen DOT de> <1282583279 DOT 5256 DOT 8 DOT camel AT YAAKOV04> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com 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 -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- 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