diff options
author | Bernard Normier <bernard@zeroc.com> | 2012-12-26 11:25:19 -0500 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2012-12-26 11:25:19 -0500 |
commit | 75911e425d3cba4c0254e7dd2636c115a7a91053 (patch) | |
tree | a7cc1d638bc3cca65866785eef6217a4f77420ce /cpp/src/Ice/Network.h | |
parent | mingw builds now use the same COMPSUFFIX format as VC++ builds. (diff) | |
download | ice-75911e425d3cba4c0254e7dd2636c115a7a91053.tar.bz2 ice-75911e425d3cba4c0254e7dd2636c115a7a91053.tar.xz ice-75911e425d3cba4c0254e7dd2636c115a7a91053.zip |
Fixed ICE-5079: Replaced IceInternal::Address by a union to avoid reinterpret_cast and warnings
Diffstat (limited to 'cpp/src/Ice/Network.h')
-rw-r--r-- | cpp/src/Ice/Network.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/cpp/src/Ice/Network.h b/cpp/src/Ice/Network.h index 6103f98f109..52259f33630 100644 --- a/cpp/src/Ice/Network.h +++ b/cpp/src/Ice/Network.h @@ -107,7 +107,7 @@ namespace IceInternal { // -// Use Address typedef/struct depending on the platform +// Use Address struct or union depending on the platform // #ifdef ICE_OS_WINRT struct ICE_API Address @@ -116,7 +116,13 @@ struct ICE_API Address Platform::String^ port; }; #else -typedef struct sockaddr_storage Address; +union Address +{ + sockaddr sa; + sockaddr_in saIn; + sockaddr_in6 saIn6; + sockaddr_storage saStorage; +}; #endif enum SocketOperation |