Moved fr::TcpSocket::shutdown to fr::Socket::shutdown

This commit is contained in:
Cloaked9000 2016-12-20 10:12:13 +00:00
parent 9db918c7c2
commit 7017b64a15
4 changed files with 16 additions and 16 deletions

View File

@ -135,6 +135,17 @@ namespace fr
*/
virtual int32_t get_socket_descriptor() const = 0;
/*!
* Calls the shutdown syscall on the socket.
* So you can receive data but not send.
*
* This can be called on a blocking socket to force
* it to immediately return (you might want to do this if
* you're exiting and need the blocking socket to return).
*/
void shutdown();
protected:
std::string remote_address;
bool is_blocking;

View File

@ -91,16 +91,6 @@ public:
*/
int32_t get_socket_descriptor() const override;
/*!
* Calls the shutdown syscall on the socket.
* So you can receive data but not send.
*
* This can be called on a blocking socket to force
* it to immediately return (you might want to do this if
* you're exiting and need the blocking socket to return).
*/
void shutdown();
protected:
std::string unprocessed_buffer;
std::unique_ptr<char[]> recv_buffer;

View File

@ -80,4 +80,9 @@ namespace fr
}
return Socket::Status::Success;
}
void Socket::shutdown()
{
::shutdown(get_socket_descriptor(), 0);
}
}

View File

@ -156,10 +156,4 @@ namespace fr
{
return socket_descriptor;
}
void TcpSocket::shutdown()
{
::shutdown(socket_descriptor, 0);
}
}