commit 89c1a4a

grunfink  ·  2025-06-03 01:31:31 +0000 UTC
parent 27caa51
Fixed regression while sending email via pipe on OpenBSD.
1 files changed,  +8, -0
+8, -0
 1@@ -13,6 +13,8 @@ void sbox_enter(const char *basedir)
 2         return;
 3     }
 4 
 5+    int smail = !xs_is_true(xs_dict_get(srv_config, "disable_email_notifications"));
 6+
 7     srv_debug(1, xs_fmt("Calling unveil()"));
 8     unveil(basedir,                "rwc");
 9     unveil("/tmp",                 "rwc");
10@@ -25,6 +27,9 @@ void sbox_enter(const char *basedir)
11     if (*address == '/')
12         unveil(address, "rwc");
13 
14+    if (smail)
15+        unveil("/usr/sbin/sendmail",   "x");
16+
17     unveil(NULL,                   NULL);
18 
19     srv_debug(1, xs_fmt("Calling pledge()"));
20@@ -34,6 +39,9 @@ void sbox_enter(const char *basedir)
21     if (*address == '/')
22         p = xs_str_cat(p, " unix");
23 
24+    if (smail)
25+        p = xs_str_cat(p, " exec");
26+
27     pledge(p, NULL);
28 }
29