General > Discussion
Windows 2K testers needed
Mattn:
this error will stay until someone will implement ipv4-only code. win2k handles the ipv6 stuff different than winxp.
an ipv4 implementation would be nice. the problem is, noone on the team has those problems, and thus noone on the team really is seeing the need for this. if there is someone around here who is able to do it and willing to do it... would be cool. otherwise there will be no win2k support for 2.2
HaJo:
--- Quote from: Mattn on September 25, 2007, 11:45:52 am ---this error will stay until someone will implement ipv4-only code.
win2k handles the ipv6 stuff different than winxp.
--- End quote ---
It looks like several other projects have already encountered this problem.
There are some bugreports / patches at
* http://www.mail-archive.com/pan-devel@nongnu.org/msg00328.html
* http://bugs.xmms2.xmms.se/view.php?id=116
and a hint from http://forums.pcworld.co.nz/showthread.php?t=50226 :
--- Code: ---... include these 2 files at the end of your stdafx.h
(or at the top of your cpp files just after the stdafx.h)
#include <Ws2tcpip.h>
#include <Wspiapi.h>
You should also probably check your defines for win2k minimal support:
WINVER=0x0500;WIN32_WINNT=0x0500;_WIN32_IE=0x0600
--- End code ---
Sorry, I have no build-environment for Win2000, so I cannot check these hints.
Mattn:
afaik mingw doesn't support this yet, we would have to build two binaries for win2k and >= winxp
imo that isn't worth it, we are not supporting 7 years old solaris or linux, too
if someone is sending working patches we will of couse commit them.
zark:
Hi,
I have made a patch to make UFO 2.2 work under win2K (and possibly previous windows). (I have used the code that mattn started to write for net.c). Could you integrate it in SVN ?
It should allow to keep one binary version for all windows. The impacts on Unix binary will be null and almost inexistent for windows XP/vista (if those versions are detected, the "usual" network functions are used).
I have changed the following files:
win_main.c : built from the revision 11974
net.c : built from revision 12318
Changes:
src\ports\windows\win_main.c : small changes : I have created a new qboolean s_win2k to distinguish winXP and win2K since XP has the new network APIs. CVAR sys_os is fed accordingly.
src\common\net.c : I'm using pre processor instruction on _WIN32 (no impact on UNIX). For _win32 build, code checks the s_winNNN qboolean from win_main.c. Under winXP and vista it loads ws2_32.dll (first time it's needed) and calls the standard function (freeaddrinfo, getaddrinfo and getnameinfo). Otherwise it uses specific code (I didn't implement the full IPV6 functions but it's quite enough for IPV4)
That allows to keep one binary for all windows. It should have no impact compared to previous versions on winXP or vista (although it's not fully equivalent to the previous static DLL link)
Mattn:
where is that code located?
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version