Exemplo n.º 1
0
 asio::error_code set_option(implementation_type& impl,
     const Option& option, asio::error_code& ec)
 {
   return do_set_option(impl, option.level(impl.protocol_),
       option.name(impl.protocol_), option.data(impl.protocol_),
       option.size(impl.protocol_), ec);
 }
 asio::error_code set_option(implementation_type& impl,
     const Option& option, asio::error_code& ec)
 {
   socket_ops::setsockopt(impl.socket_, impl.state_,
       option.level(impl.protocol_), option.name(impl.protocol_),
       option.data(impl.protocol_), option.size(impl.protocol_), ec);
   return ec;
 }
 asio::error_code get_option(const implementation_type& impl,
     Option& option, asio::error_code& ec) const
 {
   std::size_t size = option.size(impl.protocol_);
   socket_ops::getsockopt(impl.socket_, impl.state_,
       option.level(impl.protocol_), option.name(impl.protocol_),
       option.data(impl.protocol_), &size, ec);
   if (!ec)
     option.resize(impl.protocol_, size);
   return ec;
 }
 std::error_code get_option(const implementation_type& impl,
     Option& option, std::error_code& ec) const
 {
   std::size_t size = option.size(impl.protocol_);
   do_get_option(impl, option.level(impl.protocol_),
       option.name(impl.protocol_),
       option.data(impl.protocol_), &size, ec);
   if (!ec)
     option.resize(impl.protocol_, size);
   return ec;
 }