From 63815b0efeb5d1f515496c9def42a524ccdbdc2c Mon Sep 17 00:00:00 2001 From: Stefan Sayer Date: Tue, 18 May 2010 10:22:16 +0000 Subject: [PATCH] fix compilation warning ( ;) ) git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@1898 8eb893ce-cfd4-0310-b710-fb5ebe64c474 --- core/sems.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/core/sems.cpp b/core/sems.cpp index 21a17169..7fff629b 100644 --- a/core/sems.cpp +++ b/core/sems.cpp @@ -280,8 +280,12 @@ static bool getInterfaceList(int sd, std::vector >& if_ for(int i=0; isin_addr))); + inet_ntoa(sa4.sin_addr))); } } #else // defined(BSD44SOCKETS) @@ -341,9 +345,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; + + // avoid dereferencing type-punned pointer below struct sockaddr_in sa4; memcpy(&sa4, sa, sizeof(struct sockaddr_in)); - if_list.push_back(make_pair((char*)ifr.ifr_name, inet_ntoa(sa4.sin_addr))); }