From 077bd91f987af49d37ceacc7e74903c1ebbeb1d8 Mon Sep 17 00:00:00 2001 From: seajee Date: Sat, 13 Dec 2025 16:12:56 +0100 Subject: [PATCH] v1.7.4 Ignore signals in send and sendto --- sock.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sock.h b/sock.h index 599d764..5cccf3b 100644 --- a/sock.h +++ b/sock.h @@ -4,7 +4,7 @@ # @@@@@@ # # @ @ # # @====@ # - # @ @ sock.h - v1.7.3 # + # @ @ sock.h - v1.7.4 # # @ @ MIT License # # @@% .@ @ # # @@ @ @ https://github.com/seajee/sock.h # @@ -578,7 +578,7 @@ ssize_t sock_send(Sock *sock, const void *buf, size_t size) } while (true) { - ssize_t n = send(sock->fd, buf, size, 0); + ssize_t n = send(sock->fd, buf, size, MSG_NOSIGNAL); if (n < 0) { if (errno == EINTR) { continue; @@ -677,7 +677,8 @@ ssize_t sock_sendto(Sock *sock, const void *buf, size_t size, SockAddr addr) } while (true) { - ssize_t n = sendto(sock->fd, buf, size, 0, &addr.sockaddr, addr.len); + ssize_t n = sendto(sock->fd, buf, size, MSG_NOSIGNAL, &addr.sockaddr, + addr.len); if (n < 0) { if (errno == EINTR) { continue; @@ -820,6 +821,7 @@ void sock__convert_addr(SockAddr *addr) /* Revision history: + 1.7.4 (2025-12-13) Ignore signals in send and sendto 1.7.3 (2025-09-20) Changed sock_send_all() signature; drain buffers on sock_close() to prevent data loss 1.7.2 (2025-09-17) New functions sock_recv_all() and sock_send_all();