allow length written to be returned;

pull/72/head
Bryan Biedenkapp 1 year ago
parent 84a3d859b9
commit 538763c203

@ -77,7 +77,7 @@ UInt8Array RawFrameQueue::read(int& messageLength, sockaddr_storage& address, ui
/* Write message to the UDP socket. */
bool RawFrameQueue::write(const uint8_t* message, uint32_t length, sockaddr_storage& addr, uint32_t addrLen)
bool RawFrameQueue::write(const uint8_t* message, uint32_t length, sockaddr_storage& addr, uint32_t addrLen, ssize_t* lenWritten)
{
assert(message != nullptr);
assert(length > 0U);
@ -90,7 +90,7 @@ bool RawFrameQueue::write(const uint8_t* message, uint32_t length, sockaddr_stor
Utils::dump(1U, "RawFrameQueue::write() Message", buffer, length);
bool ret = true;
if (!m_socket->write(buffer, length, addr, addrLen)) {
if (!m_socket->write(buffer, length, addr, addrLen, lenWritten)) {
// LogError(LOG_NET, "Failed writing data to the network");
ret = false;
}

@ -67,11 +67,12 @@ namespace network
* @brief Write message to the UDP socket.
* @param[in] message Message buffer to frame and queue.
* @param length Length of message.
* @param addr IP address to write data to.
* @param address IP address to write data to.
* @param addrLen
* @param[out] lenWritten Total number of bytes written.
* @returns bool True, if message was sent, otherwise false.
*/
bool write(const uint8_t* message, uint32_t length, sockaddr_storage& addr, uint32_t addrLen);
bool write(const uint8_t* message, uint32_t length, sockaddr_storage& addr, uint32_t addrLen, ssize_t* lenWritten = nullptr);
/**
* @brief Cache message to frame queue.

Loading…
Cancel
Save

Powered by TurnKey Linux.