16 #ifndef PSEN_SCAN_V2_STANDALONE_UTIL_IP_CONVERSION_H 
   17 #define PSEN_SCAN_V2_STANDALONE_UTIL_IP_CONVERSION_H 
   26 #include <arpa/inet.h> 
   37 inline uint32_t convertIP(
const std::string& ip)
 
   39   const auto ip_number = inet_network(ip.c_str());
 
   40   if (
static_cast<in_addr_t
>(-1) == ip_number)
 
   42     throw std::invalid_argument(
"IP invalid");
 
   44   assert(
sizeof(ip_number) == 4 && 
"ip_number has not the expected size");
 
   45   return static_cast<uint32_t
>(ip_number);
 
   50 inline uint32_t convertIP(
const std::string& ip)
 
   52   const auto ip_number = inet_addr(ip.c_str());
 
   53   if (INADDR_NONE == ip_number)
 
   55     throw std::invalid_argument(
"IP invalid");
 
   57   assert(
sizeof(ip_number) == 4 && 
"ip_number has not the expected size");
 
   58   return htonl(
static_cast<uint32_t
>(ip_number));
 
   64   if (port < std::numeric_limits<uint16_t>::min() || port > std::numeric_limits<uint16_t>::max())
 
   66     throw std::out_of_range(
"Port out of range");
 
   68   return static_cast<uint16_t
>(port);