[Patch] SIOCGIFCONF Win95

Alexander Gottwald alexander.gottwald@informatik.tu-chemnitz.de
Thu Sep 27 02:15:00 GMT 2001


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 
< http://www.tu-chemnitz.de/~goal/xfree/cygwin1.fixed-netdev.dll.bz2 >

bye
	ago 

Please keep me CCed or CC to cygwin-xfree
-- 
 Alexander.Gottwald@informatik.tu-chemnitz.de 
 http://www.gotti.org           ICQ: 126018723
 phone: +49 3725 349 80 80	mobile: +49 172 7854017


More information about the Cygwin mailing list