summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/net/comm.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/net/comm.c b/src/net/comm.c
index 0c7d8e9..7a67c27 100644
--- a/src/net/comm.c
+++ b/src/net/comm.c
@@ -11,7 +11,7 @@ bool net_recv(const int sock, const msg_type_t type)
{
msg_t m;
bool result;
- ssize_t len = recv(sock, &m.hdr, sizeof(msg_header_t), MSG_PEEK); // just peek into packet to determine message header
+ ssize_t len = recv(sock, &m.hdr, sizeof(msg_header_t), MSG_PEEK|MSG_WAITALL); // just peek into packet to determine message header
assert(len != -1);
@@ -22,8 +22,8 @@ bool net_recv(const int sock, const msg_type_t type)
}
m.payload = malloc(m.hdr.payload_length); // Allocate space for message payload
- recv(sock, &m.hdr, sizeof(msg_header_t), 0); // Remove message header from socket
- recv(sock, m.payload, m.hdr.payload_length, 0);// And then receive the payload
+ recv(sock, &m.hdr, sizeof(msg_header_t), MSG_WAITALL); // Remove message header from socket
+ recv(sock, m.payload, m.hdr.payload_length, MSG_WAITALL);// And then receive the payload
//printf("net_recv: received msg type %d with payload length %d\n", m.hdr.type, m.hdr.payload_length);