sa-update error - config: invalid expression for rule T_MIXED_ES (fwd)

2018-12-09 Thread Kevin Walton

Hi

I am running:

SpamAssassin version 3.3.2
sa-update version svn917659

and I have been getting the following error for the last couple of days now 
when cron runs sa-update:


"
config:  invalid expression for rule T_MIXED_ES: "( __LOWER_E > 20 ) && ( 
__E_LIKE_LETTER >
( (__LOWER_E * 14 ) / 10) ) && ( ( __E_LIKE_LETTER / __LOWER_E ) < 10 )": 
division by zero

possible

config: warning:  description exists for non-existent rule T_MIXED_ES

channel: lint check of update failed, channel failed
"

Running with -D, the error seems to be with the FreeMail plugin:

"
Dec  9 16:12:19.254 [2525] dbg: plugin: loading 
Mail::SpamAssassin::Plugin::FreeMail from @INC
Dec  9 16:12:19.303 [2525] dbg: plugin: 
Mail::SpamAssassin::Plugin::FreeMail=HASH(0xc0d8f14) implements 'parse_config', 
priority 0
config:  invalid expression for rule T_MIXED_ES: "( __LOWER_E > 20 ) && ( 
__E_LIKE_LETTER > ( (__LOWER_E * 14 ) / 10) ) && (

  ( __E_LIKE_LETTER / __LOWER_E ) < 10 )": division by zero possible

config: warning:  description exists for non-existent rule T_MIXED_ES
"

A google doesnt seem to bring up any help.  Any pointers much appretiated.

Thanks very much
Kevin


--
Kevin Walton


Re: sa-update error - config: invalid expression for rule T_MIXED_ES (fwd)

2018-12-09 Thread Bill Cole

On 9 Dec 2018, at 12:50, Kevin Walton wrote:


Hi

I am running:

SpamAssassin version 3.3.2
sa-update version svn917659


This is an unsupported obsolete version of SpamAssassin. If you are 
maintaining your own installation, you should update. If you are using a 
distribution maintained by someone else, you should urge them to upgrade 
their SA package or to backport a fix for this bug.


and I have been getting the following error for the last couple of 
days now when cron runs sa-update:


"
config:  invalid expression for rule T_MIXED_ES: "( __LOWER_E > 20 ) 
&& ( __E_LIKE_LETTER >
( (__LOWER_E * 14 ) / 10) ) && ( ( __E_LIKE_LETTER / __LOWER_E ) < 10 
)": division by zero

possible


Obviously, that's incorrect. As a Perl expression, the fact that '( 
__LOWER_E > 20 )' is first and the use of the short-circuiting logical 
and operator '&&' assures that the only division by a variable '( 
__E_LIKE_LETTER / __LOWER_E )' will never be evaluated if it could 
result in a division by zero.


This would be a bug in either SA v3.3.2 or the version of Perl you are 
using or in the combination of the two.



config: warning:  description exists for non-existent rule T_MIXED_ES

channel: lint check of update failed, channel failed
"


These are secondary to the initial incorrect judgment of T_MIXED_ES 
being invalid.



Running with -D, the error seems to be with the FreeMail plugin:


Not really...


"
Dec  9 16:12:19.254 [2525] dbg: plugin: loading 
Mail::SpamAssassin::Plugin::FreeMail from @INC
Dec  9 16:12:19.303 [2525] dbg: plugin: 
Mail::SpamAssassin::Plugin::FreeMail=HASH(0xc0d8f14) implements 
'parse_config', priority 0


This is noted because the plugin has a callback defined for 
'parse_config' which is called by Mail::SpamAssassin::Parser right 
before it proceeds to judging rules.


config:  invalid expression for rule T_MIXED_ES: "( __LOWER_E > 20 ) 
&& ( __E_LIKE_LETTER > ( (__LOWER_E * 14 ) / 10) ) && (

  ( __E_LIKE_LETTER / __LOWER_E ) < 10 )": division by zero possible

config: warning:  description exists for non-existent rule T_MIXED_ES
"

A google doesnt seem to bring up any help.  Any pointers much 
appretiated.


Update to non-obsolete software.

--
Bill Cole
b...@scconsult.com or billc...@apache.org
(AKA @grumpybozo and many *@billmail.scconsult.com addresses)
Available For Hire: https://linkedin.com/in/billcole