Sławomir Dworaczek wrote on 23.02.2025 10:48: > heloo > great, it works > > condition = ${if and{{match{$h_X-Bogosity:}{\N(?i)^\s*Spam\N}}\ > {bool{${lookup{$sender_address_domain}wildlsearch{/etc/exim/listy_acl/bogo_list}{false}{true}}}}}\ > > {true}{false}}
ok But there was a mistake in the last condition. Replace \$4 with \$1 > and what if I wanted to add a third condition? > > so that it checks if there is a domain OR address on the list? > after adding the line > > condition = ${if and{{match{$h_X-Bogosity:}{\N(?i)^\s*Spam\N}}\ > {bool{${lookup{$sender_address_domain}wildlsearch{/etc/exim/listy_acl/bogo_list}{false}{true}}}}}\ > > {bool{${lookup{$sender_address}wildlsearch{/etc/exim/listy_acl/bogo_list}{false}{true}}}}}\ > > {true}{false}} > > Unfortunately, it is so that you have the desired messages from the > email address, but not necessarily the rest from that domain :) > e.g. all kinds of portals with food suppliers, you have notifications > about a purchase made from one address, but 10,000 ads are coming from > the entire domain :) 1. to exclude by only sender address deny condition = ${if match{$h_X-Bogosity:}{\N(?i)^\s*Spam\b\N}{true}{false}} condition = ${lookup{$sender_address}wildlsearch{/etc/exim/listy_acl/bogo_list}{${if eq{$value}{skip}{true}{false}}}{true}} 1.1. to exclude sender domain domain.tld except sender address mailb...@domain.tld /etc/exim/listy_acl/bogo_list: mailb...@domain.tld : skip *@domain.tld 1.2. to exclude sender addresses mailb...@domain.tld and mailb...@domain.tld but not whole domain domain.tld /etc/exim/listy_acl/bogo_list: mailb...@domain.tld mailb...@domain.tld 2. to exclude by sender address AND address from From: header deny condition = ${if match{$h_X-Bogosity:}{\N(?i)^\s*Spam\b\N}{true}{false}} condition = ${if and{\ {eq{${lookup{$sender_address}wildlsearch{/etc/exim/listy_acl/bogo_list}{${if eq{$value}{skip}{skip}{ok}}}{}}}{ok}}\ {eq{${lookup{${address:${sg{${sg{$rh_From:}{:}{\\\\:}}}{\N^\s*\S+@\S+\s*(<\S+@\S+>)\N}{\$1}}}}wildlsearch{/etc/exim/listy_acl/bogo_list}{${if eq{$value}{skip}{skip}{ok}}}{}}}{ok}}\ }{false}{true}} 2.1. to exclude domain domain.tld except address mailb...@domain.tld /etc/exim/listy_acl/bogo_list: mailb...@domain.tld : skip *@domain.tld 1.2. to exclude mailb...@domain.tld and mailb...@domain.tld but not whole domain domain.tld /etc/exim/listy_acl/bogo_list: mailb...@domain.tld mailb...@domain.tld 3. to exclude by sender address OR address from From: header deny condition = ${if match{$h_X-Bogosity:}{\N(?i)^\s*Spam\b\N}{true}{false}} condition = ${lookup{$sender_address}wildlsearch{/etc/exim/listy_acl/bogo_list}{${if eq{$value}{skip}{true}{false}}}{true}} condition = ${lookup{${address:${sg{${sg{$rh_From:}{:}{\\\\:}}}{\N^\s*\S+@\S+\s*(<\S+@\S+>)\N}{\$1}}}}wildlsearch{/etc/exim/listy_acl/bogo_list}{${if eq{$value}{skip}{true}{false}}}{true}} 3.1. to exclude domain domain.tld except address mailb...@domain.tld /etc/exim/listy_acl/bogo_list: mailb...@domain.tld : skip *@domain.tld 3.2. to exclude mailb...@domain.tld and mailb...@domain.tld but not whole domain domain.tld /etc/exim/listy_acl/bogo_list: mailb...@domain.tld mailb...@domain.tld If you specify a value in the lines of the file /etc/exim/listy_acl/bogo_list with excluded addresses, for example, "ok" or "exclude" or another convenient value, then you can simplify the conditions. > regards > > ----- Original Message ----- From: "Viktor Ustiuhov via Exim-users" > <exim-users@lists.exim.org> > To: "Sławomir Dworaczek via Exim-users" <exim-users@lists.exim.org> > Sent: Sunday, February 23, 2025 3:02 AM > Subject: [exim] Re: please check the condition > > >> Sławomir Dworaczek via Exim-users wrote on 23.02.2025 2:06: >>> You're right, only 256 bytes can be in a file >>> Unfortunately, condition behaves as if it didn't work at all, all >>> emails, even those tagged spam, fall into inboxes >>> Regardless of whether they come from external or local domains >>> >>> This is a fragment of the SPAM header: >>> X-Bogofilterd: true >>> X-Bogosity: Spam, tests=bogofilter, spamicity=1.000000, version=1.2.5 >>> and this is a fragment of the HAM header: >>> X-Bogofilterd: true >>> X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.5 >> >> to exclude by sender address domain: >> >> ${if and{\ >> {match{$h_X-Bogosity:}{\N(?i)^\s*Spam\N}}\ >> >> {bool{${lookup{$sender_address_domain}wildlsearch{/etc/exim/listy_acl/bogo_list}{false}{true}}}}\ >> >> }{true}{false}} >> >> >> to exclude by sender address domain and domain from From: header (does >> not work for multiple addresses in From: header): >> >> ${if and{\ >> {match{$h_X-Bogosity:}{\N(?i)^\s*Spam\N}}\ >> >> {bool{${lookup{$sender_address_domain}wildlsearch{/etc/exim/listy_acl/bogo_list}{false}{true}}}}\ >> >> >> {bool{${lookup{${domain:${sg{${sg{$rh_From:}{:}{\\\\:}}}{\N^\s*\S+@\S+\s*(<\S+@\S+>)\N}{\$4}}}}wildlsearch{/etc/exim/listy_acl/bogo_list}{false}{true}}}}\ >> >> }{true}{false}} >> >> >> >>> If I change "if and" to "if or" it seems that searching in the domain >>> file works, but only searching, recognizing the header does not >>> >>> ${if or{\ >>> {eqi{$h_X-Bogosity:}{Spam}}\ >>> {bool{${lookup{$sender_address_domain}lsearch{/tmp/x.bogook}\{false}{true}}}}\ >>> >>> }\ {yes it it spam}{no it is not spam}\}Greetings from Silesia----- >>> Original Message -----From: "Heiko Schlittermann via Exim-users" >>> <exim-users@lists.exim.org>To: "Sławomir Dworaczek" >>> <sla...@dworaczek.info>Sent: Saturday, February 22, 2025 11:09 >>> PMSubject: [exim] Re: please check the condition>> --> ## subscription >>> configuration (requires account):> >>> ##https://lists.exim.org/mailman3/postorius/lists/exim-users.lists.exim.org/> >>> >>> ## unsubscribe (doesn't require an account):> ## >>> exim-users-unsubscr...@lists.exim.org> ## Exim details at >>> http://www.exim.org/> ## Please use the Wiki with this list - >>> http://wiki.exim.org/> >>> >> >> >> -- >> Best wishes Viktor Ustiuhov >> mailto:vic...@corvax.kiev.ua >> public GnuPG/PGP key: https://victor.corvax.kiev.ua/corvax.asc >> >> -- >> ## subscription configuration (requires account): >> ## >> https://lists.exim.org/mailman3/postorius/lists/exim-users.lists.exim.org/ >> >> ## unsubscribe (doesn't require an account): >> ## exim-users-unsubscr...@lists.exim.org >> ## Exim details at http://www.exim.org/ >> ## Please use the Wiki with this list - http://wiki.exim.org/ >> > > -- Best wishes Viktor Ustiuhov mailto:vic...@corvax.kiev.ua public GnuPG/PGP key: https://victor.corvax.kiev.ua/corvax.asc -- ## subscription configuration (requires account): ## https://lists.exim.org/mailman3/postorius/lists/exim-users.lists.exim.org/ ## unsubscribe (doesn't require an account): ## exim-users-unsubscr...@lists.exim.org ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://wiki.exim.org/