From e12a74854c42cb54537d737b6326d51cdbcfdb4f Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Mon, 8 Jan 2024 14:10:49 +0100 Subject: [PATCH] Allow dnsd to create udp sockets This is essential for the functioning of dnsd. --- src/dnsd/main.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/dnsd/main.rs b/src/dnsd/main.rs index 3ba52906f8..ce21854cde 100644 --- a/src/dnsd/main.rs +++ b/src/dnsd/main.rs @@ -47,7 +47,9 @@ fn run(daemon: redox_daemon::Daemon) -> Result<()> { let dnsd = Rc::new(RefCell::new(Dnsd::new(dns_file, time_file, event_queue.file.as_raw_fd()))); - syscall::setrens(0, 0).expect("dnsd: failed to enter null namespace"); + let new_ns = syscall::mkns(&[["udp".as_ptr() as usize, "udp".len()]]) + .expect("dnsd: failed to create namespace"); + syscall::setrens(new_ns, new_ns).expect("dnsd: failed to enter namespace"); daemon.ready().expect("dnsd: failed to notify parent");