IPv6 issue on Win32

From: MUHAMMAD ASIF <anaeem(dot)it(at)hotmail(dot)com>
To: <pgsql-hackers(at)postgresql(dot)org>
Subject: IPv6 issue on Win32
Date: 2008-10-15 14:23:43
Message-ID: BLU110-W4003725E548116945DDFC7FF300@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Hi,

I am facing issue compiling latest postgresql-8.3.4 code on windows .I installed Visual Studio 2005 Express and Microsoft windows SDK latest v6.1 on windows XP (SP2) as described by http://www.postgresql.org/docs/8.3/static/install-win32-full.html and trying to build postgresql-8.3.4, it is giving the following error message i.e.
.\src\backend\libpq\pqcomm.c(389): error C2065: 'IPPROTO_IPV6' : undeclared identifier

Microsoft SDKs\Windows\v6.1\Include\ws2def.h (407) :
IPPROTO_IPV6 requires _WIN32_WINNT grater than 0x0500 i.e.

#if(_WIN32_WINNT >= 0x0501)
IPPROTO_IPV6 = 41, // IPv6 header


#endif//(_WIN32_WINNT >= 0x0501)
src\include\pg_config_os.h (7):
That is being copied from src\include\port\win32.h . It set _WIN32_WINNT to 0x0500 i.e.
#define _WIN32_WINNT 0x0500

I removed the following line from src\include\port\win32.h(7)
#define _WIN32_WINNT 0x0500
and it started building successfully and regression is working fine too.

In the Visual Studio 2005 Professional "IPPROTO_IPV6" was defined in WinSock2.h and it is without any condition. In the latest SDK v6.1 condition _WIN32_WINNT >= 0x0501 is added around IPPROTO_IPV6 ( http://msdn.microsoft.com/en-us/library/ms738574(VS.85).aspx ).IPV6_V6ONLY is also used in the .\src\backend\libpq\pqcomm.c(386) that is for Vista or Win2008. It means that IPV6 cannot be used for building Windows 2k (_WIN32_WINNT == 0x0500) applications when using Windows SDK v6.1 or higher.

http://www.microsoft.com/technet/network/ipv6/ipv6faq.mspx
Microsoft has no plans to provide supported IPv6 protocol implementations for Windows 2000, Windows 98, and older versions of Windows.

Best Regards,
M Asif Naeem

_________________________________________________________________
Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy!
http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us

Browse pgsql-hackers by date

  From Date Subject
Next Message Decibel! 2008-10-15 14:28:43 array_length()
Previous Message Zdenek Kotala 2008-10-15 14:01:02 Re: Problem to get the tuple of a table