update Socket interface
This commit is contained in:
parent
ee0b745769
commit
4aacd130ab
@ -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();
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -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;
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user