]> git.proxmox.com Git - pmg-api.git/blobdiff - PMG/Quarantine.pm
PMG/RuleDB/Notify.pm: allow to use wide UTF-8 characters
[pmg-api.git] / PMG / Quarantine.pm
index c3426b9518574e74b41543a08f228f9ce9109e03..c0455abe682b782e9174e43f0cd871400173d83d 100644 (file)
@@ -83,13 +83,13 @@ sub add_to_blackwhite {
 }
 
 sub deliver_quarantined_mail {
-    my ($dbh, $ref, $targets) = @_;
+    my ($dbh, $ref, $receiver) = @_;
 
     my $filename = $ref->{file};
     my $spooldir = $PMG::MailQueue::spooldir;
     my $path = "$spooldir/$filename";
 
-    my $id = 'C' . $ref->{cid} . 'R' . $ref->{rid};
+    my $id = 'C' . $ref->{cid} . 'R' . $ref->{rid} . 'T' . $ref->{ticketid};;
 
     my $sender = 'postmaster'; # notify postmaster if something fails
 
@@ -105,7 +105,7 @@ sub deliver_quarantined_mail {
            die sprintf("smtp from error - got: %s %s\n", $smtp->code, $smtp->message);
        }
 
-       if (!$smtp->to (@$targets)) {
+       if (!$smtp->to($receiver)) {
            die sprintf("smtp to error - got: %s %s\n", $smtp->code, $smtp->message);
        }
 
@@ -144,8 +144,8 @@ sub deliver_quarantined_mail {
 
        my $sth = $dbh->prepare(
            "UPDATE CMSReceivers SET Status='D', MTime = ? " .
-           "WHERE CMailStore_CID = ? AND CMailStore_RID = ? AND PMail = ?");
-       $sth->execute(time(), $ref->{cid}, $ref->{rid}, $ref->{pmail});
+           "WHERE CMailStore_CID = ? AND CMailStore_RID = ? AND TicketID = ?");
+       $sth->execute(time(), $ref->{cid}, $ref->{rid}, $ref->{ticketid});
        $sth->finish;
     };
     my $err = $@;
@@ -170,13 +170,13 @@ sub delete_quarantined_mail {
     my $spooldir = $PMG::MailQueue::spooldir;
     my $path = "$spooldir/$filename";
 
-    my $id = 'C' . $ref->{cid} . 'R' . $ref->{rid};
+    my $id = 'C' . $ref->{cid} . 'R' . $ref->{rid} . 'T' . $ref->{ticketid};;
 
     eval {
        my $sth = $dbh->prepare(
            "UPDATE CMSReceivers SET Status='D', MTime = ? WHERE " .
-           "CMailStore_CID = ? AND CMailStore_RID = ? AND PMail = ?");
-       $sth->execute (time(), $ref->{cid}, $ref->{rid}, $ref->{pmail});
+           "CMailStore_CID = ? AND CMailStore_RID = ? AND TicketID = ?");
+       $sth->execute (time(), $ref->{cid}, $ref->{rid}, $ref->{ticketid});
        $sth->finish;
     };
     if (my $err = $@) {