Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Thu, 27 Sep 2001 11:15:20 +0200 (CEST) From: Alexander Gottwald To: cygwin AT cygwin DOT com Cc: cygwin-xfree AT sources DOT redhat DOT com Subject: [Patch] SIOCGIFCONF Win95 Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="1837512633-1488857505-1001582120=:23288" --1837512633-1488857505-1001582120=:23288 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi, On Win95, the implementation of SIOCGIFCONF seems to be wrong. For Win95a it seems to work, but Win95b and Win95c will onyl return the loopback device. Searching through the code, I found the reason in winsup/cygwin/net.c in get_95_ifconf, the registry is searched for the key HKLM/Enum/MSTCP/* which seems to represent the TCP/IP configurations. The current implementaion then searches for each entry the keys in Bindings, which represent bindings to services as Client for Windows Networks or File sharing. One of these keys is taken as reference to HKLM/System/ CurrentControlSet/Services/Class/Net/* where the network adapter is store. This seems to work on Win95a, but does often fail on Win95c. The binding to a service has IMO nothing to do with the binding to a NIC, so the connection to the NIC is stored in another way. Since there is a 1-to-1 relation between network cards and TCP configuration, no extra binding needs to be stored. The name for the adapter in HKLM/CurrentControlSet/.../Net is the same as the key in HKLM/Enum/Net/*. I modified the function in net.c and the correct number of interfaces is reported for win95a and win95c. I attached the patch. A patch cygwin1.dll is available at bye ago Please keep me CCed or CC to cygwin-xfree -- Alexander DOT Gottwald AT informatik DOT tu-chemnitz DOT de http://www.gotti.org ICQ: 126018723 phone: +49 3725 349 80 80 mobile: +49 172 7854017 --1837512633-1488857505-1001582120=:23288 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="cygwin.fixed-netdev.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="cygwin.fixed-netdev.diff" LS0tIGN5Z3dpbi0xLjMuMy0yL3dpbnN1cC9jeWd3aW4vbmV0LmNjCVdlZCBT ZXAgMTIgMDc6MzE6NTYgMjAwMQ0KKysrIGN5Z3dpbi1uZXcvd2luc3VwL2N5 Z3dpbi9uZXQuY2MJV2VkIFNlcCAyNiAyMToxMjo0NyAyMDAxDQpAQCAtMTkw NSw3ICsxOTA1LDcgQEANCiAgICAgICAgKytpKQ0KICAgICB7DQogICAgICAg SEtFWSBpZmtleSwgc3Via2V5Ow0KLSAgICAgIGNoYXIgZHJpdmVyWzI1Nl0s IGNsYXNzbmFtZVsyNTZdLCBiaW5kbmFtZVsyNTZdLCBuZXRuYW1lWzI1Nl07 DQorICAgICAgY2hhciBkcml2ZXJbMjU2XSwgY2xhc3NuYW1lWzI1Nl0sIG5l dG5hbWVbMjU2XTsNCiAgICAgICBjaGFyIGFkYXB0ZXJbMjU2XSwgaXBbMjU2 XSwgbnBbMjU2XTsNCiANCiAgICAgICBpZiAocmVzICE9IEVSUk9SX1NVQ0NF U1MNCkBAIC0xOTgxLDU3ICsxOTgxLDM0IEBADQogDQogICAgICAgUmVnQ2xv c2VLZXkgKHN1YmtleSk7DQogDQotICAgICAgaWYgKFJlZ09wZW5LZXlFeCAo aWZrZXksICJCaW5kaW5ncyIsDQotCQkJIDAsIEtFWV9SRUFELCAmc3Via2V5 KSAhPSBFUlJPUl9TVUNDRVNTKQ0KLQl7DQotCSAgUmVnQ2xvc2VLZXkgKGlm a2V5KTsNCi0JICAtLWlmcjsNCi0JICBjb250aW51ZTsNCi0JfQ0KLQ0KLSAg ICAgIGZvciAoaW50IGogPSAwOw0KLQkgICAocmVzID0gUmVnRW51bVZhbHVl IChzdWJrZXksIGosIGJpbmRuYW1lLA0KLQkJCQkoc2l6ZSA9IHNpemVvZiBi aW5kbmFtZSwgJnNpemUpLA0KLQkJCQkwLCBOVUxMLCBOVUxMLCBOVUxMKSkg IT0gRVJST1JfTk9fTU9SRV9JVEVNUzsNCi0JICAgKytqKQ0KLQlpZiAoIXN0 cm5jYXNlY21wIChiaW5kbmFtZSwgIlZSRURJUlxcIiwgNykpDQotCSAgYnJl YWs7DQorICAgICAgc3RyY3B5IChuZXRuYW1lLCAiU3lzdGVtXFxDdXJyZW50 Q29udHJvbFNldFxcU2VydmljZXNcXENsYXNzXFxOZXRcXCIpOw0KKyAgICAg IHN0cmNhdCAobmV0bmFtZSwgaWZuYW1lKTsNCiANCisgICAgICBpZiAoUmVn T3BlbktleUV4IChIS0VZX0xPQ0FMX01BQ0hJTkUsIG5ldG5hbWUsDQorICAg ICAgICAgICAgICAgICAgMCwgS0VZX1JFQUQsICZzdWJrZXkpICE9IEVSUk9S X1NVQ0NFU1MpDQorICAgICAgew0KKyAgICAgICAgICBSZWdDbG9zZUtleSAo aWZrZXkpOw0KKyAgICAgICAgICAtLWlmcjsNCisgICAgICAgICAgY29udGlu dWU7DQorICAgICAgfQ0KKw0KKyAgICAgIGlmIChSZWdRdWVyeVZhbHVlRXgg KHN1YmtleSwgIkFkYXB0ZXJOYW1lIiwgMCwNCisgICAgICAgICAgICAgICAg ICBOVUxMLCAodW5zaWduZWQgY2hhciAqKSBhZGFwdGVyLA0KKyAgICAgICAg ICAgICAgICAgIChzaXplID0gc2l6ZW9mIGFkYXB0ZXIsICZzaXplKSkgPT0g RVJST1JfU1VDQ0VTUw0KKyAgICAgICAgICAgICAgJiYgc3RyY2FzZW1hdGNo IChhZGFwdGVyLCAiTVMkUFBQIikpDQorICAgICAgew0KKyAgICAgICAgICAr KypwcHA7DQorICAgICAgICAgIHN0cmNweSAoaWZyLT5pZnJfbmFtZSwgInBw cCIpOw0KKyAgICAgICAgICBzdHJjYXQgKGlmci0+aWZyX25hbWUsIHBwcCk7 DQorICAgICAgfQ0KKyAgICAgIGVsc2UNCisgICAgICB7DQorICAgICAgICAg ICsrKmV0aDsNCisgICAgICAgICAgc3RyY3B5IChpZnItPmlmcl9uYW1lLCAi ZXRoIik7DQorICAgICAgICAgIHN0cmNhdCAoaWZyLT5pZnJfbmFtZSwgZXRo KTsNCisgICAgICB9DQorICAgICAgDQogICAgICAgUmVnQ2xvc2VLZXkgKHN1 YmtleSk7DQotDQotICAgICAgaWYgKHJlcyA9PSBFUlJPUl9TVUNDRVNTKQ0K LQl7DQotCSAgc3RyY3B5IChuZXRuYW1lLCAiU3lzdGVtXFxDdXJyZW50Q29u dHJvbFNldFxcU2VydmljZXNcXENsYXNzXFxOZXRcXCIpOw0KLQkgIHN0cmNh dCAobmV0bmFtZSwgYmluZG5hbWUgKyA3KTsNCi0NCi0JICBpZiAoUmVnT3Bl bktleUV4IChIS0VZX0xPQ0FMX01BQ0hJTkUsIG5ldG5hbWUsDQotCQkJICAg IDAsIEtFWV9SRUFELCAmc3Via2V5KSAhPSBFUlJPUl9TVUNDRVNTKQ0KLQkg ICAgew0KLQkgICAgICBSZWdDbG9zZUtleSAoaWZrZXkpOw0KLQkgICAgICAt LWlmcjsNCi0JICAgICAgY29udGludWU7DQotCSAgICB9DQotDQotCSAgaWYg KFJlZ1F1ZXJ5VmFsdWVFeCAoc3Via2V5LCAiQWRhcHRlck5hbWUiLCAwLA0K LQkJCSAgICAgICBOVUxMLCAodW5zaWduZWQgY2hhciAqKSBhZGFwdGVyLA0K LQkJCSAgICAgICAoc2l6ZSA9IHNpemVvZiBhZGFwdGVyLCAmc2l6ZSkpID09 IEVSUk9SX1NVQ0NFU1MNCi0JICAgICAgJiYgc3RyY2FzZW1hdGNoIChhZGFw dGVyLCAiTVMkUFBQIikpDQotCSAgICB7DQotCSAgICAgICsrKnBwcDsNCi0J ICAgICAgc3RyY3B5IChpZnItPmlmcl9uYW1lLCAicHBwIik7DQotCSAgICAg IHN0cmNhdCAoaWZyLT5pZnJfbmFtZSwgcHBwKTsNCi0JICAgIH0NCi0JICBl bHNlDQotCSAgICB7DQotCSAgICAgICsrKmV0aDsNCi0JICAgICAgc3RyY3B5 IChpZnItPmlmcl9uYW1lLCAiZXRoIik7DQotCSAgICAgIHN0cmNhdCAoaWZy LT5pZnJfbmFtZSwgZXRoKTsNCi0JICAgIH0NCi0NCi0JICBSZWdDbG9zZUtl eSAoc3Via2V5KTsNCi0NCi0JfQ0KLQ0KICAgICAgIFJlZ0Nsb3NlS2V5IChp ZmtleSk7DQogDQogICAgICAgKytjbnQ7DQo= --1837512633-1488857505-1001582120=:23288 Content-Type: text/plain; charset=us-ascii -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ --1837512633-1488857505-1001582120=:23288--