From 2c415b6f6834d53460aadd24c1f79ea83f79b67c Mon Sep 17 00:00:00 2001 From: patrick-volante Date: Fri, 3 Dec 2021 11:58:20 +0100 Subject: [PATCH 1/2] Problem: inside the event array, epoll return an event with invalid data pointer which create a segmentation fault Tests to prevent segmentation fault due to null pointer are added. --- src/epoll.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/epoll.cpp b/src/epoll.cpp index da95bd0a..03642cf2 100644 --- a/src/epoll.cpp +++ b/src/epoll.cpp @@ -192,6 +192,10 @@ void zmq::epoll_t::loop () const poll_entry_t *const pe = static_cast (ev_buf[i].data.ptr); + if (NULL == pe) + continue; + if (NULL == pe->events) + continue; if (pe->fd == retired_fd) continue; if (ev_buf[i].events & (EPOLLERR | EPOLLHUP)) From f6eb59c26927e6029fb6c3b7c13bb42f3cc9d808 Mon Sep 17 00:00:00 2001 From: patrick-volante Date: Fri, 3 Dec 2021 16:21:51 +0100 Subject: [PATCH 2/2] issue-4312 Add relicnce file. --- RELICENSE/patrickvolante.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 RELICENSE/patrickvolante.md diff --git a/RELICENSE/patrickvolante.md b/RELICENSE/patrickvolante.md new file mode 100644 index 00000000..1f84827c --- /dev/null +++ b/RELICENSE/patrickvolante.md @@ -0,0 +1,15 @@ +# Permission to Relicense under MPLv2 or any other share-alike OSI approved license chosen by the current ZeroMQ BDFL + +This is a statement by Patrick Volante +that grants permission to relicense its copyrights in the libzmq C++ +library (ZeroMQ) under the Mozilla Public License v2 (MPLv2) or any other +share-alike Open Source Initiative approved license chosen by the current +ZeroMQ BDFL (Benevolent Dictator for Life). + +A portion of the commits made by the Github handle "patrick-volante", with +commit author "patrick-volante ", are copyright of patrick volante. +This document hereby grants the libzmq project team to relicense libzmq, +including all past, present and future contributions of the author listed above. + +Patrick Volante +03/12/2021