Loading debian/changelog +7 −0 Original line number Diff line number Diff line libnetplus (20260404+9) unstable; urgency=medium * Remove debug std::cerr logging from udp::bind() and epoll event workers to eliminate data races on _ZSt4cerr -- Jan Koester <jan.koester@tuxist.de> Fri, 04 Apr 2026 00:00:00 +0000 libnetplus (20260404+8) unstable; urgency=medium * Fix QUIC stream limit exhaustion: increase initial_max_streams from 100 to 10M Loading src/event/epoll.cpp +0 −8 Original line number Diff line number Diff line Loading @@ -615,23 +615,17 @@ namespace netplus { pollptr.IoEventHandler(fd, flags, tid, args); } catch (NetException& e) { std::cerr << "Event error: " << e.what() << std::endl; } catch (std::exception& e) { std::cerr << "Event error: " << e.what() << std::endl; } catch (...) { std::cerr << "Event error: unknown exception" << std::endl; } } } catch (NetException& e) { std::cerr << "Poll Error: " << e.what() << std::endl; // brief pause after error to avoid busy-loop std::this_thread::sleep_for(std::chrono::milliseconds(10)); } } } catch (NetException& e) { std::cerr << "Worker thread " << tid << " exited with exception: " << e.what() << std::endl; } catch (...) { std::cerr << "Worker thread " << tid << " exited with unknown exception." << std::endl; } }); } Loading @@ -653,9 +647,7 @@ namespace netplus { try { EventWorker(helper_args->tid, helper_args->args, helper_args->eargs); } catch (NetException& e) { std::cerr << "Thread " << helper_args->tid << " exited with exception: " << e.what() << std::endl; } catch (...) { std::cerr << "Thread " << helper_args->tid << " exited with unknown exception." << std::endl; } delete helper_args; Loading src/posix/udp.cpp +0 −8 Original line number Diff line number Diff line Loading @@ -138,19 +138,11 @@ udp::udp(const std::string& uxsocket, int maxconnections, int sockopts) } void udp::bind() { std::cerr << "[UDP] bind() called on socket FD=" << _Socket << std::endl; std::cerr.flush(); if (::bind(_Socket, reinterpret_cast<sockaddr*>(&_Addr), _AddrLen) < 0) { std::cerr << "[UDP] bind() FAILED with errno=" << errno << ": " << strerror(errno) << std::endl; std::cerr.flush(); NetException e; e[NetException::Error] << "udp::bind failed: " << strerror(errno); throw e; } std::cerr << "[UDP] bind() succeeded" << std::endl; std::cerr.flush(); } void udp::listen() { Loading Loading
debian/changelog +7 −0 Original line number Diff line number Diff line libnetplus (20260404+9) unstable; urgency=medium * Remove debug std::cerr logging from udp::bind() and epoll event workers to eliminate data races on _ZSt4cerr -- Jan Koester <jan.koester@tuxist.de> Fri, 04 Apr 2026 00:00:00 +0000 libnetplus (20260404+8) unstable; urgency=medium * Fix QUIC stream limit exhaustion: increase initial_max_streams from 100 to 10M Loading
src/event/epoll.cpp +0 −8 Original line number Diff line number Diff line Loading @@ -615,23 +615,17 @@ namespace netplus { pollptr.IoEventHandler(fd, flags, tid, args); } catch (NetException& e) { std::cerr << "Event error: " << e.what() << std::endl; } catch (std::exception& e) { std::cerr << "Event error: " << e.what() << std::endl; } catch (...) { std::cerr << "Event error: unknown exception" << std::endl; } } } catch (NetException& e) { std::cerr << "Poll Error: " << e.what() << std::endl; // brief pause after error to avoid busy-loop std::this_thread::sleep_for(std::chrono::milliseconds(10)); } } } catch (NetException& e) { std::cerr << "Worker thread " << tid << " exited with exception: " << e.what() << std::endl; } catch (...) { std::cerr << "Worker thread " << tid << " exited with unknown exception." << std::endl; } }); } Loading @@ -653,9 +647,7 @@ namespace netplus { try { EventWorker(helper_args->tid, helper_args->args, helper_args->eargs); } catch (NetException& e) { std::cerr << "Thread " << helper_args->tid << " exited with exception: " << e.what() << std::endl; } catch (...) { std::cerr << "Thread " << helper_args->tid << " exited with unknown exception." << std::endl; } delete helper_args; Loading
src/posix/udp.cpp +0 −8 Original line number Diff line number Diff line Loading @@ -138,19 +138,11 @@ udp::udp(const std::string& uxsocket, int maxconnections, int sockopts) } void udp::bind() { std::cerr << "[UDP] bind() called on socket FD=" << _Socket << std::endl; std::cerr.flush(); if (::bind(_Socket, reinterpret_cast<sockaddr*>(&_Addr), _AddrLen) < 0) { std::cerr << "[UDP] bind() FAILED with errno=" << errno << ": " << strerror(errno) << std::endl; std::cerr.flush(); NetException e; e[NetException::Error] << "udp::bind failed: " << strerror(errno); throw e; } std::cerr << "[UDP] bind() succeeded" << std::endl; std::cerr.flush(); } void udp::listen() { Loading