p2p: use a bool for send()

Identified by @selsta

Callers can otherwise misinterpret int -1 as truthy success,
e.g. see make_payload_send_txs

(cherry picked from commit 9bf193728bb11beb9c40e06a0d48d1c697fe7a84)
This commit is contained in:
j-berman
2026-10-04 18:50:22 -04:00
committed by such-gitea
parent a04ff495f7
commit f2a8c47410
4 changed files with 14 additions and 14 deletions
@@ -106,7 +106,7 @@ public:
template<class callback_t>
int invoke_async(int command, message_writer in_msg, boost::uuids::uuid connection_id, const callback_t &cb, size_t timeout = LEVIN_DEFAULT_TIMEOUT_PRECONFIGURED);
int send(epee::byte_slice message, const boost::uuids::uuid& connection_id);
bool send(epee::byte_slice message, const boost::uuids::uuid& connection_id);
bool close(boost::uuids::uuid connection_id, const bool wait_for_shutdown);
bool update_connection_context(const t_connection_context& contxt);
bool request_callback(boost::uuids::uuid connection_id);
@@ -743,8 +743,8 @@ public:
`message_writer::finalize_notify`. See additional instructions for
`make_fragmented_notify`.
\return 1 on success */
int send(byte_slice message)
\return true on success */
bool send(byte_slice message)
{
const misc_utils::auto_scope_leave_caller scope_exit_handler = misc_utils::create_scope_leave_handler(
boost::bind(&async_protocol_handler::finish_outer_call, this)
@@ -753,9 +753,9 @@ public:
if (!send_message(std::move(message)))
{
LOG_ERROR_CC(m_connection_context, "Failed to send message, dropping it");
return -1;
return false;
}
return 1;
return true;
}
//------------------------------------------------------------------------------------------
boost::uuids::uuid get_connection_id() {return m_connection_context.m_connection_id;}
@@ -935,11 +935,11 @@ void async_protocol_handler_config<t_connection_context>::set_handler(levin_comm
}
//------------------------------------------------------------------------------------------
template<class t_connection_context>
int async_protocol_handler_config<t_connection_context>::send(byte_slice message, const boost::uuids::uuid& connection_id)
bool async_protocol_handler_config<t_connection_context>::send(byte_slice message, const boost::uuids::uuid& connection_id)
{
async_protocol_handler<t_connection_context>* aph;
int r = find_and_lock_connection(connection_id, aph);
return LEVIN_OK == r ? aph->send(std::move(message)) : 0;
return LEVIN_OK == r ? aph->send(std::move(message)) : false;
}
//------------------------------------------------------------------------------------------
template<class t_connection_context>
@@ -138,10 +138,10 @@ namespace epee
levin::message_writer to_send;
stg.store_to_binary(to_send.buffer);
int res = transport.send(to_send.finalize_notify(command), conn_id);
if(res <=0 )
bool res = transport.send(to_send.finalize_notify(command), conn_id);
if(!res)
{
MERROR("Failed to notify command " << command << " return code " << res);
MERROR("Failed to notify command " << command);
return false;
}
return true;