OpenTTD Source
20241108-master-g80f628063a
|
Abstraction of a network error where all implementation details of the error codes are encapsulated in this class and the abstraction layer. More...
#include <os_abstraction.h>
Public Member Functions | |
NetworkError (int error) | |
Construct the network error with the given error code. More... | |
bool | HasError () const |
Check whether an error was actually set. More... | |
bool | WouldBlock () const |
Check whether this error describes that the operation would block. More... | |
bool | IsConnectionReset () const |
Check whether this error describes a connection reset. More... | |
bool | IsConnectInProgress () const |
Check whether this error describes a connect is in progress. More... | |
const std::string & | AsString () const |
Get the string representation of the error message. More... | |
Static Public Member Functions | |
static NetworkError | GetLast () |
Get the last network error. More... | |
Private Attributes | |
int | error |
The underlying error number from errno or WSAGetLastError. | |
std::string | message |
The string representation of the error (set on first call to AsString). | |
Abstraction of a network error where all implementation details of the error codes are encapsulated in this class and the abstraction layer.
Definition at line 21 of file os_abstraction.h.
NetworkError::NetworkError | ( | int | error | ) |
Construct the network error with the given error code.
error | The error code. |
Definition at line 31 of file os_abstraction.cpp.
Referenced by GetLast().
const std::string & NetworkError::AsString | ( | ) | const |
Get the string representation of the error message.
Definition at line 80 of file os_abstraction.cpp.
References error, FS2OTTD(), and message.
Referenced by TCPConnecter::CheckActivity(), TCPConnecter::Connect(), NetworkTCPSocketHandler::ReceivePacket(), NetworkUDPSocketHandler::SendPacket(), and NetworkTCPSocketHandler::SendPackets().
|
static |
Get the last network error.
Definition at line 118 of file os_abstraction.cpp.
References NetworkError().
Referenced by TCPConnecter::CheckActivity(), TCPConnecter::Connect(), NetworkAddress::GetPeerAddress(), NetworkAddress::GetSockAddress(), ListenLoopProc(), NetworkTCPSocketHandler::ReceivePacket(), NetworkUDPSocketHandler::SendPacket(), and NetworkTCPSocketHandler::SendPackets().
bool NetworkError::HasError | ( | ) | const |
Check whether an error was actually set.
Definition at line 109 of file os_abstraction.cpp.
References error.
Referenced by TCPConnecter::CheckActivity().
bool NetworkError::IsConnectInProgress | ( | ) | const |
Check whether this error describes a connect is in progress.
Definition at line 67 of file os_abstraction.cpp.
References error.
bool NetworkError::IsConnectionReset | ( | ) | const |
Check whether this error describes a connection reset.
Definition at line 54 of file os_abstraction.cpp.
References error.
Referenced by NetworkTCPSocketHandler::ReceivePacket().
bool NetworkError::WouldBlock | ( | ) | const |
Check whether this error describes that the operation would block.
Definition at line 39 of file os_abstraction.cpp.
References error.
Referenced by NetworkTCPSocketHandler::ReceivePacket(), and NetworkTCPSocketHandler::SendPackets().