Re: problem with trainin since upgrade to blamethesegfault

Paolo <[email protected]>
Newsgroups gmane.mail.spam.crm114
Message-ID <20080403154707.GA504@localhost>
On Thu, Apr 03, 2008 at 04:30:59PM +1100, Jason Lewis wrote:
...
> > fprintf-->snprintf and placing thus generated message inside the
> > fatalerror() call, instead of pushing it out to stderr immediately.
> 
> Which error should be gone for good?
> 
> I still get the training error:
> 
> /tmp/crm114-20070810-BlameTheSegfault.src/crm114 -u 
> /home/jason/.crm114working/ /home/jason/.crm114working/mailreaver.crm 
> --good  < 
> /home/jason/Maildir/.ygood/cur/1207200462.M173503P6439V000000000000FD02I000000002C041267_0.debian,S=1353:2,S 
>   >  /home/jason/.crm114working/164561207200481989640077
> ifn='reaver_cache/known_good/reaver_cache/known_good/20080403_162729_032893_FFFFFFFFEDDBA61B', 
> filename=':*:gooddir::*:filename: 0 :*:decision_length:', errno=2, 
> error='No such file or directory'

either you didn't patch the .c, didn't recompile or are still running the old
binary. Modified src would have printed 
'For some reason, I was unable to read-open ...'
along with 'ifn=...'.

Anyway, I think Gerrit is right, there's no bug, the bugger is ... your 
patch :) - without the on purpose lines in mail*.crm we added on other
occasion, we're missing the context from the log and are faked to to believe
there's a bug.

Hum, all this happened around April 1, maybe there's a pttern ;)

But that's been useful to expose a bug (imo), here's the problem/dangerous
code:

#--[mailtrainer.crm]---
...
@462        {        #   Maybe it's a qualified name, maybe it's not
                input [:*:filename: 0 :*:decision_length:]
                trap /unable to read-open/
                output /\n COULDN'T READ THE GOOD FILE ':*:filename:' \n/
                alter (:_dw:) /:*:_nl:/
            }
...
alius
...
@499        {        #   Maybe it's a qualified name, maybe it's not
                input [:*:gooddir::*:filename: 0 :*:decision_length:]
                trap /unable to read-open/
                input [:*:filename: 0 :*:decision_length:]
                trap /unable to read-open/
                output /\n COULDN'T READ THE GOOD FILE ':*:filename:'\n/
                alter (:_dw:) /:*:_nl:/
            }
...
#--------------------------

our trouble line is @500, but I think that's the good one, missing from 
block above ALIUS, while the next INPUT try should be removed.
Both mailreaver and mailtrainer read the .cf where :gooddir: is defined, 
but :filename: passed by mailreaver includes :gooddir: as well.

Insted mailreaver should use just the bare filename, and mailtrainer 
shouldn't try-open here and there: it's supposed to work in a well defined
dir and read good/spam from well defined dirs, if it fails there's an error
or the file disappeared. 

Keeping the lines with :*dir: in makes sense since mailtrainer may run 
standalone.

Going to check mail{trainer,reaver}.crm, will post tonight hacked versions
if time permits.


-- 
 paolo
 
 GPG/PGP id:0x3A47DE45  - B5F9 AAA0 44BD 2B63 81E0  971F C6C0 0B87 3A47 DE45
 - 9/11: the outrageous deception and ongoing coverup: http://911review.org -

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.