2
0
mirror of https://github.com/boostorg/asio.git synced 2026-02-26 02:42:08 +00:00

The latest Windows SDKs don't support IPv6 when building for Windows 2000,

so we need to use the SDK emulation in that case.


[SVN r43056]
This commit is contained in:
Christopher Kohlhoff
2008-02-02 12:02:23 +00:00
parent 57f75e9a24
commit 697ef44e1c

View File

@@ -31,6 +31,10 @@
#if defined(BOOST_ASIO_HAS_OLD_WIN_SDK)
// Emulation of types that are missing from old Platform SDKs.
//
// N.B. this emulation is also used if building for a Windows 2000 target with
// a recent (i.e. Vista or later) SDK, as the SDK does not provide IPv6 support
// in that case.
namespace boost {
namespace asio {
@@ -55,9 +59,19 @@ struct sockaddr_storage_emulation
struct in6_addr_emulation
{
u_char s6_addr[16];
union
{
u_char Byte[16];
u_short Word[8];
} u;
};
#if !defined(s6_addr)
# define _S6_un u
# define _S6_u8 Byte
# define s6_addr _S6_un._S6_u8
#endif // !defined(s6_addr)
struct sockaddr_in6_emulation
{
short sin6_family;