2
0
Эх сурвалжийг харах

[Rspamd] Set start and end to rcpt matching regex

André 7 жил өмнө
parent
commit
353af8e3a4

+ 4 - 4
data/conf/rspamd/dynmaps/settings.php

@@ -45,9 +45,9 @@ function ucl_rcpts($object, $type) {
       $local = parse_email($row['address'])['local'];
       $domain = parse_email($row['address'])['domain'];
       if (!empty($local) && !empty($domain)) {
-        $rcpt[] = '/' . str_replace('/', '\/', $local) . '[+].*' . str_replace('/', '\/', $domain) . '/i';
+        $rcpt[] = '/^' . str_replace('/', '\/', $local) . '[+].*' . str_replace('/', '\/', $domain) . '$/i';
       }
-      $rcpt[] = '/' . str_replace('/', '\/', $row['address']) . '/i';
+      $rcpt[] = '/^' . str_replace('/', '\/', $row['address']) . '$/i';
     }
     // Aliases by alias domains
     $stmt = $pdo->prepare("SELECT CONCAT(`local_part`, '@', `alias_domain`.`alias_domain`) AS `alias` FROM `mailbox` 
@@ -63,9 +63,9 @@ function ucl_rcpts($object, $type) {
         $local = parse_email($row['alias'])['local'];
         $domain = parse_email($row['alias'])['domain'];
         if (!empty($local) && !empty($domain)) {
-          $rcpt[] = '/' . str_replace('/', '\/', $local) . '[+].*' . str_replace('/', '\/', $domain) . '/i';
+          $rcpt[] = '/^' . str_replace('/', '\/', $local) . '[+].*' . str_replace('/', '\/', $domain) . '$/i';
         }
-      $rcpt[] = '/' . str_replace('/', '\/', $row['alias']) . '/i';
+      $rcpt[] = '/^' . str_replace('/', '\/', $row['alias']) . '$/i';
       }
     }
   }