Ticket #16 (reopened defect)

Opened 3 years ago

Last modified 6 months ago

Warning on lint

Reported by: uxbod Assigned to: decoder
Priority: trivial Milestone: Development Release Version 3.5
Component: Don't know Version: SVN
Keywords: Cc:

Description

[28698] dbg: plugin: loading FuzzyOcr? from /usr/local/share/spamassassin/FuzzyOcr.pm Subroutine FuzzyOcr::O_NONBLOCK redefined at /usr/share/perl/5.8/Exporter.pm line 65.

at /usr/lib/perl/5.8/POSIX.pm line 19

Attachments

Change History

02.12.2006 13:36:34 changed by decoder

  • status changed from new to assigned.
  • milestone set to Development Release Version 3.5.

10.12.2006 00:57:49 changed by decoder

  • status changed from assigned to closed.
  • resolution set to worksforme.

This is an error that comes most likely from the Perl Core. It happens because both Posix and Fnctl export some constants with the same name. You can safely ignore this, upgrading perl should fix it.

18.01.2007 23:28:30 changed by quinn@strangecode.com

  • status changed from closed to reopened.
  • resolution deleted.

I'm getting the same error on an up-to-date installation of RHEL 4 linux, using the latest available version of perl from the redhat channel: perl-5.8.5-36.RHEL4.src.rpm.

Subroutine FuzzyOcr::O_NONBLOCK redefined at /usr/lib/perl5/5.8.5/Exporter.pm line 65.
 at /usr/lib/perl5/5.8.5/i386-linux-thread-multi/POSIX.pm line 19

Suggested fix is using a unique constant name.

27.01.2007 15:01:05 changed by decoder

  • status changed from reopened to closed.
  • resolution set to invalid.

FuzzyOcr? does not define this constant, POSIX does. This is also only caused when some other modules/plugins are installed that use the same constants. You may ignore this.

30.01.2007 20:09:02 changed by anonymous

  • status changed from closed to reopened.
  • resolution deleted.

I'm having this problem now with O_CREAT and other symbols and in my case it's not acceptable because I'm calling spamassassin programatically from a perlscript which is called by exim. Exim is seeing these messages on stderr and hard bouncing all mail. So in my case I cannot ignore them and it's not an acceptable solution. Is there any other way this can be fixed properly?

30.01.2007 20:10:35 changed by anonymous

When you use posix in FuzzyOCR do you need to import all these symbols or can you simply ensure that you're only importing the ones you need from either Fnctl or POSIX instead of both which it is doing now?

05.04.2007 14:36:53 changed by fp@mdlink.de

With perl version 5.8.8 work jpeg fine. I have in version 5.8.6 this error

spamassassin -t < ocr-jpg.eml Subroutine FuzzyOcr::O_CREAT redefined at /usr/lib/perl5/5.8.6/Exporter.pm line 65.

at /usr/lib/perl5/5.8.6/i586-linux-thread-multi/POSIX.pm line 19

Subroutine FuzzyOcr::O_EXCL redefined at /usr/lib/perl5/5.8.6/Exporter.pm line 65.

at /usr/lib/perl5/5.8.6/i586-linux-thread-multi/POSIX.pm line 19

Subroutine FuzzyOcr::O_RDWR redefined at /usr/lib/perl5/5.8.6/Exporter.pm line 65.

at /usr/lib/perl5/5.8.6/i586-linux-thread-multi/POSIX.pm line 19

Thanks.

27.05.2007 13:05:58 changed by Thomas Mangin

Robert Nicholson provides a solution at : http://archive.netbsd.se/?ml=spamassassin-users&a=2007-01&t=3051735

In case the links breaks here is the solution:

Instead of use POSIX; in FuzzyOcr?.pm I've replaced it with use POSIX qw(SIGTERM); that seems to have fix this issue.


Add/Change #16 (Warning on lint)