-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Daniel Quinlan writes:
> John Gardiner Myers <[EMAIL PROTECTED]> writes:
> 
> > I think one weakness in the design of eval tests in general is that 
> > their definition is split into two different places, a function 
> > definition in some .pm file and a function call in some .cf file.  The 
> > .cf file isn't very amenable to multiple-line chunks of perl code, so 
> > perhaps it would be good if the .pm files directly defined the tests.
> 
> You're getting closer to the issue, I think.
> 
> Converting sections of tests into plugins where some people will want to
> disable the entire set due to performance, memory, or similar
> constraints (i.e., Bayes tests, network tests, special functionality,
> etc.) does make sense.  However, converting individual (or nearly
> individual) tests that are "always on" (unless the rule gets a zero
> score) into plugins never has made as much sense to me.
> 
> What if we allowed .cf files to include the eval test Perl code??  It's
> a bit more radical, but it *would* be cleaner and both adding new ones
> and removing old ones would be rather straightforward.  Imagine, for
> example, the HTML-ish eval tests (some of which have been fairly stable)
> being located at the top of the 20_html_tests.cf file.
> 
> This would give everyone, especially rule writers, a lot more
> flexibility.  Of course, users wouldn't be able to define them. The .cf
> files already are code, this is just multiple-line code.

Actually, there's a *little* difference between .cf and .pm,
security-wise; we still make an effort to block code-execution from .cf
files, whereas .pm files are free to run whatever perl code they want.

I'd prefer to keep .pm code out of the .cf's, for this reason.  However a
convention of matching .pm/.cf pairs:

    .../rules.../20_rules.cf
    .../rules.../20_rules.pm

is a good middle ground in my opinion.

- --j.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Exmh CVS

iD8DBQFDuxFwMJF5cimLx9ARAigQAJ9IhpI1jVNfykbaCsxyaDtf8W+wjQCbBwGe
mMP8dr9IY9dimmOl80ZkY04=
=0kdc
-----END PGP SIGNATURE-----

Reply via email to