[fix] - fix win32_inet_pton
parent
75e8e264d6
commit
f5a488524d
|
@ -48,10 +48,25 @@ static int dummy ATTRIBUTE((unused));
|
||||||
int win32_inet_pton(int af, const char * src, void * dst)
|
int win32_inet_pton(int af, const char * src, void * dst)
|
||||||
{
|
{
|
||||||
int temp = sizeof(struct sockaddr_in);
|
int temp = sizeof(struct sockaddr_in);
|
||||||
char *srcNonConst = (char *)malloc(strlen(src)+1);
|
int ret = -1;
|
||||||
strncpy(srcNonConst,src,strlen(src));
|
int len = strlen(src) + 1;
|
||||||
WSAStringToAddress(srcNonConst,af,NULL,(LPSOCKADDR)dst,&temp);
|
wchar_t *srcNonConst = (wchar_t *)malloc(len);
|
||||||
return temp;
|
memset(srcNonConst, 0, len);
|
||||||
|
MultiByteToWideChar(CP_ACP, NULL, src, -1, srcNonConst, len);
|
||||||
|
|
||||||
|
if( WSAStringToAddress(srcNonConst,af,NULL,(LPSOCKADDR)dst,&temp) == 0 )
|
||||||
|
{
|
||||||
|
ret = 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if( WSAGetLastError() == WSAEINVAL )
|
||||||
|
{
|
||||||
|
ret = -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//free(srcNonConst);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue