parse IPs with aToIPAddr()

evutil_parse_sockaddr_port() doesn't accept port zero.
This commit is contained in:
Michael Davidsaver
2020-07-28 12:25:40 -07:00
parent 4322eb1491
commit a6e7e9488d
+2 -3
View File
@@ -344,9 +344,8 @@ void SockAddr::setPort(unsigned short port)
void SockAddr::setAddress(const char *name, unsigned short port)
{
SockAddr temp;
int templen = sizeof(temp.store);
if(evutil_parse_sockaddr_port(name, &temp->sa, &templen))
SockAddr temp(AF_INET);
if(aToIPAddr(name, port, &temp->in))
throw std::runtime_error(std::string("Unable to parse as IP addresss: ")+name);
if(temp.port()==0)
temp.setPort(port);