ipv6 for non-raw end works

This commit is contained in:
wangyu-
2018-07-20 04:35:25 -05:00
parent 822a807e58
commit 30eb96608d
2 changed files with 21 additions and 19 deletions

View File

@@ -175,17 +175,19 @@ char* address_t::get_ip()
int address_t::from_sockaddr(sockaddr * addr,socklen_t slen)
{
memset(&inner,0,sizeof(inner));
clear();
//memset(&inner,0,sizeof(inner));
if(addr->sa_family==AF_INET6)
{
assert(slen==sizeof(sockaddr_in6));
inner.ipv6= *( (sockaddr_in6*) addr );
//inner.ipv6= *( (sockaddr_in6*) addr );
memcpy(&inner,addr,slen);
}
else if(addr->sa_family==AF_INET)
{
assert(slen==sizeof(sockaddr_in));
inner.ipv4= *( (sockaddr_in*) addr );
//inner.ipv4= *( (sockaddr_in*) addr );
memcpy(&inner,addr,slen);
}
else
{