Подтвердить что ты не робот

Сопоставление кодов ошибок

Кто-нибудь знает, где найти ссылку для повышения кодов ошибок. В частности, коды ошибок, возвращаемые асинхронными обработчиками сокетов?, Google и grepping файлы заголовков настроены пустым.

4b9b3361

Ответ 1

Он выглядит (из моего относительно ограниченного googling), как это на самом деле системные коды. Подробнее здесь: http://en.highscore.de/cpp/boost/errorhandling.html

Ответ 2

Я извлек значения ошибок из asio/error.hpp в Linux (я использую только заголовок asio not boost:: asio, кстати), вот они:

asio::error::access_denied 13
asio::error::address_family_not_supported 97
asio::error::address_in_use 98
asio::error::already_connected 106
asio::error::already_started 114
asio::error::broken_pipe 32
asio::error::connection_aborted 103
asio::error::connection_refused 111
asio::error::connection_reset 104
asio::error::bad_descriptor 9
asio::error::fault 14
asio::error::host_unreachable 113
asio::error::in_progress 115
asio::error::interrupted 4
asio::error::invalid_argument 22
asio::error::message_size 90
asio::error::name_too_long 36
asio::error::network_down 100
asio::error::network_reset 102
asio::error::network_unreachable 101
asio::error::no_descriptors 24
asio::error::no_buffer_space 105
asio::error::no_memory 12
asio::error::no_permission 1
asio::error::no_protocol_option 92
asio::error::not_connected 107
asio::error::not_socket 88
asio::error::operation_aborted 125
asio::error::operation_not_supported 95
asio::error::shut_down 108
asio::error::timed_out 110
asio::error::try_again 11
asio::error::would_block 11

Если вы хотите создать свой собственный список, это должно сэкономить вам несколько минут копирования и вставки:

std::cout << "asio::error::access_denied " << asio::error::access_denied << std::endl;
std::cout << "asio::error::address_family_not_supported " << asio::error::address_family_not_supported << std::endl;
std::cout << "asio::error::address_in_use " << asio::error::address_in_use << std::endl;
std::cout << "asio::error::already_connected " << asio::error::already_connected << std::endl;
std::cout << "asio::error::already_started " << asio::error::already_started << std::endl;
std::cout << "asio::error::broken_pipe " << asio::error::broken_pipe << std::endl;
std::cout << "asio::error::connection_aborted " << asio::error::connection_aborted << std::endl;
std::cout << "asio::error::connection_refused " << asio::error::connection_refused << std::endl;
std::cout << "asio::error::connection_reset " << asio::error::connection_reset << std::endl;
std::cout << "asio::error::bad_descriptor " << asio::error::bad_descriptor << std::endl;
std::cout << "asio::error::fault " << asio::error::fault << std::endl;
std::cout << "asio::error::host_unreachable " << asio::error::host_unreachable << std::endl;
std::cout << "asio::error::in_progress " << asio::error::in_progress << std::endl;
std::cout << "asio::error::interrupted " << asio::error::interrupted << std::endl;
std::cout << "asio::error::invalid_argument " << asio::error::invalid_argument << std::endl;
std::cout << "asio::error::message_size " << asio::error::message_size << std::endl;
std::cout << "asio::error::name_too_long " << asio::error::name_too_long << std::endl;
std::cout << "asio::error::network_down " << asio::error::network_down << std::endl;
std::cout << "asio::error::network_reset " << asio::error::network_reset << std::endl;
std::cout << "asio::error::network_unreachable " << asio::error::network_unreachable << std::endl;
std::cout << "asio::error::no_descriptors " << asio::error::no_descriptors << std::endl;
std::cout << "asio::error::no_buffer_space " << asio::error::no_buffer_space << std::endl;
std::cout << "asio::error::no_memory " << asio::error::no_memory << std::endl;
std::cout << "asio::error::no_permission " << asio::error::no_permission << std::endl;
std::cout << "asio::error::no_protocol_option " << asio::error::no_protocol_option << std::endl;
std::cout << "asio::error::not_connected " << asio::error::not_connected << std::endl;
std::cout << "asio::error::not_socket " << asio::error::not_socket << std::endl;
std::cout << "asio::error::operation_aborted " << asio::error::operation_aborted << std::endl;
std::cout << "asio::error::operation_not_supported " << asio::error::operation_not_supported << std::endl;
std::cout << "asio::error::shut_down " << asio::error::shut_down << std::endl;
std::cout << "asio::error::timed_out " << asio::error::timed_out << std::endl;
std::cout << "asio::error::try_again " << asio::error::try_again << std::endl;
std::cout << "asio::error::would_block " << asio::error::would_block << std::endl;

Ответ 3

вы, скорее всего, захотите

#include <boost/asio/errors.hpp>

он включен в документацию asio .