< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate-users] resiprocate-1.4 release candidate 1 available


Ok, thanks for the clarification.

When using the headers from the Platform SDK, that came with VisualStudio 2005, it compiles without errors. IPPROTO_IPV6 only seems not to be defined, when I use the Windows Vista SDK, but I guess that is not a Resiprocate problem :-)

best regards,
 gabriel


Adam Roach wrote:
On 10/7/08 11:48 AM, Gabriel Hege wrote:
Hi,

Resiprocate-1.4 RC1 does not compile out of the box from SVN on Windows with Visual Studio.

The problem is inconsistencies between the preprocessor constants USE_IPV6 and IPPROTO_IPV6. The former is set in all project files whereas the latter is defined nowhere. As I understand it enabling USE_IPV6 only makes sense, when IPPROTO_IPV6 is defined. Wouldn't it be possible to completely drop one of those constants and only use the other?

IPPROTO_V6 is defined by the operating system, while USE_IPV6 is defined by the build system. It would be quite reasonable to build on an operating system that supports IPv6, but build a library that does not.

In other words, they really mean very different things, and can't be combined.

That said, I think it would be reasonable to re-cast the "#ifdef USE_IPV6 ... #endif" blocks to look something like:

#ifdef USE_IPV6
#ifndef IPPROTO_IPV6
#warn IPv6 support requested, but IPPROTO_V6 undefined
#else
...
#endif
#endif

/a