From dd8974eb4ae0404da6eecd55c00a663e1d468e16 Mon Sep 17 00:00:00 2001 From: Stefan Sayer Date: Thu, 25 Feb 2010 16:04:48 +0000 Subject: [PATCH] avoid that compiler warning about dereferencing type-punned pointer by copying first git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@1643 8eb893ce-cfd4-0310-b710-fb5ebe64c474 --- core/sems.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/core/sems.cpp b/core/sems.cpp index 6f5d578f..ca1e8ae7 100644 --- a/core/sems.cpp +++ b/core/sems.cpp @@ -479,8 +479,10 @@ static void getInterfaceList(int sd, std::vector >& if_ for(int i=0; isin_addr))); + inet_ntoa(sa4.sin_addr))); } } #else // defined(BSD44SOCKETS) @@ -534,8 +536,10 @@ static string getLocalIP(const string& dev_name) if(ifr.ifr_addr.sa_family==PF_INET){ struct sockaddr_in* sa = (struct sockaddr_in*)&ifr.ifr_addr; + struct sockaddr_in sa4; + memcpy(&sa4, sa, sizeof(struct sockaddr_in)); if_list.push_back(make_pair((char*)ifr.ifr_name, - inet_ntoa(sa->sin_addr))); + inet_ntoa(sa4.sin_addr))); } }