Add Windows specific error codes to should-reconnect condition

Summary: related to T11798

Reviewers: ivica

Reviewed By: ivica

Subscribers: miljen, iljazovic

Differential Revision: https://repo.mireo.local/D28103
This commit is contained in:
Korina Šimičević
2024-02-23 10:48:21 +01:00
parent c51b570f6a
commit 20f7f2fd5d
3 changed files with 12 additions and 5 deletions

View File

@ -110,10 +110,14 @@ private:
static bool should_reconnect(error_code ec) {
using namespace asio::error;
return ec == connection_aborted || ec == not_connected ||
// note: Win ERROR_SEM_TIMEOUT == Posix ENOLINK (Reserved)
return ec.value() == 1236L || /* Win ERROR_CONNECTION_ABORTED */
ec.value() == 121L || /* Win ERROR_SEM_TIMEOUT */
ec == connection_aborted || ec == not_connected ||
ec == timed_out || ec == connection_reset ||
ec == broken_pipe || ec == asio::error::eof;
}
};

View File

@ -91,9 +91,12 @@ private:
static bool should_reconnect(error_code ec) {
using namespace asio::error;
return ec == connection_aborted || ec == not_connected
|| ec == timed_out || ec == connection_reset
|| ec == broken_pipe || ec == asio::error::eof;
// note: Win ERROR_SEM_TIMEOUT == Posix ENOLINK (Reserved)
return ec.value() == 1236L || /* Win ERROR_CONNECTION_ABORTED */
ec.value() == 121L || /* Win ERROR_SEM_TIMEOUT */
ec == connection_aborted || ec == not_connected ||
ec == timed_out || ec == connection_reset ||
ec == broken_pipe || ec == asio::error::eof;
}
};

View File

@ -255,7 +255,7 @@ struct shared_test_data {
const std::string topic = "topic";
const std::string payload = "payload";
const publish_props pub_props;
const publish_props pub_props {};
const std::string publish_qos1 = encoders::encode_publish(
1, topic, payload, qos_e::at_least_once, retain_e::no, dup_e::no, {}