From 13c7a4e61e61c784e767511501fa0891c1346edd Mon Sep 17 00:00:00 2001 From: Nicholas Barbier Date: Sun, 9 Nov 2025 13:43:07 -0500 Subject: [PATCH 1/2] Replace unmaintained daemonize with cf-daemonize The daemonize crate is unmaintained and has a security advisory (RUSTSEC-2025-0069). This switches to cf-daemonize, a Cloudflare fork with the same API. Changes: - Update Cargo.toml to use cf-daemonize 0.3.0 - Update import from daemonize to cf_daemonize - Remove Stdio::keep() calls (not available in cf-daemonize 0.3.0) Daemon preserves stdio by default when not explicitly configured Fixes #699 --- pingora-core/Cargo.toml | 2 +- pingora-core/src/server/daemon.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pingora-core/Cargo.toml b/pingora-core/Cargo.toml index 7818db81..a0f4cb80 100644 --- a/pingora-core/Cargo.toml +++ b/pingora-core/Cargo.toml @@ -72,7 +72,7 @@ ouroboros = { version = "0.18.4", optional = true } lru = { version = "0.16.0", optional = true } [target.'cfg(unix)'.dependencies] -daemonize = "0.5.0" +cf-daemonize = "0.3.0" nix = "~0.24.3" [target.'cfg(windows)'.dependencies] diff --git a/pingora-core/src/server/daemon.rs b/pingora-core/src/server/daemon.rs index c45a5eeb..6901cc93 100644 --- a/pingora-core/src/server/daemon.rs +++ b/pingora-core/src/server/daemon.rs @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use daemonize::{Daemonize, Stdio}; +use cf_daemonize::{Daemonize, Stdio}; use log::{debug, error}; use std::ffi::CString; use std::fs::{self, OpenOptions}; @@ -75,7 +75,7 @@ pub fn daemonize(conf: &ServerConf) { .unwrap(); daemonize.stderr(err) } else { - daemonize.stdout(Stdio::keep()).stderr(Stdio::keep()) + daemonize }; let daemonize = match conf.user.as_ref() { From 3cb426821c252775788a8905e9f288322cd0823b Mon Sep 17 00:00:00 2001 From: Nicholas Barbier Date: Sun, 9 Nov 2025 14:44:28 -0500 Subject: [PATCH 2/2] Remove unused Stdio import --- pingora-core/src/server/daemon.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pingora-core/src/server/daemon.rs b/pingora-core/src/server/daemon.rs index 6901cc93..e66e4da1 100644 --- a/pingora-core/src/server/daemon.rs +++ b/pingora-core/src/server/daemon.rs @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -use cf_daemonize::{Daemonize, Stdio}; +use cf_daemonize::Daemonize; use log::{debug, error}; use std::ffi::CString; use std::fs::{self, OpenOptions};