You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by Tom Donovan <do...@bellatlantic.net> on 2008/06/15 20:08:44 UTC

Re: svn commit: r667153 - /apr/apr/branches/1.3.x/include/apr.hw

wrowe@apache.org wrote:
> This should not be necessary, but SDK 6.1 headers
> were broken (post Visual Studio 2005)

> +++ apr/apr/branches/1.3.x/include/apr.hw Thu Jun 12 09:32:51 2008

> +/* Restrict the server to a subset of Windows XP header files by default
>   */
> -#define _WIN32_WINNT 0x0500
> +#define _WIN32_WINNT 0x0501


I don't find this necessary with SDK6.1 on WinXP using the command-line VC9 compiler included with 
the SDK.

Is it "to pick up XP/2003 TCP/IP multicast constants" per the CHANGES file?

The concern is that it opens up the possibility of inadvertently building binaries which won't run 
on Win2k.

True, the minimum Windows platform will probably need to be bumped up soon - but since there are 
still a lot of Win2k systems in production we should probably be explicit about when that happens.

-tom-

Re: svn commit: r667153 - /apr/apr/branches/1.3.x/include/apr.hw

Posted by Tom Donovan <do...@bellatlantic.net>.
William A. Rowe, Jr. wrote:
> Tom Donovan wrote:
>>
>> I don't find this necessary with SDK6.1 on WinXP using the 
>> command-line VC9 compiler included with the SDK.
>>
>> Is it "to pick up XP/2003 TCP/IP multicast constants" per the CHANGES 
>> file?
>>
>> The concern is that it opens up the possibility of inadvertently 
>> building binaries which won't run on Win2k.
> 
> Right, understood.  What is interesting is that the constants themselves
> were not available.  If you turn on IPv6, it detects multicast now, but
> all of the multicast group constant args aren't exposed, while the 
> multicast
> API actually was before.
> 
>> True, the minimum Windows platform will probably need to be bumped up 
>> soon - but since there are still a lot of Win2k systems in production 
>> we should probably be explicit about when that happens.
> 
> You know I was very cautious about considering this change, but believe it
> is otherwise harmless for IPv4 builds, in particular.  I have an NT 4SP6
> box I can validate this against, of course.
> 
I don't think testing NT4 is necessary.
I can confirm that there is no problem with this change on Win2k-sp4 with apr 1.3.1.

My worry was that future code changes could accidentally call a WinXP-or-higher function like 
GetProcessHandleCount() without a compile error, so it might slip into a release unnoticed.

A quick inspection of the >= 0x0501 functions in the Windows headers shows this isn't a huge risk. 
Very few of these look like something likely to be added to apr, apart from IPV6.  Most are GUI 
functions.  I guess we'll just need to be careful until XP becomes the minimum apr windows platform.

-tom-

Re: svn commit: r667153 - /apr/apr/branches/1.3.x/include/apr.hw

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Tom Donovan wrote:
> 
> I don't find this necessary with SDK6.1 on WinXP using the command-line 
> VC9 compiler included with the SDK.
> 
> Is it "to pick up XP/2003 TCP/IP multicast constants" per the CHANGES file?
> 
> The concern is that it opens up the possibility of inadvertently 
> building binaries which won't run on Win2k.

Right, understood.  What is interesting is that the constants themselves
were not available.  If you turn on IPv6, it detects multicast now, but
all of the multicast group constant args aren't exposed, while the multicast
API actually was before.

> True, the minimum Windows platform will probably need to be bumped up 
> soon - but since there are still a lot of Win2k systems in production we 
> should probably be explicit about when that happens.

You know I was very cautious about considering this change, but believe it
is otherwise harmless for IPv4 builds, in particular.  I have an NT 4SP6
box I can validate this against, of course.