From 89c1a4a94b1032aed3af293c0f04d7a8f058ccda Mon Sep 17 00:00:00 2001 From: grunfink Date: Tue, 3 Jun 2025 03:31:31 +0200 Subject: Fixed regression while sending email via pipe on OpenBSD. --- sandbox.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sandbox.c b/sandbox.c index 1ea9c1c..9e06155 100644 --- a/sandbox.c +++ b/sandbox.c @@ -13,6 +13,8 @@ void sbox_enter(const char *basedir) return; } + int smail = !xs_is_true(xs_dict_get(srv_config, "disable_email_notifications")); + srv_debug(1, xs_fmt("Calling unveil()")); unveil(basedir, "rwc"); unveil("/tmp", "rwc"); @@ -25,6 +27,9 @@ void sbox_enter(const char *basedir) if (*address == '/') unveil(address, "rwc"); + if (smail) + unveil("/usr/sbin/sendmail", "x"); + unveil(NULL, NULL); srv_debug(1, xs_fmt("Calling pledge()")); @@ -34,6 +39,9 @@ void sbox_enter(const char *basedir) if (*address == '/') p = xs_str_cat(p, " unix"); + if (smail) + p = xs_str_cat(p, " exec"); + pledge(p, NULL); } -- cgit v1.2.3