update Socket interface

This commit is contained in:
MihailRis 2024-11-15 07:09:55 +03:00
parent ee0b745769
commit 4aacd130ab
3 changed files with 6 additions and 6 deletions

View File

@ -102,9 +102,9 @@ static inline int connectsocket(
}
static inline int recvsocket(
int descriptor, char* buf, size_t len, int flags
int descriptor, char* buf, size_t len
) noexcept {
return recv(descriptor, buf, len, flags);
return recv(descriptor, buf, len, 0);
}
static inline int sendsocket(
@ -146,8 +146,8 @@ public:
freeaddrinfo(addr);
}
int recv(char* buffer, size_t length, bool blocking) override {
int len = recvsocket(descriptor, buffer, length, blocking ? MSG_WAITALL : MSG_DONTWAIT);
int recv(char* buffer, size_t length) override {
int len = recvsocket(descriptor, buffer, length);
if (len == 0) {
int err = errno;
close();

View File

@ -26,7 +26,7 @@ namespace network {
class Socket {
public:
virtual int recv(char* buffer, size_t length, bool blocking) = 0;
virtual int recv(char* buffer, size_t length) = 0;
virtual int send(const char* buffer, size_t length) = 0;
virtual void close() = 0;
virtual bool isOpen() const = 0;

View File

@ -24,7 +24,7 @@ TEST(curltest, curltest) {
socket->send(string, strlen(string));
char data[1024];
int len = socket->recv(data, 1024, true);
int len = socket->recv(data, 1024);
std::cout << len << " " << std::string(data, len) << std::endl;
}