X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-0.2 required=5.0 tests=AWL,BAYES_20,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org MIME-Version: 1.0 In-Reply-To: <1282583279.5256.8.camel@YAAKOV04> 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> Date: Tue, 24 Aug 2010 09:18:26 +0200 Message-ID: Subject: Re: perl: Net::DNS requires Win32::IPHelper From: Reini Urban To: cygwin AT cygwin DOT com Content-Type: multipart/mixed; boundary=001485f1e94e387950048e8c928e X-IsSubscribed: yes 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 --001485f1e94e387950048e8c928e Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 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? =A0Cygwin 1.7 provides a BSD compatib= le >> resolver API (res_init, res_query, etc) which should be used, just like >> on Linux. =A0Does 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. =A0On Win32, it uses Win32::IPHelper's bindings of > GetNetworkParams. > > So this is YA resolver implementation. =A0When 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. =A0The 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/P= arameters/ registry entries. Attached is my tested version, but I want to test it once more with ipv6 at home. --=20 Reini Urban --001485f1e94e387950048e8c928e Content-Type: application/octet-stream; name="Net-DNS-0.66-cygwin.patch" Content-Disposition: attachment; filename="Net-DNS-0.66-cygwin.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gd8fbtin0 ZGlmZm9yaWcgTmV0LUROUy0wLjY2CgpkaWZmIC11ICBOZXQtRE5TLTAuNjYv TWFrZWZpbGUuUEwub3JpZwotLS0gTmV0LUROUy0wLjY2L01ha2VmaWxlLlBM Lm9yaWcJMjAxMC0wOC0yMyAxNjoyNDozNi44MTg5NDU2MDAgKzAyMDAKKysr IE5ldC1ETlMtMC42Ni9NYWtlZmlsZS5QTAkyMDEwLTA4LTI0IDA5OjE0OjU4 Ljk3MzExMTMwMCArMDIwMApAQCAtOTAsMTYgKzkwLDE1IEBACiAKIAogCi1p ZiAoJF5PIGVxICdNU1dpbjMyJyB8fCAkXk8gZXEgJ2N5Z3dpbicpIHsKK2lm ICgkXk8gZXEgJ01TV2luMzInKSB7CiAgICAgdW5sZXNzKCAgICBldmFsIHty ZXF1aXJlIFdJTjMyOjpBUEk7IH0JICAgKXsKIAl3YXJuIDw8QU1FTjsgCiBJ IGNhbiBub3QgZmluZCBXSU4zMjo6QVBJIHZlcnNpb24gMC41NSBvciBoaWdo ZXIuCi0KIEkgd2lsbCBhZGQgV0lOMzI6OkFQSSB0byB0aGUgbGlzdCBvZiBw cmVyZXF1aXNpdGVzLgogQU1FTgogCiAKLWlmICggJF5PIGVxICJNU1dpbjMy IiApeyAKK2lmICggJF5PIGVxICJNU1dpbjMyIiApewogICAgIHdhcm4gPDxB TUVOMjsKIE5vdGUgdGhhdCwgV0lOMzI6OkFQSSBpcyBpbmNsdWRlZCBpbiBy ZWNlbnQgdmVyc2lvbnMKIG9mIEFjdGl2ZVBlcmwgKDUuMTAgc2luY2UgYnVp bGQgMTAwMykgYW5kIHJlY2VudApAQCAtMTA4LDExICsxMDcsNiBAQAogdGVz dGVkIHdpdGggb3RoZXIgdmVyc2lvbnMuIEluIGNhc2Ugb2YgZmFpbHVyZSBw bGVhc2UKIGNvbnNpZGVyIHVwZ3JhZGluZy4KIEFNRU4yCi19ZWxzZXsKLSAg ICB3YXJuIDw8QU1FTjM7Ci1XaGVuIHVzaW5nIGN5Z3dpbiBtaXNzaW5nIGRl cGVuZGVuY2llcyBjYW4gYmUgaW5zdGFsbGVkIHVzaW5nIENQQU4uCi1BTUVO MwotCiB9CiAKIApAQCAtMTU4LDEzICsxNTIsNiBAQAogCX0KIH0KIAotCi0K LQotCi0KLQotCiBpZiAoJHVzZV94cykgewogCSMgdHVybiB0aGUgWFMgYml0 cyBvbi4KICAgICAgICAgcHJpbnQgIkFjdGl2YXRpbmcgWFMgTWFnaWMuLi5c biIgaWYgREVCVUc7IApkaWZmIC11ICBOZXQtRE5TLTAuNjYvYmxpYi9saWIv TmV0L0ROUy9SZXNvbHZlci5wbS5vcmlnCi0tLSBOZXQtRE5TLTAuNjYvYmxp Yi9saWIvTmV0L0ROUy9SZXNvbHZlci5wbS5vcmlnCTIwMTAtMDgtMjMgMTY6 MjQ6MzcuMDAwMDAwMDAwICswMjAwCisrKyBOZXQtRE5TLTAuNjYvYmxpYi9s aWIvTmV0L0ROUy9SZXNvbHZlci5wbQkyMDEwLTA4LTIzIDE2OjUyOjI0LjAw MDAwMDAwMCArMDIwMApAQCAtOCwxOCArOCwxOCBAQAogCiAkVkVSU0lPTiA9 IChxdyRMYXN0Q2hhbmdlZFJldmlzaW9uOiA4MzAgJClbMV07CiAKLUJFR0lO IHsKKyNCRUdJTiB7CiAJaWYgKCReTyBlcSAnTVNXaW4zMicpIHsKIAkJcmVx dWlyZSBOZXQ6OkROUzo6UmVzb2x2ZXI6OldpbjMyOwogCQlASVNBID0gcXco TmV0OjpETlM6OlJlc29sdmVyOjpXaW4zMik7CiAJfSBlbHNpZiAoJF5PIGVx ICdjeWd3aW4nKSB7Ci0JCXJlcXVpcmUgTmV0OjpETlM6OlJlc29sdmVyOjpX aW4zMjsKLQkJQElTQSA9IHF3KE5ldDo6RE5TOjpSZXNvbHZlcjo6V2luMzIp OwotCX0gZWxzZSB7ICAgCisJCXJlcXVpcmUgTmV0OjpETlM6OlJlc29sdmVy OjpDeWd3aW47CisJCUBJU0EgPSBxdyhOZXQ6OkROUzo6UmVzb2x2ZXI6OkN5 Z3dpbik7CisJfSBlbHNlIHsKIAkJcmVxdWlyZSBOZXQ6OkROUzo6UmVzb2x2 ZXI6OlVOSVg7CiAJCUBJU0EgPSBxdyhOZXQ6OkROUzo6UmVzb2x2ZXI6OlVO SVgpOwogCX0KLX0KKyN9CiAKIF9fUEFDS0FHRV9fLT5pbml0KCk7CiAKZGlm ZiAtdSAgTmV0LUROUy0wLjY2L2xpYi9OZXQvRE5TL1Jlc29sdmVyLnBtLm9y aWcKLS0tIE5ldC1ETlMtMC42Ni9saWIvTmV0L0ROUy9SZXNvbHZlci5wbS5v cmlnCTIwMTAtMDgtMjMgMTY6MjQ6MzcuMzI4OTk2NjAwICswMjAwCisrKyBO ZXQtRE5TLTAuNjYvbGliL05ldC9ETlMvUmVzb2x2ZXIucG0JMjAxMC0wOC0y MyAxNjo1MjoyNC45ODYxODQ4MDAgKzAyMDAKQEAgLTgsMTggKzgsMTggQEAK IAogJFZFUlNJT04gPSAocXckTGFzdENoYW5nZWRSZXZpc2lvbjogODMwICQp WzFdOwogCi1CRUdJTiB7CisjQkVHSU4gewogCWlmICgkXk8gZXEgJ01TV2lu MzInKSB7CiAJCXJlcXVpcmUgTmV0OjpETlM6OlJlc29sdmVyOjpXaW4zMjsK IAkJQElTQSA9IHF3KE5ldDo6RE5TOjpSZXNvbHZlcjo6V2luMzIpOwogCX0g ZWxzaWYgKCReTyBlcSAnY3lnd2luJykgewotCQlyZXF1aXJlIE5ldDo6RE5T OjpSZXNvbHZlcjo6V2luMzI7Ci0JCUBJU0EgPSBxdyhOZXQ6OkROUzo6UmVz b2x2ZXI6OldpbjMyKTsKLQl9IGVsc2UgeyAgIAorCQlyZXF1aXJlIE5ldDo6 RE5TOjpSZXNvbHZlcjo6Q3lnd2luOworCQlASVNBID0gcXcoTmV0OjpETlM6 OlJlc29sdmVyOjpDeWd3aW4pOworCX0gZWxzZSB7CiAJCXJlcXVpcmUgTmV0 OjpETlM6OlJlc29sdmVyOjpVTklYOwogCQlASVNBID0gcXcoTmV0OjpETlM6 OlJlc29sdmVyOjpVTklYKTsKIAl9Ci19CisjfQogCiBfX1BBQ0tBR0VfXy0+ aW5pdCgpOwogCg== --001485f1e94e387950048e8c928e Content-Type: text/plain; charset=us-ascii -- 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 --001485f1e94e387950048e8c928e--