Hi list! Is anyone sucessfully running exim4u with exim 4.84? I made an update to that exim version and had to find out that several transports were broken (around remove_header, failed to expand with some sql statements etc.). I made some customizations but it looks like a general compatibility problem - can anyone confirm? Kind regards, Valki
There are two servers on which I am running 4.84 with Exim4U and I don't seem to have a problem. However, I noticed during upgrade that the 4.84 also wanted an updated version of PCRE so you may need to take care of that if you didn't already. On 3 September 2014 13:10, Gordon Dickens <gecko(a)exim4u.org> wrote:
That is interesting but should not be happening. I have not tested exim 4.84 yet but it should be backwards compatible with earlier versions...
You may want to make a post to the exim-users(a)exim.org list to inquire if they have changed something that might cause this behavior. You can subscribe to the exim-users list here:
http://www.exim.org/mailman/listinfo/exim-users
FYI,
Gordon
On 09/02/2014 03:22 AM, Valkanover Harald wrote:
Hi list!
Is anyone sucessfully running exim4u with exim 4.84? I made an update to that exim version and had to find out that several transports were broken (around remove_header, failed to expand with some sql statements etc.).
I made some customizations but it looks like a general compatibility problem - can anyone confirm?
Kind regards,
Valki
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
On 03/09/2014 11:27, Odhiambo Washington wrote:
There are two servers on which I am running 4.84 with Exim4U and I don't seem to have a problem. However, I noticed during upgrade that the 4.84 also wanted an updated version of PCRE so you may need to take care of that if you didn't already.
On 3 September 2014 13:10, Gordon Dickens <gecko(a)exim4u.org <mailto:gecko(a)exim4u.org>> wrote:
That is interesting but should not be happening. I have not tested exim 4.84 yet but it should be backwards compatible with earlier versions...
You may want to make a post to the exim-users(a)exim.org <mailto:exim-users(a)exim.org> list to inquire if they have changed something that might cause this behavior. You can subscribe to the exim-users list here:
http://www.exim.org/mailman/listinfo/exim-users
FYI,
Gordon
Hello I can confirm that this is more likely a compatibility issue. Here is what I have found so far. But I might be thoroughly mistaken (not being very experienced in such things always leaves that possibility) All routers that have header_remove and the select statement inside fails to expand, resulting in something like below 16:14:55 19977 failed to expand: select users.sa_tag * 10 from users,domains where local 16:14:55 19977 error message: missing } at end of string If you comment out the header_remove, or keep it very very simple, then it works. Reading this thread I checked my PCRE (which was latest by the way), tried different version, didn't make any difference. Also, I have other systems running older version of exim, but fairly recent (and on one particular the latest) version of PCRE, they are working without any issue. The only problem I found was the one with the latest exim. I'm *almost* certain I'm missing something, but cannot put my finger on it. Just my 2p Thank you SS
Thanks for your confirmation shamim! I tested around and found out that downgrading to exim 8.42 works while 4.84 is failing. (running pcre 8.34) Removing remove_header solves the problem (but kills features of course) while add_header doesnt seem to be making similar problems (no help in that case of course – I was just curious). While I was lazy by using exim4u it looks like the time has come to make my own hands dirty and ready through all configs and start fully understanding them :) Von: users [mailto:users-bounces(a)exim4u.org] Im Auftrag von Shamim Shahriar Gesendet: Donnerstag, 04. September 2014 01:39 An: Exim4U General Discussion Betreff: Re: [Exim4U] exim 4.84 On 03/09/2014 11:27, Odhiambo Washington wrote: There are two servers on which I am running 4.84 with Exim4U and I don't seem to have a problem. However, I noticed during upgrade that the 4.84 also wanted an updated version of PCRE so you may need to take care of that if you didn't already. On 3 September 2014 13:10, Gordon Dickens <gecko(a)exim4u.org <mailto:gecko(a)exim4u.org> > wrote: That is interesting but should not be happening. I have not tested exim 4.84 yet but it should be backwards compatible with earlier versions... You may want to make a post to the exim-users(a)exim.org <mailto:exim-users(a)exim.org> list to inquire if they have changed something that might cause this behavior. You can subscribe to the exim-users list here: http://www.exim.org/mailman/listinfo/exim-users FYI, Gordon Hello I can confirm that this is more likely a compatibility issue. Here is what I have found so far. But I might be thoroughly mistaken (not being very experienced in such things always leaves that possibility) All routers that have header_remove and the select statement inside fails to expand, resulting in something like below 16:14:55 19977 failed to expand: select users.sa_tag * 10 from users,domains where local 16:14:55 19977 error message: missing } at end of string If you comment out the header_remove, or keep it very very simple, then it works. Reading this thread I checked my PCRE (which was latest by the way), tried different version, didn't make any difference. Also, I have other systems running older version of exim, but fairly recent (and on one particular the latest) version of PCRE, they are working without any issue. The only problem I found was the one with the latest exim. I'm *almost* certain I'm missing something, but cannot put my finger on it. Just my 2p Thank you SS
On 4 Sep 2014 08:09, "Valkanover Harald" <valki(a)valki.com> wrote:
Thanks for your confirmation shamim!
I tested around and found out that downgrading to exim 8.42 works while
4.84 is failing. (running pcre 8.34)
Removing remove_header solves the problem (but kills features of course)
while add_header doesnt seem to be making similar problems (no help in that case of course – I was just curious).
While I was lazy by using exim4u it looks like the time has come to make
my own hands dirty and ready through all configs and start fully understanding them J
Thanks J for confirming that i was not doing something wrong. However, i do recall a thread in the Exim mailing list that implied, due to people going for much complex rules and thus breaking Exim in certain mission critical cases, they did something which in turn required the queries in a different pattern. But as i said before, I'm not that God in coding, so waiting for someone to get this sorted before updating the live servers. All the best SS
On 4 Sep 2014 08:09, "Valkanover Harald" <valki(a)valki.com> wrote:
Thanks for your confirmation shamim!
I tested around and found out that downgrading to exim 8.42 works while
4.84 is failing. (running pcre 8.34)
Removing remove_header solves the problem (but kills features of course)
while add_header doesnt seem to be making similar problems (no help in that case of course – I was just curious).
While I was lazy by using exim4u it looks like the time has come to make
my own hands dirty and ready through all configs and start fully understanding them J
Further search indicated that "The behaviour of expansion of arguments to math comparison functions (<, <=, =, =>, >) was unexpected, expanding the values twice. Please update your configuration if you have relied on such an expansion." ( http://svnweb.freebsd.org/ports/head/UPDATING?view=markup) Which seem to confirm to behaviour I'm experiencing. Makes me wonder how is it working properly for some and not for the others! Thanks SS
I tried to simplify matters to see where things are going wrong, and thus updated the headers_remove with fixed values (no mysql lookup) as following headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{20}{$value} } \ { eq {0}{20}{$value} } \ } {X-Spam-Score:X-Spam-Report} } the result, message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{20}{$value} } { eq {0}{20}{$value}} } {X-Spam-Score:X-Spam-Report} }": missing } at end of condition inside "or" group I also tried it without the {$value} on the second and third condition inside the OR, and the result is message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{20} } { eq {0}{20}} } {X-Spam-Score:X-Spam-Report} }": missing } at end of string Could someone please point out what I am doing wrong? Thanks SS
Dear SS, We are discussing that matter in the exim mailinglist too at the moment: https://lists.exim.org/lurker/thread/20140905.140342.50421642.en.html Just playing with the options now… kind regards, Von: users [mailto:users-bounces(a)exim4u.org] Im Auftrag von Shamim Shahriar Gesendet: Donnerstag, 04. September 2014 15:09 An: Exim4U General Discussion Betreff: Re: [Exim4U] exim 4.84 I tried to simplify matters to see where things are going wrong, and thus updated the headers_remove with fixed values (no mysql lookup) as following headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{20}{$value} } \ { eq {0}{20}{$value} } \ } {X-Spam-Score:X-Spam-Report} } the result, message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{20}{$value} } { eq {0}{20}{$value}} } {X-Spam-Score:X-Spam-Report} }": missing } at end of condition inside "or" group I also tried it without the {$value} on the second and third condition inside the OR, and the result is message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{20} } { eq {0}{20}} } {X-Spam-Score:X-Spam-Report} }": missing } at end of string Could someone please point out what I am doing wrong? Thanks SS
Hello, 2014.09.06 12:11, Valkanover Harald rašė:
Dear SS,
We are discussing that matter in the exim mailinglist too at the moment:
https://lists.exim.org/lurker/thread/20140905.140342.50421642.en.html
Just playing with the options now…
just wondering if anyone has this problem solved. I just checked the thread on exim.org and it seems to be dead without resolution. There was another related thread as well, but it appears now dead as well... It would be great to have this fixed in both Vexim and Exim4U... Rimas
On 22/09/2014 19:50, Rimas Kudelis wrote:
Hello,
2014.09.06 12:11, Valkanover Harald rašė:
Dear SS,
We are discussing that matter in the exim mailinglist too at the moment:
https://lists.exim.org/lurker/thread/20140905.140342.50421642.en.html
Just playing with the options now…
just wondering if anyone has this problem solved. I just checked the thread on exim.org and it seems to be dead without resolution. There was another related thread as well, but it appears now dead as well...
It would be great to have this fixed in both Vexim and Exim4U...
Rimas
Unfortunately no, as far as I can tell, it is still open. Jeremy suggested double colon and missing } -- both of which was tried and I sent several tests and results to Exim mailing list (following the thread at https://lists.exim.org/lurker/message/20140904.223424.6e517e28.en.html), and asked if I can/should run a few more tests and send results. I am yet to get a response to that query. Until such time as this is solved, I am unable to update exim to the latest version -- on multiple servers. So a solution will truly be highly appreciated. Thanks all Shah
Hi! I just commented out the 2 parts of the config were remove_header was used. As this seems to have cosmetical implications only we should be able to use it that way... Greets, valki Shamim Shahriar <shamim.shahriar(a)gmail.com> schrieb am 22.09.2014:
On 22/09/2014 19:50, Rimas Kudelis wrote:
Hello,
2014.09.06 12:11, Valkanover Harald rašė:
Dear SS,
We are discussing that matter in the exim mailinglist too at the moment:
https://lists.exim.org/lurker/thread/20140905.140342.50421642.en.html
Just playing with the options now…
just wondering if anyone has this problem solved. I just checked the thread on exim.org and it seems to be dead without resolution. There was another related thread as well, but it appears now dead as well...
It would be great to have this fixed in both Vexim and Exim4U...
Rimas
Unfortunately no, as far as I can tell, it is still open. Jeremy suggested double colon and missing } -- both of which was tried and I sent several tests and results to Exim mailing list (following the thread at https://lists.exim.org/lurker/message/20140904.223424.6e517e28.en.html), and asked if I can/should run a few more tests and send results. I am yet to get a response to that query.
Until such time as this is solved, I am unable to update exim to the latest version -- on multiple servers. So a solution will truly be highly appreciated.
Thanks all Shah
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Diese Nachricht wurde mit <a href="https://play.google.com/store/apps/details?id=com.onegravity.k10.pro2"><b>K-@ Mail</b></a> gesendet.
On 23/09/2014 00:32, Gordon Dickens wrote:
I have not tested exim4u with exim 4.84 and I may not have the resources or time to test it for quite a while, maybe for several months. Harald Valkanover's suggestion to comment out the headers_remove statements that are causing problems may fix the problem. Other things to try would be:
- Disable subject tagging as described in exim4u_global_spam_virus. Subject tagging may be disabled by setting the tag score in the web interface to be equal to or greater than the discard score for each user and domain. This may or may not solve the problem but is worth a try.
- Disable Spamassassin by setting SpamRejectScore = 100 in exim4u_global_spam_virus. I think that this would definitely solve the problem.
- Anybody that has the inclination is welcome to debug this problem. Please post your solution so that it can be added to the stock exim4u config.
Otherwise, you need to run an exim version prior to 4.84 until someone has the time to study this further.
FYI,
Gordon
Hi Gordon Thank you for the suggestions. The process of disabling features or removing global options, IMHO, is not a "fix", these are workarounds; and these workarounds are nothing but compromising the much needed features/functionalities that the users need/expect. Otherwise people would have used some other combination rather than Exim with exim4u or vexim. But as you stated, Exim v4.82 seem to be the last known functional setup, and hopefully people can still get by with that. As for testing and sending feedbacks, I think the people who are suffering the most are not really "programmers" in the classical sense and are merely end users with functional knowledge of what is supposed to do happen at different configuration changes -- much of the v4.84 is implying that their knowledge, may be gathered over many years, are uselss -- irrespective of whether that is intended or a software glitch, and that is what got everyone befuddled. I for example am not happy with the defunct headers_remove section which, despite the non-effective solutions suggested so far, works flawlessly with v4.82, and the same lookup mysql works elsewhere except for the headers_remove section. This, as I understand, is inconsistency -- which needs "fixing" as opposed to taking a detour. Please don't get me wrong, I do appreciate your suggestions and comments, and understand your lack of time for testing and debugging -- but that does not change the fact that both the vexim and exim4u community members (and users) are left with systems that they cannot patch, even if there is a major security issue, simply because that would make their setup disfunctional and useless. And I sincerely hope that proper solution will not take so long that by that time both the vexim and exim4u users will be forced to look for an alternate. Just my 2p Best regards Shah
Hi! +1 for the minor bug - but for lazy people like me who just want to keep up with freebsd's port collection in a binary pkgng world. - I updated :) After reading through all the configs I came tot he conclusions that personally I don't need that functionality. The mailsystem is running quite well since I made the changes, no increase in spam too. Additionally I deactivated the transparent greylisting as it doesnt seem tob e state-of-the-art anymore (an evil spammailer will resend its spam anyway.) For the headers_remove issue i commented out those 2 parts: Around line 918 # exim4u Added this for spam processing for relay domains. # exim4u header_remove to remove subject if spam or X-Spam-Report if not spam. ##headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select domains.sa_tag * 10 from domains \ ## where domain = '${quote_mysql:$domain}' \ ## and domains.spamassassin = '1'}}} \ ## {Subject}{X-Spam-Report} \ ## } Around line 1143: # exim4u header_remove to remove subject if spam or X-Spam-Report if not spam. ##headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ ## where localpart = '${quote_mysql:$local_part}' \ ## and domain = '${quote_mysql:$domain}' \ ## and users.on_spamassassin = '1' \ ## and users.domain_id=domains.domain_id }{$value}fail}} \ ## {Subject}{X-Spam-Report} \ ## } Just try it out and it should work now with 4.84 without any issues. And please dont roast me for that klingon-style-solution :) And of course: If anyone finds the time to debug those snippets in detail - you are always welcome. My suggestion is that the mysql expand fails due to a change of syntax - but only in those two examples which are a little bit more complex than the other occurences which dont make any problem. Oh yes - and credits go to my friend Karlheinz for several good hints! Good luck! Von: users [mailto:users-bounces(a)exim4u.org] Im Auftrag von Gordon Dickens Gesendet: Dienstag, 23. September 2014 03:36 An: Exim4U General Discussion Betreff: Re: [Exim4U] exim 4.84 BTW, the "security issue" that the exim developers fixed in 4.84 (and which is causing these problems) is completely trivial. As an example, Debian is not even pushing an update for this on any of their supported OSs. See: https://security-tracker.debian.org/tracker/CVE-2014-2972 At the bottom of that webpage, note the phrase "<no-dsa> (Minor issue)" for both Squeeze and Wheezy which means there will be no update because the issue is so minor that the Debian team decided not to bother. So, the exim developers have decided to throw a huge monkey wrench in our works for something that is completely trivial. That would be ok if they at least published guidelines on how to get around the incompatibilities that they introduced but they have not. Part of my problem in fixing this issue is that I am running Debian and CentOS OSs, however, they are not even implementing this security update. So, I am going to have to install a new OS to even get to an exim version that has this update or figure out how to compile exim 4.84 on Debian or CentOS which, BTW, is NOT trivial. Gordon On 09/22/2014 09:08 PM, Gordon Dickens wrote: Hi Shah, I share your frustration. It is highly unusual for software developers to put out new versions that are not backwards compatible without major rework which is what has happened with the exim developers on exim 4.84. Quite frankly, this entire episode pisses me off. I am sure that I will be able to work on this and get it solved. I am not going to abandon Exim4U. Nevertheless, I do not want to set an over optimistic expectation on when a fix will be available. Again, if anybody wants to contribute by working on Exim4U's exim configuration file, then I would appreciate your help. Otherwise, I will work on this as soon as I am able. Gordon On 09/22/2014 08:00 PM, Shamim Shahriar wrote: On 23/09/2014 00:32, Gordon Dickens wrote: I have not tested exim4u with exim 4.84 and I may not have the resources or time to test it for quite a while, maybe for several months. Harald Valkanover's suggestion to comment out the headers_remove statements that are causing problems may fix the problem. Other things to try would be: - Disable subject tagging as described in exim4u_global_spam_virus. Subject tagging may be disabled by setting the tag score in the web interface to be equal to or greater than the discard score for each user and domain. This may or may not solve the problem but is worth a try. - Disable Spamassassin by setting SpamRejectScore = 100 in exim4u_global_spam_virus. I think that this would definitely solve the problem. - Anybody that has the inclination is welcome to debug this problem. Please post your solution so that it can be added to the stock exim4u config. Otherwise, you need to run an exim version prior to 4.84 until someone has the time to study this further. FYI, Gordon Hi Gordon Thank you for the suggestions. The process of disabling features or removing global options, IMHO, is not a "fix", these are workarounds; and these workarounds are nothing but compromising the much needed features/functionalities that the users need/expect. Otherwise people would have used some other combination rather than Exim with exim4u or vexim. But as you stated, Exim v4.82 seem to be the last known functional setup, and hopefully people can still get by with that. As for testing and sending feedbacks, I think the people who are suffering the most are not really "programmers" in the classical sense and are merely end users with functional knowledge of what is supposed to do happen at different configuration changes -- much of the v4.84 is implying that their knowledge, may be gathered over many years, are uselss -- irrespective of whether that is intended or a software glitch, and that is what got everyone befuddled. I for example am not happy with the defunct headers_remove section which, despite the non-effective solutions suggested so far, works flawlessly with v4.82, and the same lookup mysql works elsewhere except for the headers_remove section. This, as I understand, is inconsistency -- which needs "fixing" as opposed to taking a detour. Please don't get me wrong, I do appreciate your suggestions and comments, and understand your lack of time for testing and debugging -- but that does not change the fact that both the vexim and exim4u community members (and users) are left with systems that they cannot patch, even if there is a major security issue, simply because that would make their setup disfunctional and useless. And I sincerely hope that proper solution will not take so long that by that time both the vexim and exim4u users will be forced to look for an alternate. Just my 2p Best regards Shah _______________________________________________ users mailing list users(a)exim4u.org <mailto:users(a)exim4u.org> https://exim4u.org/mailman/listinfo/users _______________________________________________ users mailing list users(a)exim4u.org <mailto:users(a)exim4u.org> https://exim4u.org/mailman/listinfo/users
On 23 Sep 2014 08:52, "Gordon Dickens" <gecko(a)exim4u.org> wrote:
Hi Shah,
You mentioned Vexim in the attached post and, in a post on the
exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of
Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
Thanks,
Gordon
Hi Gordon I am using vexim, on FreeBSD 9 release, currently with exim 4.82. We made some customisation for the configure in Exim, and plenty of "improvements" for the gui in vexim. Once i noticed the problems after updating Exim in one of the test servers, Google brought me to Exim4u list as the problems were similar. And as it seems, solution to one will eventually bring solution to all. Hence i put the discussion both to exim4u and Exim-user list. Hope this clears up any confusion. Thanks Shah
Hi Guys, It would appear that I haven't hit this problem because I have "SpamRejectScore: 100" on several servers that I run Exim4u+Exim-4.82. The moment I enabled that, I started seeing the errors mentioned here. So, my question would be: Why would headers_remove directive cause these internal errors? Something must have changed significantly between 4.82 and 4.83 ( I am not talking about 4.84 because it was a minor fix for 4.83). I upgraded from 4.82 to 4.84 in the machines I manage. Unfortunately, I have had SpamRejectScore at 100 on all of them for quite some time because I use other spam filtering options. I suppose and maybe someone has time to take a keen look at:: http://git.exim.org/exim.git/blob/exim-4_84:/doc/doc-txt/ChangeLog? I have looked briefly at it and I *suspect* the following changes might give a clue: -------------------------- JH/12 Expand items in router/transport headers_add or headers_remove lists 90 <http://git.exim.org/#l90> individually rather than the list as a whole. Bug 1452. 91 <http://git.exim.org/#l91> 92 <http://git.exim.org/#l92> Required for reasonable handling of multiple headers_ options when 93 <http://git.exim.org/#l93> they may be empty; requires that headers_remove items with embedded 94 <http://git.exim.org/#l94> colons must have them doubled (or the list-separator changed). ----------------- I decided to run Exim in debug mode briefly on my very busy server and here is where the errors surface on the virtual_domains router: 16:25:07 67108 expanding: ${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail} 16:25:07 67108 result: 50 16:25:07 67108 condition: >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local _part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and sers.domain_id=domains.domain_id }{$value}fail}} 16:25:07 67108 result: false 16:25:07 67108 expanding: SpamTagText 16:25:07 67108 result: SpamTagText 16:25:07 67108 skipping: result is not used 16:25:07 67108 expanding: /etc/exim/exim4u_global_spam_virus 16:25:07 67108 result: /etc/exim/exim4u_global_spam_virus 16:25:07 67108 skipping: result is not used 16:25:07 67108 expanding: X-Spam-Flag: YES\nSubject: [${lookup{SpamTagText}lsearch{/etc/exim/exim4u_global_spam_virus}}] $h_Subject:\n 16:25:07 67108 result: X-Spam-Flag: YES 16:25:07 67108 Subject: [] 16:25:07 67108 16:25:07 67108 skipping: result is not used 16:25:07 67108 expanding: X-Spam-Flag: NO\n 16:25:07 67108 result: X-Spam-Flag: NO 16:25:07 67108 16:25:07 67108 expanding: ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {X-Spam-Flag: YES\nSubject: [${lookup{SpamTagText}lsearch{/etc/exim/exim4u_global_spam_virus}}] $h_Subject:\n}{X-Spam-Flag: NO\n}} 16:25:07 67108 result: X-Spam-Flag: NO 16:25:07 67108 16:25:07 67108 expanding: $acl_m_spamscore 16:25:07 67108 result: 16:25:07 67108 empty string cast to zero for numerical comparison *16:25:07 67108 failed to expand: select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql* *16:25:07 67108 error message: "${quote_mysql" is not a known operator (or a } is missing in a variable reference)* *16:25:07 67108 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql* *16:25:07 67108 error message: "${quote_mysql" is not a known operator (or a } is missing in a variable reference)* *16:25:07 67108 failed to expand: ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_* *mysql* *16:25:07 67108 error message: "${quote_mysql" is not a known operator (or a } is missing in a variable reference)* *16:25:07 67108 virtual_domains router: defer for XXXX(a)Domain.name* 16:25:07 67108 message: virtual_domains router failed to expand "${if
={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=d omains.domain_id }{$value}fail}} {Subject}{${if eq{SPAMHEADERTYPE}{0}{X-Spam-Report}}} }": "${quote_mysql" is not a known operator (or a } is missing in a variable reference)
This is an issue directly from virtual_domains router and exactly from the headers_remove part: # exim4u: This router routes to virtual domains with spamassassin filtering virtual_domains: condition = ${if < {SPAMREJECT}{1000}} driver = redirect allow_fail data = ${lookup mysql{select smtp from users,domains \ where localpart = '${quote_mysql:$local_part}' \ and domain = '${quote_mysql:$domain}' \ and domains.enabled = '1' \ and users.enabled = '1' \ and users.domain_id = domains.domain_id}} # exim4u header_remove to remove subject if spam or X-Spam-Report if not spam and SPAMHEADERTYPE=0. headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql:$local_part}' \ and domain = '${quote_mysql:$domain}' \ and users.on_spamassassin = '1' \ and users.domain_id=domains.domain_id }{$value}fail}} \ {Subject}{${if eq{SPAMHEADERTYPE}{0}{X-Spam-Report}}} \ } # exim4u header_add to add X-Spam-Flag for all mail and rewrite Subject if spam. headers_add = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql:$local_part}' \ and domain = '${quote_mysql:$domain}' \ and users.on_spamassassin = '1' \ and users.domain_id=domains.domain_id }{$value}fail}} \ {X-Spam-Flag: YES\nSubject: [SPAMTAGTEXT] $h_Subject:\n}{X-Spam-Flag: NO\n}\ } # local_part_suffix = -* # local_part_suffix_optional retry_use_local_part # file_transport = virtual_delivery file_transport = dovecot_virtual_delivery reply_transport = address_reply pipe_transport = address_pipe So, Gordon, can you possibly take a look at the query again to see where you can introduce improvements. Given that Jeremy Harris did some work around this portion, I have taken the liberty to request for his input on the same. He is not subscribed to this list and might get really pissed off, or this mail might end up as spam, but let me try:) PS: Jeremy, I hope I don't piss you off with this. Please advise us on what's wrong with our headers_remove query since Exim-4.8{3|4} and thank you in advance. On 23 September 2014 15:46, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
On 23 Sep 2014 08:52, "Gordon Dickens" <gecko(a)exim4u.org> wrote:
Hi Shah,
You mentioned Vexim in the attached post and, in a post on the
exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of
Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
Thanks,
Gordon
Hi Gordon
I am using vexim, on FreeBSD 9 release, currently with exim 4.82. We made some customisation for the configure in Exim, and plenty of "improvements" for the gui in vexim. Once i noticed the problems after updating Exim in one of the test servers, Google brought me to Exim4u list as the problems were similar. And as it seems, solution to one will eventually bring solution to all. Hence i put the discussion both to exim4u and Exim-user list.
Hope this clears up any confusion.
Thanks Shah
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
Hi Gordon, 2014.09.23 10:52, Gordon Dickens wrote:
You mentioned Vexim in the attached post and, in a post on the exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem. The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon). This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later. By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently. Rimas
Hi Rimas, Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us... Gordon On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
Hi Gordon,
2014.09.23 10:52, Gordon Dickens wrote:
You mentioned Vexim in the attached post and, in a post on the exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim? to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem.
The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon).
This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later.
By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently.
Rimas
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
Hi Gordon, He did a reply to all. Let me fwd it to you. He actually suggested the solution. On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
Hi Gordon,
2014.09.23 10:52, Gordon Dickens wrote:
You mentioned Vexim in the attached post and, in a post on the exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem.
The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon).
This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later.
By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently.
Rimas
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
Hi Gordon, He did a Reply-all and so you perhaps need to release his mail from the moderation of this list. Anyway, as I suspected, he simply said the following: <quote> *See the changes file. The colon in headers-remove now matters.* </quote> And I know that makes sense for you:-) On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
Hi Gordon,
2014.09.23 10:52, Gordon Dickens wrote:
You mentioned Vexim in the attached post and, in a post on the exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem.
The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon).
This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later.
By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently.
Rimas
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
Hi Gordon, I already posted his reply. It was a one liner actually. All he said was: "See the changes file. The colon in headers-remove now matters." On 25 September 2014 14:02, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Odhiambo,
This list is setup to reject posters that are not subscribed and so his post unfortunately got rejected.... So, if you don't mind, please forward his reply.
Thanks!
Gordon
On 09/25/2014 05:59 AM, Odhiambo Washington wrote:
Hi Gordon,
He did a Reply-all and so you perhaps need to release his mail from the moderation of this list.
Anyway, as I suspected, he simply said the following:
<quote> *See the changes file. The colon in headers-remove now matters.* </quote>
And I know that makes sense for you:-)
On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
Hi Gordon,
2014.09.23 10:52, Gordon Dickens wrote:
You mentioned Vexim in the attached post and, in a post on the exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem.
The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon).
This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later.
By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently.
Rimas
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
setup: FreeBSD 9 Stable Exim version : 4.84 Vexim latest, with local modification that does not interfere with Exim itself I have run a few tests (both configuration part and result part is given below), and it appears that for some reason the headers_remove -- or more precisely the lookup mysql inside headers_remove -- is not taking more than a certain number of characters as condition. snippets: 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca Please note the last line, where it stopped at the same length. Thoughts? anyone capable of looking through the code to see if that is the case (I am, by no means, even remotely qualified to do it, otherwise I would have looked it up myself). Thanks Shah Test 01 :: double colons ------------------------- headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} } Result: ------- 15:45:32 53510 expanding: ${if >{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {X-Spam-Flag: YES\n}{} } 15:45:32 53510 result: X-Spam-Flag: YES 15:45:32 53510 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 expanding: 1 15:45:32 53510 result: 1 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string inside "or{...}" condition 15:45:32 53510 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:45:32 53510 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domai ns where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition ============================ Test 02 :: remove mysql_quote ----------------------------- headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} } Result: ------- 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 expanding: 1 15:54:32 54370 result: 1 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string inside "or{...}" condition 15:54:32 54370 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:54:32 54370 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition ============================ Test 03 :: put the variables properly ------------------------------------- headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} } Result: ------- 15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 expanding: 1 15:59:39 55092 result: 1 15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string inside "or{...}" condition 15:59:39 55092 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:59:39 55092 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition ============================ Test 04 :: tick all the mysql query ------------------------------------- headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 1 \ and `users.domain_id`='domains.domain_id'}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 0 \ and `users.domain_id`='domains.domain_id'}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} } Result: ------- 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 expanding: 1 16:04:55 55934 result: 1 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string inside "or{...}" condition 16:04:55 55934 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 16:04:55 55934 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 1 and `users.domain_id`='domains.domain_id'}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 0 and `users.domain_id`='domains.domain_id'}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition 16:04:55 55934 added retry item for R:postmaster(a)diagnosis.lan.cps-intl.org: errno=-1 more_errno=0 flags=0 On 25 September 2014 12:09, Gordon Dickens <gecko(a)exim4u.org> wrote:
Ah... OK. I thought that there may be more to it than that. However, that's fine and I appreciate the tip.
Gordon
On 09/25/2014 07:07 AM, Odhiambo Washington wrote:
Hi Gordon,
I already posted his reply. It was a one liner actually.
All he said was:
"See the changes file. The colon in headers-remove now matters."
On 25 September 2014 14:02, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Odhiambo,
This list is setup to reject posters that are not subscribed and so his post unfortunately got rejected.... So, if you don't mind, please forward his reply.
Thanks!
Gordon
On 09/25/2014 05:59 AM, Odhiambo Washington wrote:
Hi Gordon,
He did a Reply-all and so you perhaps need to release his mail from the moderation of this list.
Anyway, as I suspected, he simply said the following:
<quote> *See the changes file. The colon in headers-remove now matters.* </quote>
And I know that makes sense for you:-)
On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
Hi Gordon,
2014.09.23 10:52, Gordon Dickens wrote:
You mentioned Vexim in the attached post and, in a post on the exim-users(a)exim.org mailing list, you said that you were using Vexim. So, please clarify; Are you using Exim4U or Vexim?
Also, others have mentioned Vexim too. So, I ask the same question of Rimas Kudelis, Harald Valkanover and anyone else having this problem; Are you using Exim4U or Vexim?
to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem.
The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon).
This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later.
By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently.
Rimas
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
just for fun, I changed the configuration to the the one below, and the result seem to support my earlier statement headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ } {X-Spam-Score::X-Spam-Report} } 16:16:03 58090 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains }{$value}fa On 25 September 2014 16:14, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
setup: FreeBSD 9 Stable Exim version : 4.84 Vexim latest, with local modification that does not interfere with Exim itself
I have run a few tests (both configuration part and result part is given below), and it appears that for some reason the headers_remove -- or more precisely the lookup mysql inside headers_remove -- is not taking more than a certain number of characters as condition.
snippets: 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca
Please note the last line, where it stopped at the same length.
Thoughts? anyone capable of looking through the code to see if that is the case (I am, by no means, even remotely qualified to do it, otherwise I would have looked it up myself).
Thanks Shah
Test 01 :: double colons -------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:45:32 53510 expanding: ${if >{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {X-Spam-Flag: YES\n}{} } 15:45:32 53510 result: X-Spam-Flag: YES 15:45:32 53510 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 expanding: 1 15:45:32 53510 result: 1 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string inside "or{...}" condition 15:45:32 53510 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:45:32 53510 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domai ns where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 02 :: remove mysql_quote -----------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 expanding: 1 15:54:32 54370 result: 1 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string inside "or{...}" condition 15:54:32 54370 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:54:32 54370 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 03 :: put the variables properly -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: -------
15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 expanding: 1 15:59:39 55092 result: 1 15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string inside "or{...}" condition 15:59:39 55092 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:59:39 55092 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 04 :: tick all the mysql query -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 1 \ and `users.domain_id`='domains.domain_id'}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 0 \ and `users.domain_id`='domains.domain_id'}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 expanding: 1 16:04:55 55934 result: 1 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string inside "or{...}" condition 16:04:55 55934 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 16:04:55 55934 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 1 and `users.domain_id`='domains.domain_id'}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 0 and `users.domain_id`='domains.domain_id'}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition 16:04:55 55934 added retry item for R:postmaster(a)diagnosis.lan.cps-intl.org: errno=-1 more_errno=0 flags=0
On 25 September 2014 12:09, Gordon Dickens <gecko(a)exim4u.org> wrote:
Ah... OK. I thought that there may be more to it than that. However, that's fine and I appreciate the tip.
Gordon
On 09/25/2014 07:07 AM, Odhiambo Washington wrote:
Hi Gordon,
I already posted his reply. It was a one liner actually.
All he said was:
"See the changes file. The colon in headers-remove now matters."
On 25 September 2014 14:02, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Odhiambo,
This list is setup to reject posters that are not subscribed and so his post unfortunately got rejected.... So, if you don't mind, please forward his reply.
Thanks!
Gordon
On 09/25/2014 05:59 AM, Odhiambo Washington wrote:
Hi Gordon,
He did a Reply-all and so you perhaps need to release his mail from the moderation of this list.
Anyway, as I suspected, he simply said the following:
<quote> *See the changes file. The colon in headers-remove now matters.* </quote>
And I know that makes sense for you:-)
On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
Hi Gordon,
2014.09.23 10:52, Gordon Dickens wrote:
> You mentioned Vexim in the attached post and, in a post on the > exim-users(a)exim.org mailing list, you said that you were using > Vexim. > So, please clarify; Are you using Exim4U or Vexim? > > Also, others have mentioned Vexim too. So, I ask the same question > of > Rimas Kudelis, Harald Valkanover and anyone else having this problem; > Are you using Exim4U or Vexim? > to be fair, I use Vexim, but only on one server, which still runs Debian Squeeze. Hence, I'm not directly suffering from this problem.
The reason why I follow this list and sometimes participate in it is because I also happen to be the current maintainer/reviewer of Vexim (although I've been quite passive in that regard recently, and I don't expect this to change back anytime soon).
This particular problem we're discussing here was registered as Vexim issue #21 almost four weeks ago ( https://github.com/avleen/vexim2/issues/21 ), and I would like to fix it on our side, hoping that somebody will find a solution rather sooner than later.
By the way, do you think it would be possible to have a working cooperation between Vexim and Exim4U? After all, we do share a lot of common code, and it doesn't seem very feasible to work on two copies of it independently.
Rimas
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
Hi sham! I can second that! As soon as the condition is too complex/long -> the expand fails. Shamim Shahriar <shamim.shahriar(a)gmail.com> schrieb am 25.09.2014:
just for fun, I changed the configuration to the the one below, and the result seem to support my earlier statement
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ } {X-Spam-Score::X-Spam-Report} }
16:16:03 58090 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains }{$value}fa
On 25 September 2014 16:14, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
setup: FreeBSD 9 Stable Exim version : 4.84 Vexim latest, with local modification that does not interfere with Exim itself
I have run a few tests (both configuration part and result part is given below), and it appears that for some reason the headers_remove -- or more precisely the lookup mysql inside headers_remove -- is not taking more than a certain number of characters as condition.
snippets: 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca
Please note the last line, where it stopped at the same length.
Thoughts? anyone capable of looking through the code to see if that is the case (I am, by no means, even remotely qualified to do it, otherwise I would have looked it up myself).
Thanks Shah
Test 01 :: double colons -------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:45:32 53510 expanding: ${if >{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {X-Spam-Flag: YES\n}{} } 15:45:32 53510 result: X-Spam-Flag: YES 15:45:32 53510 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 expanding: 1 15:45:32 53510 result: 1 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string inside "or{...}" condition 15:45:32 53510 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:45:32 53510 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domai ns where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 02 :: remove mysql_quote -----------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 expanding: 1 15:54:32 54370 result: 1 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string inside "or{...}" condition 15:54:32 54370 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:54:32 54370 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 03 :: put the variables properly -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: -------
15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 expanding: 1 15:59:39 55092 result: 1 15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string inside "or{...}" condition 15:59:39 55092 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:59:39 55092 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 04 :: tick all the mysql query -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 1 \ and `users.domain_id`='domains.domain_id'}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 0 \ and `users.domain_id`='domains.domain_id'}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 expanding: 1 16:04:55 55934 result: 1 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string inside "or{...}" condition 16:04:55 55934 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 16:04:55 55934 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 1 and `users.domain_id`='domains.domain_id'}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 0 and `users.domain_id`='domains.domain_id'}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition 16:04:55 55934 added retry item for R:postmaster(a)diagnosis.lan.cps-intl.org: errno=-1 more_errno=0 flags=0
On 25 September 2014 12:09, Gordon Dickens <gecko(a)exim4u.org> wrote:
Ah... OK. I thought that there may be more to it than that. However, that's fine and I appreciate the tip.
Gordon
On 09/25/2014 07:07 AM, Odhiambo Washington wrote:
Hi Gordon,
I already posted his reply. It was a one liner actually.
All he said was:
"See the changes file. The colon in headers-remove now matters."
On 25 September 2014 14:02, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Odhiambo,
This list is setup to reject posters that are not subscribed and so his post unfortunately got rejected.... So, if you don't mind, please forward his reply.
Thanks!
Gordon
On 09/25/2014 05:59 AM, Odhiambo Washington wrote:
Hi Gordon,
He did a Reply-all and so you perhaps need to release his mail from the moderation of this list.
Anyway, as I suspected, he simply said the following:
<quote> *See the changes file. The colon in headers-remove now matters.* </quote>
And I know that makes sense for you:-)
On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
> Hi Gordon, > > 2014.09.23 10:52, Gordon Dickens wrote: > >> You mentioned Vexim in the attached post and, in a post on the >> exim-users(a)exim.org mailing list, you said that you were using >> Vexim. >> So, please clarify; Are you using Exim4U or Vexim? >> >> Also, others have mentioned Vexim too. So, I ask the same question >> of >> Rimas Kudelis, Harald Valkanover and anyone else having this problem; >> Are you using Exim4U or Vexim? >> > to be fair, I use Vexim, but only on one server, which still runs > Debian > Squeeze. Hence, I'm not directly suffering from this problem. > > The reason why I follow this list and sometimes participate in it is > because I also happen to be the current maintainer/reviewer of Vexim > (although I've been quite passive in that regard recently, and I don't > expect this to change back anytime soon). > > This particular problem we're discussing here was registered as Vexim > issue #21 almost four weeks ago ( > https://github.com/avleen/vexim2/issues/21 ), and I would like to > fix it > on our side, hoping that somebody will find a solution rather sooner > than later. > > By the way, do you think it would be possible to have a working > cooperation between Vexim and Exim4U? After all, we do share a lot of > common code, and it doesn't seem very feasible to work on two copies > of > it independently. > > Rimas > > _______________________________________________ > users mailing list > users(a)exim4u.org > https://exim4u.org/mailman/listinfo/users >
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
------------------------------------------------------------------------
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Diese Nachricht wurde mit <a href="https://play.google.com/store/apps/details?id=com.onegravity.k10.pro2"><b>K-@ Mail</b></a> gesendet.
Hi Valki, thanks for the confirmation. Much appreciated. I think this is more about length rather than the complexity -- which I think are different issues. But let us not quibble over semantics. Do we have anyone from the Exim team in this list who can find some time to check and verify this? Or even if not from the Exim team, anyone with enough knowledge of the code to check and confirm if this is the correct diagnosis? Thanks Shah On 25 September 2014 16:28, Harald Valkanover <valki(a)valki.com> wrote:
Hi sham! I can second that! As soon as the condition is too complex/long -> the expand fails.
Shamim Shahriar <shamim.shahriar(a)gmail.com> schrieb am 25.09.2014:
just for fun, I changed the configuration to the the one below, and the result seem to support my earlier statement
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ } {X-Spam-Score::X-Spam-Report} }
16:16:03 58090 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains }{$value}fa
On 25 September 2014 16:14, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
setup: FreeBSD 9 Stable Exim version : 4.84 Vexim latest, with local modification that does not interfere with Exim itself
I have run a few tests (both configuration part and result part is given below), and it appears that for some reason the headers_remove -- or more precisely the lookup mysql inside headers_remove -- is not taking more than a certain number of characters as condition.
snippets: 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca
Please note the last line, where it stopped at the same length.
Thoughts? anyone capable of looking through the code to see if that is the case (I am, by no means, even remotely qualified to do it, otherwise I would have looked it up myself).
Thanks Shah
Test 01 :: double colons -------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:45:32 53510 expanding: ${if >{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {X-Spam-Flag: YES\n}{} } 15:45:32 53510 result: X-Spam-Flag: YES 15:45:32 53510 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 expanding: 1 15:45:32 53510 result: 1 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string inside "or{...}" condition 15:45:32 53510 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:45:32 53510 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domai ns where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 02 :: remove mysql_quote -----------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 expanding: 1 15:54:32 54370 result: 1 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string inside "or{...}" condition 15:54:32 54370 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:54:32 54370 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 03 :: put the variables properly -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: -------
15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 expanding: 1 15:59:39 55092 result: 1 15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string inside "or{...}" condition 15:59:39 55092 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:59:39 55092 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 04 :: tick all the mysql query -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 1 \ and `users.domain_id`='domains.domain_id'}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 0 \ and `users.domain_id`='domains.domain_id'}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 expanding: 1 16:04:55 55934 result: 1 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string inside "or{...}" condition 16:04:55 55934 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 16:04:55 55934 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 1 and `users.domain_id`='domains.domain_id'}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 0 and `users.domain_id`='domains.domain_id'}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition 16:04:55 55934 added retry item for R:postmaster(a)diagnosis.lan.cps-intl.org: errno=-1 more_errno=0 flags=0
On 25 September 2014 12:09, Gordon Dickens <gecko(a)exim4u.org> wrote:
Ah... OK. I thought that there may be more to it than that. However, that's fine and I appreciate the tip.
Gordon
On 09/25/2014 07:07 AM, Odhiambo Washington wrote:
Hi Gordon,
I already posted his reply. It was a one liner actually.
All he said was:
"See the changes file. The colon in headers-remove now matters."
On 25 September 2014 14:02, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Odhiambo,
This list is setup to reject posters that are not subscribed and so his post unfortunately got rejected.... So, if you don't mind, please forward his reply.
Thanks!
Gordon
On 09/25/2014 05:59 AM, Odhiambo Washington wrote:
Hi Gordon,
He did a Reply-all and so you perhaps need to release his mail from the moderation of this list.
Anyway, as I suspected, he simply said the following:
<quote> *See the changes file. The colon in headers-remove now matters.* </quote>
And I know that makes sense for you:-)
On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
> Hi Rimas, > > Its perfectly fine for you to lurk and post here while using Vexim. > I just like to know since there are significant differences as I mentioned > in my earlier reply to Shah. And yes, I would definitely endorse a working > cooperation between Vexim and Exim4U. Both projects would benefit by > sharing one another's work which I am all for. 24 hours just isn't enough > time in a day for any of us... > > Gordon > > > > > On 09/23/2014 02:56 PM, Rimas Kudelis wrote: > >> Hi Gordon, >> >> 2014.09.23 10:52, Gordon Dickens wrote: >> >>> You mentioned Vexim in the attached post and, in a post on the >>> exim-users(a)exim.org mailing list, you said that you were using >>> Vexim. >>> So, please clarify; Are you using Exim4U or Vexim? >>> >>> Also, others have mentioned Vexim too. So, I ask the same >>> question of >>> Rimas Kudelis, Harald Valkanover and anyone else having this >>> problem; >>> Are you using Exim4U or Vexim? >>> >> to be fair, I use Vexim, but only on one server, which still runs >> Debian >> Squeeze. Hence, I'm not directly suffering from this problem. >> >> The reason why I follow this list and sometimes participate in it is >> because I also happen to be the current maintainer/reviewer of Vexim >> (although I've been quite passive in that regard recently, and I >> don't >> expect this to change back anytime soon). >> >> This particular problem we're discussing here was registered as >> Vexim >> issue #21 almost four weeks ago ( >> https://github.com/avleen/vexim2/issues/21 ), and I would like to >> fix it >> on our side, hoping that somebody will find a solution rather sooner >> than later. >> >> By the way, do you think it would be possible to have a working >> cooperation between Vexim and Exim4U? After all, we do share a lot >> of >> common code, and it doesn't seem very feasible to work on two >> copies of >> it independently. >> >> Rimas >> >> _______________________________________________ >> users mailing list >> users(a)exim4u.org >> https://exim4u.org/mailman/listinfo/users >> > > > _______________________________________________ > users mailing list > users(a)exim4u.org > https://exim4u.org/mailman/listinfo/users >
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
------------------------------
users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Diese Nachricht wurde mit *K-@ Mail* <https://play.google.com/store/apps/details?id=com.onegravity.k10.pro2> gesendet.
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it? On 2014 m. rugsėjis 25 d. 18:20:26 EEST, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
just for fun, I changed the configuration to the the one below, and the result seem to support my earlier statement
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ }{$value}fail}} } \ } {X-Spam-Score::X-Spam-Report} }
16:16:03 58090 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains }{$value}fa
On 25 September 2014 16:14, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
setup: FreeBSD 9 Stable Exim version : 4.84 Vexim latest, with local modification that does not interfere with Exim itself
I have run a few tests (both configuration part and result part is given below), and it appears that for some reason the headers_remove -- or more precisely the lookup mysql inside headers_remove -- is not taking more than a certain number of characters as condition.
snippets: 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca
Please note the last line, where it stopped at the same length.
Thoughts? anyone capable of looking through the code to see if that is the case (I am, by no means, even remotely qualified to do it, otherwise I would have looked it up myself).
Thanks Shah
Test 01 :: double colons -------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:45:32 53510 expanding: ${if >{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {X-Spam-Flag: YES\n}{} } 15:45:32 53510 result: X-Spam-Flag: YES 15:45:32 53510 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 expanding: 1 15:45:32 53510 result: 1 15:45:32 53510 expanding: $spam_score_int 15:45:32 53510 result: 27 15:45:32 53510 failed to expand: select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string 15:45:32 53510 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:45:32 53510 error message: missing } at end of string inside "or{...}" condition 15:45:32 53510 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:45:32 53510 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domai ns where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 02 :: remove mysql_quote -----------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '{$local_part}' \ and domain = '{$domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 expanding: 1 15:54:32 54370 result: 1 15:54:32 54370 expanding: $spam_score_int 15:54:32 54370 result: 27 15:54:32 54370 failed to expand: select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string 15:54:32 54370 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:54:32 54370 error message: missing } at end of string inside "or{...}" condition 15:54:32 54370 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:54:32 54370 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '{$local_part}' and domain = '{$domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 03 :: put the variables properly -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${local_part}' \ and domain = '${domain}' \ and users.on_spamassassin = 0 \ and users.domain_id=domains.domain_id}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: -------
15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 expanding: 1 15:59:39 55092 result: 1 15:59:39 55092 expanding: $spam_score_int 15:59:39 55092 result: 27 15:59:39 55092 failed to expand: select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string 15:59:39 55092 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where local 15:59:39 55092 error message: missing } at end of string inside "or{...}" condition 15:59:39 55092 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 15:59:39 55092 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 1 and users.domain_id=domains.domain_id}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${local_part}' and domain = '${domain}' and users.on_spamassassin = 0 and users.domain_id=domains.domain_id}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition
============================ Test 04 :: tick all the mysql query -------------------------------------
headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 1 \ and `users.domain_id`='domains.domain_id'}{$value}fail}} } \ { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where `localpart` = '${quote_mysql::$local_part}' \ and `domain` = '${quote_mysql::$domain}' \ and `users.on_spamassassin` = 0 \ and `users.domain_id`='domains.domain_id'}{$value}fail}}} \ } {X-Spam-Score::X-Spam-Report} }
Result: ------- 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 expanding: 1 16:04:55 55934 result: 1 16:04:55 55934 expanding: $spam_score_int 16:04:55 55934 result: 27 16:04:55 55934 failed to expand: select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string 16:04:55 55934 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `loca 16:04:55 55934 error message: missing } at end of string inside "or{...}" condition 16:04:55 55934 virtual_domains router: defer for postmaster(a)diagnosis.lan.cps-intl.org 16:04:55 55934 message: virtual_domains router failed to expand "${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 1 and `users.domain_id`='domains.domain_id'}{$value}fail}} } { eq {0}{${lookup mysql{select users.sa_tag * 10 from users,domains where `localpart` = '${quote_mysql::$local_part}' and `domain` = '${quote_mysql::$domain}' and `users.on_spamassassin` = 0 and `users.domain_id`='domains.domain_id'}{$value}fail}}} } {X-Spam-Score::X-Spam-Report} }": missing } at end of string inside "or{...}" condition 16:04:55 55934 added retry item for R:postmaster(a)diagnosis.lan.cps-intl.org: errno=-1 more_errno=0 flags=0
On 25 September 2014 12:09, Gordon Dickens <gecko(a)exim4u.org> wrote:
Ah... OK. I thought that there may be more to it than that. However, that's fine and I appreciate the tip.
Gordon
On 09/25/2014 07:07 AM, Odhiambo Washington wrote:
Hi Gordon,
I already posted his reply. It was a one liner actually.
All he said was:
"See the changes file. The colon in headers-remove now matters."
On 25 September 2014 14:02, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Odhiambo,
This list is setup to reject posters that are not subscribed and so his post unfortunately got rejected.... So, if you don't mind, please forward his reply.
Thanks!
Gordon
On 09/25/2014 05:59 AM, Odhiambo Washington wrote:
Hi Gordon,
He did a Reply-all and so you perhaps need to release his mail from the moderation of this list.
Anyway, as I suspected, he simply said the following:
<quote> *See the changes file. The colon in headers-remove now matters.* </quote>
And I know that makes sense for you:-)
On 25 September 2014 05:48, Gordon Dickens <gecko(a)exim4u.org> wrote:
That sounds great! I look forward to seeing his email. I haven't seen it yet so please forward it to me.
Thanks,
Gordon
On 09/24/2014 04:02 PM, Odhiambo Washington wrote:
Hi Gordon,
He did a reply to all.
Let me fwd it to you. He actually suggested the solution.
On Wednesday, 24 September 2014, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Rimas,
Its perfectly fine for you to lurk and post here while using Vexim. I just like to know since there are significant differences as I mentioned in my earlier reply to Shah. And yes, I would definitely endorse a working cooperation between Vexim and Exim4U. Both projects would benefit by sharing one another's work which I am all for. 24 hours just isn't enough time in a day for any of us...
Gordon
On 09/23/2014 02:56 PM, Rimas Kudelis wrote:
> Hi Gordon, > > 2014.09.23 10:52, Gordon Dickens wrote: > >> You mentioned Vexim in the attached post and, in a post on the >> exim-users(a)exim.org mailing list, you said that you were using >> Vexim. >> So, please clarify; Are you using Exim4U or Vexim? >> >> Also, others have mentioned Vexim too. So, I ask the same question >> of >> Rimas Kudelis, Harald Valkanover and anyone else having this problem; >> Are you using Exim4U or Vexim? >> > to be fair, I use Vexim, but only on one server, which still runs > Debian > Squeeze. Hence, I'm not directly suffering from this problem. > > The reason why I follow this list and sometimes participate in it is > because I also happen to be the current maintainer/reviewer of Vexim > (although I've been quite passive in that regard recently, and I don't > expect this to change back anytime soon). > > This particular problem we're discussing here was registered as Vexim > issue #21 almost four weeks ago ( > https://github.com/avleen/vexim2/issues/21 ), and I would like to > fix it > on our side, hoping that somebody will find a solution rather sooner > than later. > > By the way, do you think it would be possible to have a working > cooperation between Vexim and Exim4U? After all, we do share a lot of > common code, and it doesn't seem very feasible to work on two copies > of > it independently. > > Rimas > > _______________________________________________ > users mailing list > users(a)exim4u.org > https://exim4u.org/mailman/listinfo/users >
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254733744121/+254722743223 "I can't hear you -- I'm using the scrambler."
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
------------------------------------------------------------------------
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
-- Išsiųsta iš mano Android įrenginio naudojant „K-9 Mail“.
On 25/09/2014 19:14, Rimas Kudelis wrote:
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it?
Tried a few more things, most importantly tried to change this into a macro as per example from here http://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_exim_run_tim... point 8 Thus, created a Macro like below (above router definition) SA_Query = select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = 1 \ and users.domain_id=domains.domain_id; both with double and single colon, and got the same error as before. Then changed the Macro to below SA_Query = select users.sa_tag * 10 from users,domains ; And lo! the error changed to below 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f 22:48:49 16989 error message: syntax error in "lookup" item - "fail" expected 22:48:49 16989 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f 22:48:49 16989 error message: syntax error in "lookup" item - "fail" expected inside "or{...}" condition 22:48:49 16989 virtual_domains router: defer for Which looks like the same length issue to me (but to be quite honest, had a very very long day and I am not that confident on my findings -- brain is not functioning at optimum level now :P). I do recall in one of the emails I read someone suggested using Macros instead of long query, and thought it would work. But apparently it will not -- given that all macro is blown to full within the headers_remove section, which in turn is exhibiting that length limit issue which got us to this situation on the first place. So, what other things can/shall we try? Ideas? All the best Shah
On 25/09/2014 23:17, Shamim Shahriar wrote:
On 25/09/2014 19:14, Rimas Kudelis wrote:
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it?
Rimas, you wanted to see a length change factor, sorry I forgot to add this bit. With SA_Query = select users.sa_tag * 10 from users,domains ; the error is 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f and with SA_Query = select users.sa_tag * 10 from users,domains (the line literally ends at the last s) the error is 23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai putting them together, I'd say they do exhibit the symptoms of length issues 23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f And then, I changed it to something even shorter SA_Query = select users.sa_tag from users,domains and that expanded to 23:30:13 23669 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag from users,domains}{$value}fail}} } 23:30:13 23669 error message: invalid integer "2 which indicates that the query part of it /did/ work out (even though the result did not have any meaning, but the 'select' part worked) when it was shortened to an impractical (IMHO) length. I cannot think of any practical/functional query that I can fit in this short length -- but then again, I am not a sql expert, maybe someone with a better knowledge can fit that long query into this smaller space -- but I surely cannot. Does is help in what you are looking for? I need to turn in now. All the best Shah
Hello All now I am even more convinced that it is not just the "lookup mysql", but the entire headers_remove is suffering. Please find below the changes I made and the results I received. Thanks Shah ---- change: SA_Query = select sa_tag from users limit 1 result: 09:30:08 17194 expanding: ${lookup mysql{select sa_tag from users limit 1}{$value}fail} 09:30:08 17194 result: 2 09:30:08 17194 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1}{$value}fail}} } { eq 09:30:08 17194 error message: missing { after "eq" inside "or{...}" condition change: SA_Query = select sa_tag from users limit 1; result: 09:35:35 17922 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:35:35 17922 result: 2 09:35:35 17922 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } { eq 09:35:35 17922 error message: missing { after "eq" inside "or{...}" condition changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{SA_Query}{$value}fail}} } \ } {X-Spam-Score:X-Spam-Report} } result: 09:43:51 18778 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:43:51 18778 result: 2 09:43:51 18778 condition: or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } 09:43:51 18778 result: false 09:43:51 18778 failed to expand: X 09:43:51 18778 error message: missing } at end of string 09:43:51 18778 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } {X 09:43:51 18778 error message: missing } at end of string changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ } {X-Spam-Score:X-Spam-Report} } result: 09:49:35 19577 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:49:35 19577 result: 2 09:49:35 19577 condition: or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } 09:49:35 19577 result: false 09:49:35 19577 failed to expand: X-Spam-Score 09:49:35 19577 error message: missing } at end of string 09:49:35 19577 failed to expand: ${if or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } {X-Spam-Score 09:49:35 19577 error message: missing } at end of string On 25 September 2014 23:49, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
On 25/09/2014 23:17, Shamim Shahriar wrote:
On 25/09/2014 19:14, Rimas Kudelis wrote:
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it?
Rimas, you wanted to see a length change factor, sorry I forgot to add this bit.
With SA_Query = select users.sa_tag * 10 from users,domains ;
the error is 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
and with SA_Query = select users.sa_tag * 10 from users,domains (the line literally ends at the last s)
the error is 23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai
putting them together, I'd say they do exhibit the symptoms of length issues
23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
And then, I changed it to something even shorter SA_Query = select users.sa_tag from users,domains
and that expanded to 23:30:13 23669 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag from users,domains}{$value}fail}} } 23:30:13 23669 error message: invalid integer "2
which indicates that the query part of it *did* work out (even though the result did not have any meaning, but the 'select' part worked) when it was shortened to an impractical (IMHO) length. I cannot think of any practical/functional query that I can fit in this short length -- but then again, I am not a sql expert, maybe someone with a better knowledge can fit that long query into this smaller space -- but I surely cannot.
Does is help in what you are looking for?
I need to turn in now. All the best Shah
my last diagnosis report SA_Query = select sa_tag from users limit 1; headers_remove = ${if or{{<{2}{1}} \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ }{X-Spam-Score::X-Spam-Report}} and it is working. Please note, the changes from the previous non-working one is the removal of spaces between the curly brackets -- i.e., shortening the length of the conditions. i.e., same condition with larger string-length fails. Could someone please check and let me know if I have missed something very obvious then that will be greatly appreciated. Thanks all Shah On 26 September 2014 09:56, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
Hello All
now I am even more convinced that it is not just the "lookup mysql", but the entire headers_remove is suffering. Please find below the changes I made and the results I received.
Thanks Shah
----
change: SA_Query = select sa_tag from users limit 1
result: 09:30:08 17194 expanding: ${lookup mysql{select sa_tag from users limit 1}{$value}fail} 09:30:08 17194 result: 2 09:30:08 17194 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1}{$value}fail}} } { eq 09:30:08 17194 error message: missing { after "eq" inside "or{...}" condition
change: SA_Query = select sa_tag from users limit 1;
result: 09:35:35 17922 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:35:35 17922 result: 2 09:35:35 17922 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } { eq 09:35:35 17922 error message: missing { after "eq" inside "or{...}" condition
changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{SA_Query}{$value}fail}} } \ } {X-Spam-Score:X-Spam-Report} }
result: 09:43:51 18778 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:43:51 18778 result: 2 09:43:51 18778 condition: or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } 09:43:51 18778 result: false 09:43:51 18778 failed to expand: X 09:43:51 18778 error message: missing } at end of string 09:43:51 18778 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } {X 09:43:51 18778 error message: missing } at end of string
changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ } {X-Spam-Score:X-Spam-Report} }
result: 09:49:35 19577 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:49:35 19577 result: 2 09:49:35 19577 condition: or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } 09:49:35 19577 result: false 09:49:35 19577 failed to expand: X-Spam-Score 09:49:35 19577 error message: missing } at end of string 09:49:35 19577 failed to expand: ${if or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } {X-Spam-Score 09:49:35 19577 error message: missing } at end of string
On 25 September 2014 23:49, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
On 25/09/2014 23:17, Shamim Shahriar wrote:
On 25/09/2014 19:14, Rimas Kudelis wrote:
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it?
Rimas, you wanted to see a length change factor, sorry I forgot to add this bit.
With SA_Query = select users.sa_tag * 10 from users,domains ;
the error is 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
and with SA_Query = select users.sa_tag * 10 from users,domains (the line literally ends at the last s)
the error is 23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai
putting them together, I'd say they do exhibit the symptoms of length issues
23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
And then, I changed it to something even shorter SA_Query = select users.sa_tag from users,domains
and that expanded to 23:30:13 23669 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag from users,domains}{$value}fail}} } 23:30:13 23669 error message: invalid integer "2
which indicates that the query part of it *did* work out (even though the result did not have any meaning, but the 'select' part worked) when it was shortened to an impractical (IMHO) length. I cannot think of any practical/functional query that I can fit in this short length -- but then again, I am not a sql expert, maybe someone with a better knowledge can fit that long query into this smaller space -- but I surely cannot.
Does is help in what you are looking for?
I need to turn in now. All the best Shah
Hello Gordon I'd also like to tell Jeremy about this, but since my last response to him that he counted the brackets wrong, Jeremy had been mysteriously silent to my posts. I sent several of these tests to the exim mailing list, and have not heard from him (or anyone else for that matter). I hate cross-posting, but given that some of the main developers are not in this list, while this list is better responsive than the exim list, I had been posting here first, then edit and post in exim list (you can see the thread at https://lists.exim.org/lurker/message/20140925.154709.a27f9429.en.html). If you have any alternate means to convey these findings to Jeremy, please feel free to do so. You don't even need to mention my name. I am more interested in getting a sensible solution rather than anything else -- as long as that is done in the proper way. Thanks for the support. Shah On 26 September 2014 11:56, Gordon Dickens <gecko(a)exim4u.org> wrote:
Hi Shah,
Thanks for continuing to troubleshoot this. Please continue to post your results.
These results make me wonder if this is a regression in exim 4.84. At some point, shouldn't we consider telling Jeremy about your results and see what he says? Sorry, but as I said earlier, I will not be able to devote time to this for another week or so.
Gordon
On 09/26/2014 05:19 AM, Shamim Shahriar wrote:
my last diagnosis report
SA_Query = select sa_tag from users limit 1;
headers_remove = ${if or{{<{2}{1}} \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ }{X-Spam-Score::X-Spam-Report}}
and it is working. Please note, the changes from the previous non-working one is the removal of spaces between the curly brackets -- i.e., shortening the length of the conditions. i.e., same condition with larger string-length fails.
Could someone please check and let me know if I have missed something very obvious then that will be greatly appreciated.
Thanks all Shah
On 26 September 2014 09:56, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
Hello All
now I am even more convinced that it is not just the "lookup mysql", but the entire headers_remove is suffering. Please find below the changes I made and the results I received.
Thanks Shah
----
change: SA_Query = select sa_tag from users limit 1
result: 09:30:08 17194 expanding: ${lookup mysql{select sa_tag from users limit 1}{$value}fail} 09:30:08 17194 result: 2 09:30:08 17194 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1}{$value}fail}} } { eq 09:30:08 17194 error message: missing { after "eq" inside "or{...}" condition
change: SA_Query = select sa_tag from users limit 1;
result: 09:35:35 17922 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:35:35 17922 result: 2 09:35:35 17922 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } { eq 09:35:35 17922 error message: missing { after "eq" inside "or{...}" condition
changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{SA_Query}{$value}fail}} } \ } {X-Spam-Score:X-Spam-Report} }
result: 09:43:51 18778 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:43:51 18778 result: 2 09:43:51 18778 condition: or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } 09:43:51 18778 result: false 09:43:51 18778 failed to expand: X 09:43:51 18778 error message: missing } at end of string 09:43:51 18778 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } {X 09:43:51 18778 error message: missing } at end of string
changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ } {X-Spam-Score:X-Spam-Report} }
result: 09:49:35 19577 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:49:35 19577 result: 2 09:49:35 19577 condition: or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } 09:49:35 19577 result: false 09:49:35 19577 failed to expand: X-Spam-Score 09:49:35 19577 error message: missing } at end of string 09:49:35 19577 failed to expand: ${if or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } {X-Spam-Score 09:49:35 19577 error message: missing } at end of string
On 25 September 2014 23:49, Shamim Shahriar <shamim.shahriar(a)gmail.com> wrote:
On 25/09/2014 23:17, Shamim Shahriar wrote:
On 25/09/2014 19:14, Rimas Kudelis wrote:
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it?
Rimas, you wanted to see a length change factor, sorry I forgot to add this bit.
With SA_Query = select users.sa_tag * 10 from users,domains ;
the error is 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
and with SA_Query = select users.sa_tag * 10 from users,domains (the line literally ends at the last s)
the error is 23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai
putting them together, I'd say they do exhibit the symptoms of length issues
23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
And then, I changed it to something even shorter SA_Query = select users.sa_tag from users,domains
and that expanded to 23:30:13 23669 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag from users,domains}{$value}fail}} } 23:30:13 23669 error message: invalid integer "2
which indicates that the query part of it *did* work out (even though the result did not have any meaning, but the 'select' part worked) when it was shortened to an impractical (IMHO) length. I cannot think of any practical/functional query that I can fit in this short length -- but then again, I am not a sql expert, maybe someone with a better knowledge can fit that long query into this smaller space -- but I surely cannot.
Does is help in what you are looking for?
I need to turn in now. All the best Shah
_______________________________________________ users mailing listusers(a)exim4u.orghttps://exim4u.org/mailman/listinfo/users
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
Great news, Gordon! Thanks for the info! Rimas 2014.10.06 15:39, Gordon Dickens wrote:
Thanks to Shah's persistence, the headers_remove problem has now been identified as a bug in Exim 4.83/4.84. I noticed an exchange between Jeremy and Shah on the exim-user list yesterday. See this email from Jeremy to the exim-user list:
https://lists.exim.org/lurker/message/20141005.202139.c8520628.en.html
Here is the bug report:
http://bugs.exim.org/show_bug.cgi?id=1533
Notice in the bug report that they are targeting to have it fixed in Exim 3.85.
FYI,
Gordon
On 09/26/2014 07:52 AM, Shamim Shahriar wrote:
Hello Gordon
I'd also like to tell Jeremy about this, but since my last response to him that he counted the brackets wrong, Jeremy had been mysteriously silent to my posts. I sent several of these tests to the exim mailing list, and have not heard from him (or anyone else for that matter). I hate cross-posting, but given that some of the main developers are not in this list, while this list is better responsive than the exim list, I had been posting here first, then edit and post in exim list (you can see the thread at https://lists.exim.org/lurker/message/20140925.154709.a27f9429.en.html). If you have any alternate means to convey these findings to Jeremy, please feel free to do so. You don't even need to mention my name. I am more interested in getting a sensible solution rather than anything else -- as long as that is done in the proper way.
Thanks for the support.
Shah
On 26 September 2014 11:56, Gordon Dickens <gecko(a)exim4u.org <mailto:gecko(a)exim4u.org>> wrote:
Hi Shah,
Thanks for continuing to troubleshoot this. Please continue to post your results.
These results make me wonder if this is a regression in exim 4.84. At some point, shouldn't we consider telling Jeremy about your results and see what he says? Sorry, but as I said earlier, I will not be able to devote time to this for another week or so.
Gordon
On 09/26/2014 05:19 AM, Shamim Shahriar wrote:
my last diagnosis report
SA_Query = select sa_tag from users limit 1;
headers_remove = ${if or{{<{2}{1}} \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ }{X-Spam-Score::X-Spam-Report}}
and it is working. Please note, the changes from the previous non-working one is the removal of spaces between the curly brackets -- i.e., shortening the length of the conditions. i.e., same condition with larger string-length fails.
Could someone please check and let me know if I have missed something very obvious then that will be greatly appreciated.
Thanks all Shah
On 26 September 2014 09:56, Shamim Shahriar <shamim.shahriar(a)gmail.com <mailto:shamim.shahriar(a)gmail.com>> wrote:
Hello All
now I am even more convinced that it is not just the "lookup mysql", but the entire headers_remove is suffering. Please find below the changes I made and the results I received.
Thanks Shah
----
change: SA_Query = select sa_tag from users limit 1
result: 09:30:08 17194 expanding: ${lookup mysql{select sa_tag from users limit 1}{$value}fail} 09:30:08 17194 result: 2 09:30:08 17194 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1}{$value}fail}} } { eq 09:30:08 17194 error message: missing { after "eq" inside "or{...}" condition
change: SA_Query = select sa_tag from users limit 1;
result: 09:35:35 17922 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:35:35 17922 result: 2 09:35:35 17922 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } { eq 09:35:35 17922 error message: missing { after "eq" inside "or{...}" condition
changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { <{$spam_score_int}{${lookup mysql{SA_Query}{$value}fail}} } \ } {X-Spam-Score:X-Spam-Report} }
result: 09:43:51 18778 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:43:51 18778 result: 2 09:43:51 18778 condition: or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } 09:43:51 18778 result: false 09:43:51 18778 failed to expand: X 09:43:51 18778 error message: missing } at end of string 09:43:51 18778 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}} } } {X 09:43:51 18778 error message: missing } at end of string
changed headers_remove to as below keep the SA_Query as above: headers_remove = ${if or { { <{$spam_score_int}{1} } \ { eq {0}{${lookup mysql{SA_Query}{$value}fail}}} \ } {X-Spam-Score:X-Spam-Report} }
result: 09:49:35 19577 expanding: ${lookup mysql{select sa_tag from users limit 1;}{$value}fail} 09:49:35 19577 result: 2 09:49:35 19577 condition: or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } 09:49:35 19577 result: false 09:49:35 19577 failed to expand: X-Spam-Score 09:49:35 19577 error message: missing } at end of string 09:49:35 19577 failed to expand: ${if or { { <{$spam_score_int}{1} } { eq {0}{${lookup mysql{select sa_tag from users limit 1;}{$value}fail}}} } {X-Spam-Score 09:49:35 19577 error message: missing } at end of string
On 25 September 2014 23:49, Shamim Shahriar <shamim.shahriar(a)gmail.com <mailto:shamim.shahriar(a)gmail.com>> wrote:
On 25/09/2014 23:17, Shamim Shahriar wrote:
On 25/09/2014 19:14, Rimas Kudelis wrote:
Hi folks, this would make sense. It would explain why regardless of the number of closing braces you'd add, the condition fails. Just to make sure that it's not just logs where the cropping occurs, could you find a working condition and break it by introducing some random whitespace or other useless chars in it?
Rimas, you wanted to see a length change factor, sorry I forgot to add this bit.
With SA_Query = select users.sa_tag * 10 from users,domains ;
the error is 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
and with SA_Query = select users.sa_tag * 10 from users,domains (the line literally ends at the last s)
the error is 23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai
putting them together, I'd say they do exhibit the symptoms of length issues
23:06:44 19963 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains}{$value}fai 22:48:49 16989 failed to expand: ${lookup mysql{select users.sa_tag * 10 from users,domains ;}{$value}f
And then, I changed it to something even shorter SA_Query = select users.sa_tag from users,domains
and that expanded to 23:30:13 23669 failed to expand: ${if or { { <{$spam_score_int}{1} } { <{$spam_score_int}{${lookup mysql{select users.sa_tag from users,domains}{$value}fail}} } 23:30:13 23669 error message: invalid integer "2
which indicates that the query part of it /did/ work out (even though the result did not have any meaning, but the 'select' part worked) when it was shortened to an impractical (IMHO) length. I cannot think of any practical/functional query that I can fit in this short length -- but then again, I am not a sql expert, maybe someone with a better knowledge can fit that long query into this smaller space -- but I surely cannot.
Does is help in what you are looking for?
I need to turn in now. All the best Shah
Hey Rimas, Shah, Harald and other FreeBSD Exim4u/Vexim users, I noticed that Exim 4.85 has been released and is available in FreeBSD 10.1. Has anybody tested it for the headers_remove problem? I have installed and tested the Exim4U exim configuration file with Exim 4.85 on FreeBSD 10.1 and have been unable to get it to work with either one or two colons in the hearders_remove statement. Here are my results so far: For the stock headers_remove clause with single colons as follows: headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql:$local_part}' \ and domain = '${quote_mysql:$domain}' \ and users.on_spamassassin = '1' \ and users.domain_id=domains.domain_id }{$value}fail}} \ {Subject}{${if eq{SPAMHEADERTYPE}{0}{X-Spam-Report}}} \ } "exim -bd -d -oX 25" yields: 96889 message: virtual_domains router failed to expand "${if
={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {Subject}{${if eq{${lookup{SpamHeaderType}lsearch{/etc/exim/exim4u_global_spam_virus}}}{0}{X-Spam-Report}}} }": "${quote_mysql" is not a known operator (or a } is missing in a variable reference) 96889 ----------- end verify ------------ 96889 accept: condition test deferred in ACL "acl_check_rcpt" 96889 SMTP>> 451 Temporary local problem - please try later
Then, when I use double colons as follows: headers_remove = ${if >={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains \ where localpart = '${quote_mysql::$local_part}' \ and domain = '${quote_mysql::$domain}' \ and users.on_spamassassin = '1' \ and users.domain_id=domains.domain_id }{$value}fail}} \ {Subject}{${if eq{SPAMHEADERTYPE}{0}{X-Spam-Report}}} \ } "exim -bd -d -oX 25" yields: 97120 message: virtual_domains router failed to expand "${if
={$acl_m_spamscore}{${lookup mysql{select users.sa_tag * 10 from users,domains where localpart = '${quote_mysql::$local_part}' and domain = '${quote_mysql::$domain}' and users.on_spamassassin = '1' and users.domain_id=domains.domain_id }{$value}fail}} {Subject}{${if eq{${lookup{SpamHeaderType}lsearch{/etc/exim/exim4u_global_spam_virus}}}{0}{X-Spam-Report}}} }": unknown variable name "local_pa" 97120 ----------- end verify ------------ 97120 accept: condition test deferred in ACL "acl_check_rcpt" 97120 SMTP>> 451 Temporary local problem - please try later
So, in summary, with one colon, I get: "${quote_mysql" is not a known operator (or a } is missing in a variable reference) and with two colons, I get: unknown variable name "local_pa". Does anybody see anything wrong with my tests? Please let me know. I want to report this on the exim.org user mailing list, however, I would like you guys to vet my testing before I get the exim developers involved. Thanks, Gordon
On 22/01/2015 07:25, Gordon Dickens wrote:
Hey Rimas, Shah, Harald and other FreeBSD Exim4u/Vexim users,
I noticed that Exim 4.85 has been released and is available in FreeBSD 10.1. Has anybody tested it for the headers_remove problem? I have installed and tested the Exim4U exim configuration file with Exim 4.85 on FreeBSD 10.1 and have been unable to get it to work with either one or two colons in the hearders_remove statement.
Here are my results so far:
Hello Gordon Sorry for the late response -- have come down with flue and am trying to rest as much as I can. I can confirm, with FreeBSD 10.1 and Exim 4.85, the problem persists. I have not done extensive tests -- I left it for next week due to other priorities. But the little I have seen on my test box it appears that the length of the query is still an issue (or may not have been addressed). Once I get some time I will run some tests and send the results back to the list. Thanks and regards Shah
Hi Shah, Thanks for your reply and confirming that Exim 4.85 has not fixed our problem. I will be interested to hear what you conclude after your testing. Thanks again! Gordon On 01/22/2015 02:10 PM, Shamim Shahriar wrote:
On 22/01/2015 07:25, Gordon Dickens wrote:
Hey Rimas, Shah, Harald and other FreeBSD Exim4u/Vexim users,
I noticed that Exim 4.85 has been released and is available in FreeBSD 10.1. Has anybody tested it for the headers_remove problem? I have installed and tested the Exim4U exim configuration file with Exim 4.85 on FreeBSD 10.1 and have been unable to get it to work with either one or two colons in the hearders_remove statement.
Here are my results so far:
Hello Gordon
Sorry for the late response -- have come down with flue and am trying to rest as much as I can.
I can confirm, with FreeBSD 10.1 and Exim 4.85, the problem persists. I have not done extensive tests -- I left it for next week due to other priorities. But the little I have seen on my test box it appears that the length of the query is still an issue (or may not have been addressed).
Once I get some time I will run some tests and send the results back to the list.
Thanks and regards Shah
_______________________________________________ users mailing list users(a)exim4u.org https://exim4u.org/mailman/listinfo/users
participants (6)
-
Gordon Dickens
-
Harald Valkanover
-
Odhiambo Washington
-
Rimas Kudelis
-
Shamim Shahriar
-
Valkanover Harald