Ticket #16 (reopened defect)

Opened 3 years ago

Last modified 4 weeks ago

Warning on lint

Reported by: uxbod Owned by: 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

Change History

Changed 3 years ago by decoder

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

Changed 3 years ago 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.

Changed 3 years ago by quinn@…

  • status changed from closed to reopened
  • resolution worksforme 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.

Changed 3 years ago 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.

Changed 3 years ago by anonymous

  • status changed from closed to reopened
  • resolution invalid 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?

Changed 3 years ago 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?

Changed 3 years ago by fp@…

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.

Changed 3 years ago 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.

Note: See TracTickets for help on using tickets.