bug 1541 (was: UI bugs hampering porting effort for shaped window)

Dan Kegel dank at kegel.com
Thu Oct 30 18:51:32 CST 2003


Mike Hearn (mike_at_theoretic.com) wrote:
> On Thu, 2003-10-30 at 18:59, Rob wrote:
>> bug 1541 is still *not* fixed correctly. See when passing in NULL in windows
>> to gethostbyname, it is guarenteed to return a list of local IP addresses
>> mapped on the box. However, with WINE, passing NULL causes gethostname to be
>> passed into gethostbyname and does *not* always return back the list of
>> local IP addresses on the box. This may work on some boxes, and not others,
>> depending on how the machine is configured and if the DNS lookup on the host
>> name resolves to the local IP addresses.
> 
> Ah OK, sorry about that, I reopened the bug. Would getifaddrs() do the
> trick here? I've not done much work in our winsock code so I can't
> really help here.
> 
>> whereas if (!name) should use SIOCGIFCONF - SIOCGIFADDR or something...
> 
> Could you write a patch perhaps, as you seen to know what needs to be
> done.

getifaddrs() is indeed the right beast, though who knows, maybe you'll
have to filter out 127.0.0.1.  Hitch is, Linux doesn't provide it.
Here's an implementation I've used with good results that tries to
be portable (I've only tested it on linux, but it claims to handle Solaris):

http://kegel.com/dkftpbench/dkftpbench-0.45/getifaddrs.h
http://kegel.com/dkftpbench/dkftpbench-0.45/getifaddrs.c

Wish I had time to code a patch for you, too, but at least this might help.
- Dan

-- 
Dan Kegel
http://www.kegel.com
http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045




More information about the wine-devel mailing list