fix ecore_con on posix systems

SVN revision: 45866
This commit is contained in:
Boris Faure 2010-02-04 10:34:08 +00:00
parent 0423e1ea99
commit fc415b4776
2 changed files with 5 additions and 8 deletions

View File

@ -1044,12 +1044,6 @@ static Ecore_Con_State svr_try_connect(Ecore_Con_Server *svr)
} }
} }
#define NIPQUAD(addr) \
((unsigned char *)&(addr))[0], \
((unsigned char *)&(addr))[1], \
((unsigned char *)&(addr))[2], \
((unsigned char *)&(addr))[3]
static char * static char *
_ecore_con_pretty_ip(struct sockaddr *client_addr, socklen_t size) _ecore_con_pretty_ip(struct sockaddr *client_addr, socklen_t size)
{ {
@ -1064,7 +1058,10 @@ _ecore_con_pretty_ip(struct sockaddr *client_addr, socklen_t size)
if (IN6_IS_ADDR_V4MAPPED(&sa6->sin6_addr)) if (IN6_IS_ADDR_V4MAPPED(&sa6->sin6_addr))
{ {
snprintf(ipbuf, sizeof (ipbuf), "%u.%u.%u.%u", snprintf(ipbuf, sizeof (ipbuf), "%u.%u.%u.%u",
NIPQUAD(sa6->sin6_addr.s6_addr32[3])); sa6->sin6_addr.s6_addr[12],
sa6->sin6_addr.s6_addr[13],
sa6->sin6_addr.s6_addr[14],
sa6->sin6_addr.s6_addr[15]);
return strdup(ipbuf); return strdup(ipbuf);
} }
} }

View File

@ -304,7 +304,7 @@ _ecore_con_info_readdata(CB_Data *cbdata)
{ {
recv = (Ecore_Con_Info *)torecv; recv = (Ecore_Con_Info *)torecv;
recv->info.ai_addr = (char *)torecv + sizeof(Ecore_Con_Info); recv->info.ai_addr = (struct sockaddr *)((char *)torecv + sizeof(Ecore_Con_Info));
if (torecv_len != (sizeof(Ecore_Con_Info) + recv->info.ai_addrlen)) if (torecv_len != (sizeof(Ecore_Con_Info) + recv->info.ai_addrlen))
recv->info.ai_canonname = (char *)torecv + sizeof(Ecore_Con_Info) + recv->info.ai_addrlen; recv->info.ai_canonname = (char *)torecv + sizeof(Ecore_Con_Info) + recv->info.ai_addrlen;
else else