]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
multi: Warn about failing read in multi_process_file_closed() master
authorFrank Lichtenheld <frank@lichtenheld.com>
Mon, 15 Dec 2025 15:56:47 +0000 (16:56 +0100)
committerGert Doering <gert@greenie.muc.de>
Mon, 15 Dec 2025 17:24:29 +0000 (18:24 +0100)
Handle failure explicitly instead of the implicit
handling by "while (buffer_i < r)". That error
checking was previously broken but was fixed by
commit 5e5ead5ba019fc2a8266f77a7d840b30fd545198.

Reported-by: Marc Heuse <marc@srlabs.de>
Github: openvpn-private-issues#101
Change-Id: Ie982f620a8af80564a70d993e6e84ec4e525236a
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1443
Message-Id: <20251215155652.23362-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg35095.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpn/multi.c

index 92eac6ffd8ae6c78559c1d73746bd1513d34ebe6..329d0a3c3b9a3ec280fdb75cc65a3c0d935cfd3b 100644 (file)
@@ -2806,6 +2806,11 @@ multi_process_file_closed(struct multi_context *m, const unsigned int mpp_flags)
     char buffer[INOTIFY_EVENT_BUFFER_SIZE];
     ssize_t buffer_i = 0;
     ssize_t r = read(m->top.c2.inotify_fd, buffer, INOTIFY_EVENT_BUFFER_SIZE);
+    if (r < 0)
+    {
+        msg(M_WARN | M_ERRNO, "MULTI: multi_process_file_closed error");
+        return;
+    }
 
     while (buffer_i < r)
     {