On Wed, 2007-07-18 at 12:25 -0400, Kevin Plested wrote:
> I'm trying to add a new plugin to Spamassassin, I located my plugin
> directory on my server:
>  
> /usr/local/lib/perl5/site_perl/5.8.4/Mail/SpamAssassin/Plugin/
>  
> by searching on my server for URIDNSBL.pm.
>  
> When I put my new plugin into that directory, and call it from
> init.pre, and run a --lint, I get the following:
>  
> [11359] warn: plugin: failed to parse plugin (from @INC): Can't locate
> MAIL/SpamAssassin/Plugin/PDFInfo.pm in @INC (@INC
> contains: /usr/local/lib/perl5/site_perl/5.8.4/i386-freebsd 
> /usr/local/lib/perl5/site_perl/5.8.4 /usr/local/lib/perl5/5.8.4/i386-freebsd 
> /usr/local/lib/perl5/5.8.4 /usr/local/lib/perl5/site_perl/5.8.3/i386-freebsd 
> /usr/local/lib/perl5/site_perl/5.8.3 
> /usr/local/lib/perl5/site_perl/5.8.1/i386-freebsd 
> /usr/local/lib/perl5/site_perl/5.8.1 /usr/local/lib/perl5/site_perl/5.6.1 
> /usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl 
> /usr/local/lib/perl5/vendor_perl/5.8.4/i386-freebsd 
> /usr/local/lib/perl5/vendor_perl/5.8.4 
> /usr/local/lib/perl5/vendor_perl/5.8.3/i386-freebsd 
> /usr/local/lib/perl5/vendor_perl/5.8.3 /usr/local/lib/perl5/vendor_perl 
> /usr/local/lib/perl5/5.00503 /usr/local/lib/site_perl) at (eval 52) line 1.
> [11359] warn: plugin: failed to create instance of plugin
> MAIL::SpamAssassin::Plugin::PDFInfo: Can't locate object method "new"
> via package "MAIL::SpamAssassin::Plugin::PDFInfo" at (eval 53) line 1.
> 
> What am I doing wrong?
>  
> Kevin Plested
> Warpzone Web Services

It looks as if you are not defining a method named 'new' in your plugin.
SA plugins are perl objects, they must define a constructor named 'new'.

Look at some of the other plugins to see what needs to happen in the
'new' method.

Reply via email to