Skip Menu |

This queue is for tickets about the Mail-ClamAV CPAN distribution.

Report information
The Basics
Id: 8045
Status: resolved
Priority: 0/
Queue: Mail-ClamAV

People
Owner: converter [...] cpan.org
Requestors: clamav [...] grunta.com
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 0.11
Fixed in: (no value)



Subject: build broken with ClamAV 0.80 (missing/broken #defines)
I updated ClamAV to 0.80 after the new virus signatures required the new scanning engine. Mail::ClamAV 0.11 does not build against ClamAV 0.80. it builds fine against ClamAV 0.75.1. This is perl, v5.8.1 built for i386-linux Linux liz 2.4.26 #2 Sat Jun 26 19:24:28 EST 2004 i686 unknown unknown GNU/Linux cp ClamAV.pm blib/lib/Mail/ClamAV.pm /usr/pkg/bin/perl -Mblib -MInline=NOISY,_INSTALL_ -MMail::ClamAV -e1 0.11 blib/arch Starting Build Prepocess Stage Finished Build Prepocess Stage Starting Build Parse Stage Finished Build Parse Stage Starting Build Glue 1 Stage Finished Build Glue 1 Stage Starting Build Glue 2 Stage Finished Build Glue 2 Stage Starting Build Glue 3 Stage Finished Build Glue 3 Stage Starting Build Compile Stage Starting "perl Makefile.PL" Stage Writing Makefile for Mail::ClamAV Finished "perl Makefile.PL" Stage Starting "make" Stage /usr/pkg/bin/perl /usr/pkg/lib/perl5/5.8.1/ExtUtils/xsubpp -typemap /usr/pkg/lib/perl5/5.8.1/ExtUtils/typemap ClamAV.xs > ClamAV.xsc && mv ClamAV.xsc ClamAV.c gcc -c -I/work/pkgbuild/mail/p5-Mail-ClamAV/work/Mail-ClamAV-0.11 -I/usr/pkg/include -I/usr/pkg/include -fno-strict-aliasing -I/usr/pkg/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -I/usr/pkg/include -DVERSION=\"0.11\" -DXS_VERSION=\"0.11\" -fpic "-I/usr/pkg/lib/perl5/5.8.1/i386-linux/CORE" ClamAV.c ClamAV.xs: In function `clamav_perl_constant': ClamAV.xs:282: `CL_SCAN_ENCRYPTED' undeclared (first use in this function) ClamAV.xs:282: (Each undeclared identifier is reported only once ClamAV.xs:282: for each function it appears in.) ClamAV.xs:284: `CL_NUM_CHILDS' undeclared (first use in this function) ClamAV.xs:285: `CL_MIN_LENGTH' undeclared (first use in this function) *** Error code 1 Stop. make: stopped in /work/pkgbuild/mail/p5-Mail-ClamAV/work/Mail-ClamAV-0.11/_Inline/build/Mail/ClamAV A problem was encountered while attempting to compile and install your Inline C code. The command that failed was: make The build directory was: /work/pkgbuild/mail/p5-Mail-ClamAV/work/Mail-ClamAV-0.11/_Inline/build/Mail/ClamAV To debug the problem, cd to the build directory, and inspect the output files. at /work/pkgbuild/mail/p5-Mail-ClamAV/work/Mail-ClamAV-0.11/blib/lib/Mail/ClamAV.pm line 159 BEGIN failed--compilation aborted at /work/pkgbuild/mail/p5-Mail-ClamAV/work/Mail-ClamAV-0.11/blib/lib/Mail/ClamAV.pm line 447. Compilation failed in require. BEGIN failed--compilation aborted. *** Error code 1 this is because CL_NUM_CHILDS and CL_MIN_LENGTH are no longer #defined in clamav.h, and there is a typo in the backward compat #define of CL_ENCRYPTED. the real #define is CL_SCAN_BLOCKENCRYPTED. removing CL_NUM_CHILDS and CL_MIN_LENGTH from ClamAV.pm and fixing the #define CL_ENCRYPTED in clamav.h allows Mail::ClamAV to build against clamav 0.80.
[guest - Mon Oct 18 21:01:37 2004]: Show quoted text
> I updated ClamAV to 0.80 after the new virus signatures required the > new scanning engine. Mail::ClamAV 0.11 does not build against > ClamAV 0.80. it builds fine against ClamAV 0.75.1. >
I'm in the process of updating it right now. Look for a release later tonight or tomorrow. Cheers, Scott
released this morning
[clamav@grunta.com - Wed Oct 20 02:43:52 2004]: Show quoted text
> On Tue, Oct 19, 2004 at 02:55:04PM -0400, via RT wrote: >
> > Full context and any attached attachments can be found at: > > <URL: http://rt.cpan.org/NoAuth/Bug.html?id=8045 > > > > > released this morning
> > 0.12 fails with this message for me: > > Invalid function CL_ARCHIVE at > /usr/pkg/lib/perl5/site_perl/5.8.4/i386-linux/Mail/ClamAV.pm line 83. >
This is broken error reporting. The line number should be in your code. You made a call to CL_ARCHIVE which went into AUTOLOAD. Mail::ClamAV only supports the new CL_SCAN_ARCHIVE. I tried to support libclamav's backwards compatibility at first but it was pretty broken. Show quoted text
> from looking at clamav.h, it looks like this should be using > CL_SCAN_ARCHIVE and CL_SCAN_MAIL. > > I've had to revert to using 0.11 with my patches for the moment. >
Not really sure how your patch works. Does it work around libclamavs broken "backwards compatible" constants? Cheers, Scott
Closing this old ticket. The new release of Mail::ClamAV is written against the new clamav API and requires clamav 0.95.1 or later. Please try it out and create another ticket if you have any problems. Thanks.