From 1c2283ea17da5bbb5f4f8449a0701aaeb2c8b52b Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Sat, 7 Jun 2025 13:38:00 +0200 Subject: recipient_bcc_maps --- hosts/surtr/email/default.nix | 7 ++++++- hosts/surtr/postgresql/default.nix | 12 ++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) (limited to 'hosts') diff --git a/hosts/surtr/email/default.nix b/hosts/surtr/email/default.nix index ca5d2755..c993bb18 100644 --- a/hosts/surtr/email/default.nix +++ b/hosts/surtr/email/default.nix @@ -276,11 +276,16 @@ in { postscreen_denylist_action = "drop"; postscreen_greet_action = "enforce"; - sender_bcc_maps = ''pgsql:${pkgs.writeText "virtual_mailbox_maps.cf" '' + sender_bcc_maps = ''pgsql:${pkgs.writeText "sender_bcc_maps.cf" '' hosts = postgresql:///email dbname = email query = SELECT value FROM sender_bcc_maps WHERE key = '%s' ''}''; + recipient_bcc_maps = ''pgsql:${pkgs.writeText "recipient_bcc_maps.cf" '' + hosts = postgresql:///email + dbname = email + query = SELECT value FROM recipient_bcc_maps WHERE key = '%s' + ''}''; }; masterConfig = { "465" = { diff --git a/hosts/surtr/postgresql/default.nix b/hosts/surtr/postgresql/default.nix index 208017eb..840b46c6 100644 --- a/hosts/surtr/postgresql/default.nix +++ b/hosts/surtr/postgresql/default.nix @@ -326,6 +326,18 @@ in { ); COMMIT; + + BEGIN; + SELECT _v.register_patch('016-recipient_bcc', null, null); + + CREATE TABLE recipient_bcc_maps ( + id uuid PRIMARY KEY NOT NULL DEFAULT gen_random_uuid(), + key text NOT NULL CONSTRAINT key_not_empty CHECK (key <> '''), + value text NOT NULL CONSTRAINT value_not_empty CHECK (value <> '''), + CONSTRAINT key_unique UNIQUE (key) + ); + + COMMIT; ''} psql etebase postgres -eXf ${pkgs.writeText "etebase.sql" '' -- cgit v1.2.3