Re: [Postfixadmin-devel] Please help getting my multi-string from header check matching...
Brought to you by:
christian_boltz,
gingerdog
From: Tanstaafl <tan...@li...> - 2013-03-11 12:26:41
|
On 2013-03-11 7:26 AM, Tanstaafl <tan...@li...> wrote: > Ok, first, I can definitely confirm that this is working now. Well... I spoke too soon. It is *partly* working... Apparently it is only testing the domain part of the from: address, not the local part. A vacation message was just sent - here is the (anonymized) transaction: > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:544 main:: - Script argument SMTP recipient is : 'validuser#exa...@au...' and smtp_sender : 'mai...@me...' > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:577 main:: - Converted autoreply mailbox back to normal style - from validuser#exa...@au... to val...@ex... > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:587 main:: - Email headers have to: '"User Name" <val...@ex...>' and From: '"ge...@me..." <ge...@me...>' > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:327 main::find_real_address - Found 'val...@ex...' has vacation active > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:613 main:: - Attempting to send vacation response for: <0ed...@me...> to: mai...@me..., val...@ex..., val...@ex... (test_mode = 0) > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:417 main::send_vacation_email - Asked to send vacation reply to val...@ex... thanks to <0ed...@me...> > 2013/03/11 07:51:39 DEBUG> /var/spool/vacation/vacation.pl:429 main::send_vacation_email - Will send vacation response for <0ed...@me...>: FROM: val...@ex... (orig_to: val...@ex...), TO: mai...@me...; VACATION SUBJECT: Out of Office ; VACATION BODY: Vacation Message Body As you can see the smtp_sender localpart contains 'bounce' (mailbounce@...), but the vacation message is sent. > Here are two examples of my line tripping: <snip> > In the first one, it matches 'mediapost' - but since 'bounce' comes > before 'mediapost', why didn't it say that it matched that one? The above answers this question - it isn't (must not be) testing the local part. So, how can I modify this test so that it tests the entire from: string (lo...@ex...), instead of just the domain part (example.com)? Again, here is the current test line: > elsif (/^from:.*(alerts|autoreply|bounce|constantcontact|dealradar|do-not-reply|facebook|linkedin|list-|mediapost|myspace|newsletter|noreply|no-reply|twitter).*/i) { $logger->debug("Multi-string From header matching $1 found; exiting"); exit (0); } Thanks again Rudi! Hopefully this will be the last tweak it needs. |