check if IP address is valid

This commit is contained in:
orignal
2014-01-21 18:01:11 -05:00
parent 2d428fd090
commit ddb9a6b477
3 changed files with 12 additions and 3 deletions

View File

@@ -101,7 +101,16 @@ namespace data
r += ReadString (value, s);
s.seekg (1, std::ios_base::cur); r++; // ;
if (!strcmp (key, "host"))
address.host = boost::asio::ip::address::from_string (value);
{
boost::system::error_code ecode;
address.host = boost::asio::ip::address::from_string (value, ecode);
if (ecode)
{
// TODO: we should try to resolve address here
LogPrint ("Unexpected address ", value);
SetUnreachable (true);
}
}
else if (!strcmp (key, "port"))
address.port = boost::lexical_cast<int>(value);
}