24 unsigned int GNet::Resolver::resolveService(
const std::string & service_name ,
bool udp , std::string & error )
26 servent * service = ::getservbyname( service_name.c_str() , udp ?
"udp" :
"tcp" ) ;
29 error =
"invalid service name" ;
34 Address service_address( *service ) ;
35 return service_address.port() ;
39 std::string GNet::Resolver::resolveHost(
const std::string & host_name ,
unsigned int port , ResolverInfo & result )
41 hostent * host = ::gethostbyname( host_name.c_str() ) ;
43 return std::string(
"no such host: \"") + host_name +
"\"" ;
45 const char * h_name = host->h_name ;
46 result.update( Address(*host,port) , std::string(h_name?h_name:
"") ) ;
47 return std::string() ;