From: Egor Date: Tue, 3 May 2022 13:58:08 +0000 (+0300) Subject: fix send_loc/recv_log buffer overrun X-Git-Url: https://git.patchysicp.xyz/?a=commitdiff_plain;h=bf7b307a373c8e2501007589f86e80b016ed3e19;p=patchyircd.git fix send_loc/recv_log buffer overrun --- diff --git a/NetSock/netsock.c b/NetSock/netsock.c index 322479b..f928f91 100644 --- a/NetSock/netsock.c +++ b/NetSock/netsock.c @@ -73,7 +73,7 @@ void net_cleanup(void) { // Misc ssize_t send_log(SOCKET socket, const char *buffer, size_t length, int flags) { - printf("SERVER %"PRISocket": %s", socket, (char*)buffer); + printf("SERVER %"PRISocket": %.*s", socket, (int)length, (char*)buffer); fflush(stdout); return send(socket, buffer, length, flags); } @@ -81,7 +81,7 @@ ssize_t recv_log(SOCKET socket, char *buffer, size_t length, int flags) { ssize_t bytesRead = recv(socket,buffer,length,flags); if(bytesRead > 0) { buffer[bytesRead] = 0; - printf("CLIENT %"PRISocket": %s", socket, (char*)buffer); + printf("CLIENT %"PRISocket": %.*s", socket, (int)length, (char*)buffer); fflush(stdout); } return bytesRead;