From 3884abc6952e36371ba19fdc34d2200270a5b4e7 Mon Sep 17 00:00:00 2001 From: Andreas Knuth Date: Sat, 24 Jan 2026 16:56:37 -0600 Subject: [PATCH] sdfsdf --- DMS/sync_dynamodb_to_sieve.py | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/DMS/sync_dynamodb_to_sieve.py b/DMS/sync_dynamodb_to_sieve.py index cb90e6b..f2bb3d6 100644 --- a/DMS/sync_dynamodb_to_sieve.py +++ b/DMS/sync_dynamodb_to_sieve.py @@ -15,8 +15,6 @@ VMAIL_BASE = '/var/mail' dynamodb = boto3.resource('dynamodb', region_name=REGION) table = dynamodb.Table(TABLE) -import json - def generate_sieve(email, rules): """Generate Sieve script from DynamoDB rules""" lines = ['require ["copy","vacation","variables"];', ''] @@ -49,23 +47,17 @@ def generate_sieve(email, rules): if content_type == 'html': lines.extend([ f'vacation :days 1 :from "{email}" :mime text:', - # HIER ENTFERNT: Die extra Leerzeile war falsch. - # .join() macht bereits den nötigen Umbruch nach 'text:' 'Content-Type: text/html; charset=utf-8', '', msg, - '.' + '.', + ';' # <--- HIER WAR DER FEHLER ]) else: - # WICHTIG: Escape double quotes in msg, sonst Syntax-Fehler bei "I'm here" - # json.dumps erstellt einen String mit Anführungszeichen (z.B. "Text"), - # wir brauchen aber nur den escaped Inhalt. + # Sicherheitshalber JSON dump für escaping von Anführungszeichen nutzen safe_msg = json.dumps(msg, ensure_ascii=False) - # json.dumps gibt '"msg"' zurück, wir nutzen das direkt lines.append(f'vacation :days 1 :from "{email}" {safe_msg};') - # WICHTIG: Ein Sieve-Script (und speziell der Multi-Line Block) - # muss zwingend mit einem Zeilenumbruch enden. return '\n'.join(lines) + '\n' def sync():