From: Maximiliano Sandoval <m.sandoval@proxmox.com>
To: pmg-devel@lists.proxmox.com
Subject: [pmg-devel] [PATCH pmg-api v2 8/9] mailqueue: make mail queue writable by pmg group
Date: Wed, 29 May 2024 16:13:02 +0200 [thread overview]
Message-ID: <20240529141303.553602-9-m.sandoval@proxmox.com> (raw)
In-Reply-To: <20240529141303.553602-1-m.sandoval@proxmox.com>
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
debian/postinst | 9 +++++++++
src/PMG/MailQueue.pm | 7 ++++---
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/debian/postinst b/debian/postinst
index 0d059af..716a5af 100644
--- a/debian/postinst
+++ b/debian/postinst
@@ -58,6 +58,15 @@ migrate_pmg_smtp_filter() {
echo "..done"
fi
+ chown :pmg /var/spool/pmg/active
+ chown :pmg /var/spool/pmg/virus
+ chown :pmg /var/spool/pmg/spam
+ chown :pmg /var/spool/pmg/attachment
+ chmod g+w /var/spool/pmg/active
+ chmod g+w /var/spool/pmg/virus
+ chmod g+w /var/spool/pmg/spam
+ chmod g+w /var/spool/pmg/attachment
+
chown :pmg /var/lib/pmg
# FIXME: This is not ideal
diff --git a/src/PMG/MailQueue.pm b/src/PMG/MailQueue.pm
index 4e37cb9..adbf28c 100644
--- a/src/PMG/MailQueue.pm
+++ b/src/PMG/MailQueue.pm
@@ -33,12 +33,13 @@ sub create_spooldirs {
"$spooldir/attachment",
]) if $cleanup;
- mkpath([
+ mkpath(
"$spooldir/active",
"$spooldir/spam",
"$spooldir/virus",
"$spooldir/attachment",
- ]);
+ { group=>'pmg', chmod=>0775 },
+ );
if ($lcid) {
mkpath "$spooldir/cluster/$lcid/virus";
@@ -68,7 +69,7 @@ sub new_fileid {
my $uid;
my $subsubdir = '';
- if (!($fh = IO::File->new ($path, 'w+', 0600))) {
+ if (!($fh = IO::File->new ($path, 'w+', 0660))) {
die "unable to create file '$path': $! : ERROR";
}
--
2.39.2
_______________________________________________
pmg-devel mailing list
pmg-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel
next prev parent reply other threads:[~2024-05-29 14:12 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-29 14:12 [pmg-devel] [PATCH pmg-api v2 0/9] fix #4926: run pmg-smtp-filter and pmgpolicy without root rights Maximiliano Sandoval
2024-05-29 14:12 ` [pmg-devel] [PATCH pmg-api v2 1/9] pmgpolicy: move pid file into /run/pmgpolicy Maximiliano Sandoval
2024-05-29 14:12 ` [pmg-devel] [PATCH pmg-api v2 2/9] pmg-smtp-filter: move pid file into /run/pmg-smtp-filter Maximiliano Sandoval
2024-05-29 14:12 ` [pmg-devel] [PATCH pmg-api v2 3/9] config: store config lock in smtp-filter runtime dir Maximiliano Sandoval
2024-05-29 14:12 ` [pmg-devel] [PATCH pmg-api v2 4/9] create new users for the rule db Maximiliano Sandoval
2024-05-29 14:12 ` [pmg-devel] [PATCH pmg-api v2 5/9] postinstall: add new user for shared functionality Maximiliano Sandoval
2024-05-29 14:13 ` [pmg-devel] [PATCH pmg-api v2 6/9] postinstall: make rrdcached be readable by the pmg group Maximiliano Sandoval
2024-05-29 14:13 ` [pmg-devel] [PATCH pmg-api v2 7/9] spamasassin: store files in dir managed by pmg Maximiliano Sandoval
2024-05-29 14:13 ` Maximiliano Sandoval [this message]
2024-05-29 14:13 ` [pmg-devel] [PATCH pmg-api v2 9/9] fix #4926: run pmg-smtp-filter and pmgpolicy without root rights Maximiliano Sandoval
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240529141303.553602-9-m.sandoval@proxmox.com \
--to=m.sandoval@proxmox.com \
--cc=pmg-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.