net: remove Sock default constructor, it's not necessary

This commit is contained in:
Vasil Dimov 2021-05-28 15:37:43 +02:00
parent 7829272f78
commit 5086a99b84
No known key found for this signature in database
GPG Key ID: 54DF06F64B55CBBF
5 changed files with 14 additions and 13 deletions

View File

@ -56,9 +56,10 @@ CAddress ConsumeAddress(FuzzedDataProvider& fuzzed_data_provider) noexcept
} }
FuzzedSock::FuzzedSock(FuzzedDataProvider& fuzzed_data_provider) FuzzedSock::FuzzedSock(FuzzedDataProvider& fuzzed_data_provider)
: m_fuzzed_data_provider{fuzzed_data_provider}, m_selectable{fuzzed_data_provider.ConsumeBool()} : Sock{fuzzed_data_provider.ConsumeIntegralInRange<SOCKET>(INVALID_SOCKET - 1, INVALID_SOCKET)},
m_fuzzed_data_provider{fuzzed_data_provider},
m_selectable{fuzzed_data_provider.ConsumeBool()}
{ {
m_socket = fuzzed_data_provider.ConsumeIntegralInRange<SOCKET>(INVALID_SOCKET - 1, INVALID_SOCKET);
} }
FuzzedSock::~FuzzedSock() FuzzedSock::~FuzzedSock()

View File

@ -60,7 +60,7 @@ BOOST_AUTO_TEST_CASE(move_assignment)
{ {
const SOCKET s = CreateSocket(); const SOCKET s = CreateSocket();
Sock* sock1 = new Sock(s); Sock* sock1 = new Sock(s);
Sock* sock2 = new Sock(); Sock* sock2 = new Sock(INVALID_SOCKET);
*sock2 = std::move(*sock1); *sock2 = std::move(*sock1);
delete sock1; delete sock1;
BOOST_CHECK(!SocketIsClosed(s)); BOOST_CHECK(!SocketIsClosed(s));
@ -98,7 +98,7 @@ BOOST_AUTO_TEST_CASE(send_and_receive)
SendAndRecvMessage(*sock0, *sock1); SendAndRecvMessage(*sock0, *sock1);
Sock* sock0moved = new Sock(std::move(*sock0)); Sock* sock0moved = new Sock(std::move(*sock0));
Sock* sock1moved = new Sock(); Sock* sock1moved = new Sock(INVALID_SOCKET);
*sock1moved = std::move(*sock1); *sock1moved = std::move(*sock1);
delete sock0; delete sock0;

View File

@ -106,10 +106,10 @@ constexpr auto ALL_NETWORKS = std::array{
class StaticContentsSock : public Sock class StaticContentsSock : public Sock
{ {
public: public:
explicit StaticContentsSock(const std::string& contents) : m_contents{contents} explicit StaticContentsSock(const std::string& contents)
: Sock{INVALID_SOCKET},
m_contents{contents}
{ {
// Just a dummy number that is not INVALID_SOCKET.
m_socket = INVALID_SOCKET - 1;
} }
~StaticContentsSock() override { m_socket = INVALID_SOCKET; } ~StaticContentsSock() override { m_socket = INVALID_SOCKET; }
@ -192,6 +192,11 @@ public:
return true; return true;
} }
bool IsConnected(std::string&) const override
{
return true;
}
private: private:
const std::string m_contents; const std::string m_contents;
mutable size_t m_consumed{0}; mutable size_t m_consumed{0};

View File

@ -24,8 +24,6 @@ static inline bool IOErrorIsPermanent(int err)
return err != WSAEAGAIN && err != WSAEINTR && err != WSAEWOULDBLOCK && err != WSAEINPROGRESS; return err != WSAEAGAIN && err != WSAEINTR && err != WSAEWOULDBLOCK && err != WSAEINPROGRESS;
} }
Sock::Sock() : m_socket(INVALID_SOCKET) {}
Sock::Sock(SOCKET s) : m_socket(s) {} Sock::Sock(SOCKET s) : m_socket(s) {}
Sock::Sock(Sock&& other) Sock::Sock(Sock&& other)

View File

@ -26,10 +26,7 @@ static constexpr auto MAX_WAIT_FOR_IO = 1s;
class Sock class Sock
{ {
public: public:
/** Sock() = delete;
* Default constructor, creates an empty object that does nothing when destroyed.
*/
Sock();
/** /**
* Take ownership of an existent socket. * Take ownership of an existent socket.