Bug 437681 - Constant subroutine IO::Socket::INET6::AF_INET6 redefined
Summary: Constant subroutine IO::Socket::INET6::AF_INET6 redefined
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: perl-Net-DNS
Version: 9
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Stepan Kasal
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 445314 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-03-16 10:45 UTC by Nicolas Mailhot
Modified: 2013-01-10 04:36 UTC (History)
10 users (show)

Fixed In Version: 0.63-4.fc9
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-05-21 10:56:14 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Nicolas Mailhot 2008-03-16 10:45:21 UTC
Description of problem:

Constant subroutine IO::Socket::INET6::AF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/lib/perl5/vendor_perl/5.10.0/IO/Socket/INET6.pm line 16
Prototype mismatch: sub IO::Socket::INET6::AF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/lib/perl5/vendor_perl/5.10.0/IO/Socket/INET6.pm line 16
Constant subroutine IO::Socket::INET6::PF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/lib/perl5/vendor_perl/5.10.0/IO/Socket/INET6.pm line 16
Prototype mismatch: sub IO::Socket::INET6::PF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/lib/perl5/vendor_perl/5.10.0/IO/Socket/INET6.pm line 16
Constant subroutine Net::DNS::Resolver::Base::AF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
Prototype mismatch: sub Net::DNS::Resolver::Base::AF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
Constant subroutine Net::DNS::Resolver::Base::PF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
Prototype mismatch: sub Net::DNS::Resolver::Base::PF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65

Version-Release number of selected component (if applicable):

perl-IO-Socket-INET6-2.51-5.fc9.noarch
perl-5.10.0-15.fc9.x86_64


How reproducible:

Triggered every 15min by the spamassassin cron. As SA is usually used
periodically like this, this is pretty much a blocker that will hit a lot of people

Comment 1 Warren Togami 2008-03-17 03:00:46 UTC
Any suggestions from perl SIG?


Comment 2 Vitezslav Crhonek 2008-03-26 12:41:32 UTC
*** Bug 438931 has been marked as a duplicate of this bug. ***

Comment 3 Vitezslav Crhonek 2008-03-26 12:47:50 UTC
Hi,

Here I found more informations about this issue (with patch):

http://use.perl.org/~Shlomi+Fish/journal/35423
http://www.nntp.perl.org/group/perl.module-authors/2008/01/msg6187.html

Hope this will help you a bit.

Comment 4 Marcela Mašláňová 2008-03-26 13:10:51 UTC
The patch from previous comment is used in upstream and also in Mandriva.

Comment 5 Warren Togami 2008-03-26 16:05:38 UTC
Pushing 2.54.  Please give it a test.


Comment 6 Marcela Mašláňová 2008-03-27 09:02:25 UTC
Running spamassasin gives this:
Subject: Cron <root@vmware165> /usr/share/spamassassin/sa-update.cron 2>&1 | tee
-a /var/log/sa-update.log

Constant subroutine Net::DNS::Resolver::Base::AF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
Prototype mismatch: sub Net::DNS::Resolver::Base::AF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
Constant subroutine Net::DNS::Resolver::Base::PF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
Prototype mismatch: sub Net::DNS::Resolver::Base::PF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at
/usr/lib/perl5/vendor_perl/5.10.0/i386-linux-thread-multi/Net/DNS/Resolver/Base.pm
line 65
error: GPG validation failed!
The update downloaded successfully, but the GPG signature verification
failed.
channel: GPG validation failed, channel failed

It looks like partial fix.

Comment 7 Marcela Mašláňová 2008-03-27 10:26:09 UTC
Okay after reboot of machine, it works without errors.

Comment 8 Austin 2008-03-30 23:58:01 UTC
# rpm -qa perl-IO-Socket*
perl-IO-Socket-INET6-2.54-1.fc9.noarch

I still have this problem. My details are in Bug# 438931.

Comment 9 Warren Togami 2008-03-31 01:16:59 UTC
Did you restart the service after upgrading to perl-IO-Socket-INET6-2.54-1.fc9?
 Comment #7 indicates that this is fixed but requires a service restart.

Comment 10 Austin 2008-03-31 01:55:11 UTC
I have rebooted the machine!

My problem (as indicated in bug# 438931) is with a cron task - not exactly a
service. MRTG is failing with the duplication. Would you like me to provide an
updated copy of the email that's sent to me every 5 mins?

Comment 11 Nicolas Mailhot 2008-03-31 08:36:56 UTC
I confirm neither SA nor Amavisd-new are fixed, with or without restarts or reboots

Comment 12 Jesse Keating 2008-04-03 19:23:31 UTC
Warren, going to get this fixed for F9?

Comment 13 Austin 2008-04-03 23:11:44 UTC
If this is a simple redefinition of a Perl function, can't you simply _REMOVE_
one of the definitions?

I'm keen to see this fixed too... I'm getting 288 emails a day about it!

Comment 14 Nicolas Mailhot 2008-04-04 06:52:12 UTC
(In reply to comment #13)
> If this is a simple redefinition of a Perl function, can't you simply _REMOVE_
> one of the definitions?
> 
> I'm keen to see this fixed too... I'm getting 288 emails a day about it!

Unfortunately, the software that uses this function is very likely to be used in
cron jobs, so a lot of the users affected will be in your case. So it's not a
good idea to let it slip in F9

Comment 15 Tom "spot" Callaway 2008-04-09 15:10:58 UTC
OK, I see the problem: Net::DNS has the same issues as IO::Socket::INET6 does.
I've fixed it up in perl-Net-DNS-0.63-3.fc9, and spamassassin and spamd run
silent for me now.

Can you guys update to this new perl-Net-DNS package and test? Thanks.

http://koji.fedoraproject.org/koji/buildinfo?buildID=45721

Comment 16 Nicolas Mailhot 2008-04-10 05:50:38 UTC
seems to fix it there, thanks!

Comment 17 Vitezslav Crhonek 2008-04-17 12:17:04 UTC
*** Bug 442884 has been marked as a duplicate of this bug. ***

Comment 18 David Timms 2008-04-17 13:43:21 UTC
Running with:
mrtg-2.15.1-8.fc9.i386
perl-5.10.0-20.fc9.i386
perl-IO-Socket-INET6-2.54-1.fc9.noarch
perl-Net-DNS-0.63-3.fc9.i386
perl-SNMP_Session-1.08-4.fc9.noarch

! this is not yet resolved for mrtg as suggested above - 
The two machines have had these packages for a week and been rebooted numerous
times. I can't reopen this bug - should I reopen 442884 or {437681} to track the
mrtg problems ?

Comment 19 Tom "spot" Callaway 2008-04-17 21:55:59 UTC
Please open a bug on mrtg, with the following:

1. A log of the exact error messages.
2. A reproducer (the simpler, the better)

Thanks,

~spot

Comment 20 Austin 2008-04-17 23:55:16 UTC
mrtg-2.15.1-8.fc9.x86_64
perl-IO-Socket-INET6-2.54-1.fc9.noarch
perl-SNMP_Session-1.08-4.fc9.noarch

*Message*:

Constant subroutine SNMP_Session::AF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 140
Prototype mismatch: sub SNMP_Session::AF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 140
Constant subroutine SNMP_Session::PF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 140
Prototype mismatch: sub SNMP_Session::PF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 140
Constant subroutine SNMPv1_Session::AF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 594
Prototype mismatch: sub SNMPv1_Session::AF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 594
Constant subroutine SNMPv1_Session::PF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 594
Prototype mismatch: sub SNMPv1_Session::PF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/../lib64/mrtg2/SNMP_Session.pm line 594
Constant subroutine main::AF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/mrtg line 101
Prototype mismatch: sub main::AF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/mrtg line 101
Constant subroutine main::PF_INET6 redefined at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/mrtg line 101
Prototype mismatch: sub main::PF_INET6 () vs none at
/usr/lib/perl5/5.10.0/Exporter.pm line 66.
 at /usr/bin/mrtg line 101

Comment 21 Austin 2008-04-17 23:57:14 UTC
I'll re-open my bug (Bug# 438931) then to see if that helps get this solved faster.

It is quite annoying.

Comment 22 David Timms 2008-04-18 10:28:43 UTC
(In reply to comment #19)
> Please open a bug on mrtg, with the following:
> 
> 1. A log of the exact error messages.
> 2. A reproducer (the simpler, the better)
Actually, my previously dupes bug 438931 has an easy reproducer...

Comment 23 David Timms 2008-04-18 10:44:58 UTC
(In reply to comment #22)
> Actually, my previously dupes bug 438931 has an easy reproducer...
oops, tab error, bug 442884.



Comment 24 Tom "spot" Callaway 2008-04-18 12:10:19 UTC
I'm pretty sure I have this fixed now, please look at 442884.

Comment 25 Austin 2008-04-21 00:39:48 UTC
I can confirm it appears fixed in 2.16.1-1 (in that MRTG no longer emails me
with complaints every 5 mins).

Cheers.

Comment 26 Marcela Mašláňová 2008-05-09 07:12:28 UTC
Is the patch in perl-Net-DNS really needed? Because it creates new bug 445314,
which is occur only with out patch.

Comment 27 Warren Togami 2008-05-09 13:03:10 UTC
I just want to warn you, I will not be able to fix this myself.

Comment 28 Marcela Mašláňová 2008-05-09 13:12:08 UTC
Couldn't we cooperate with upstream on this issue? There must be something wrong
in perl-IO-Socket-INET6.

Comment 29 Dick Franks 2008-05-09 16:27:41 UTC
(#26) Emphatically NOT.

There seems to have been a rash of changes to IO::Socket::INET6 recently.

Suggest backtracking to previous stable version 2.51 (Oct 2004) which I think
might make the problem go away.

Once F9 release is out of the way, the problem can be examined in more detail
and under less pressure.

Bug reports should be filed in CPAN RT for both of the examples above, so that
the maintainer is aware.


Comment 30 Tom "spot" Callaway 2008-05-09 16:51:22 UTC
I can file this bug in upstream CPAN RT, but I don't think we should revert to a
four year old version, as it almost certainly won't resolve this bug (this is
caused by perl 5.10.0).

Comment 31 Tom "spot" Callaway 2008-05-09 16:57:52 UTC
Reassigning to perl-Net-DNS, as that is the place where all of the patching has
taken place.

Comment 32 Tom "spot" Callaway 2008-05-09 17:04:32 UTC
Upstream bug filed: http://rt.cpan.org/Public/Bug/Display.html?id=35752

Comment 33 Bill Nottingham 2008-05-09 17:12:40 UTC
Removing from F9 blocker, as we aren't holding the release for this.

Comment 34 Dick Franks 2008-05-09 20:56:28 UTC
(#31) Net::DNS is not implicated in this problem. Adding a bug to it is deeply
objectionable.

Bugs are like moles under your lawn - to do any good, you have to kill them, not
just fill up the holes!

Comment 35 Tom "spot" Callaway 2008-05-09 21:09:07 UTC
(In reply to comment #34)
> (#31) Net::DNS is not implicated in this problem. Adding a bug to it is deeply
> objectionable.

Feel free to deeply object, however, it is the correct thing to do. The bug
comes from how IO::Socket::INET6 is used in Net::DNS (and other places), not
with IO::Socket::INET6 itself. There is some background information about this
bug in comment #3.

It may be possible to resolve this issue with fundamental changes to how
IO::Socket::INET6 is structured, but that is analogous to insisting that the
lawn be replaced with concrete to solve the mole problem.


Comment 36 Dick Franks 2008-05-11 06:14:04 UTC
(#35)
Concreting the lawn was your solution, forcing the moles to surface in the next
guy's garden.

Breaking Net::DNS IPv6 functionality is definitely not the correct thing to do.

Failing to comply with GPL clause 2(a) is not the correct way to do it.

Even if your change had not broken anything, the bug would still remain, same as
it was 6 weeks ago.

Comment 37 Tom "spot" Callaway 2008-05-11 12:04:03 UTC
I suspect that you don't understand the GPL as well as you think, nor this bug.
Nevertheless, I'm working with upstream on a proper solution.

Comment 38 Dick Franks 2008-05-12 03:30:20 UTC
2.
    a) You must cause the modified files to carry prominent notices
    stating that you changed the files and the date of any change.

Not much scope for misunderstanding there.

Still a long way from understanding this bug.

I was aware.





Comment 39 Marcela Mašláňová 2008-05-12 10:02:33 UTC
*** Bug 445314 has been marked as a duplicate of this bug. ***

Comment 40 Marcela Mašláňová 2008-05-12 10:08:40 UTC
There was patch from Net::DNS upstream, which resolve all mentioned issues for
me. I push it to updates, please test and let us know.

CPAN Ticket http://rt.cpan.org/Public/Bug/Display.html?id=35752

Comment 41 Fedora Update System 2008-05-12 10:59:44 UTC
perl-Net-DNS-0.63-4.fc9 has been submitted as an update for Fedora 9

Comment 42 Tom "spot" Callaway 2008-05-12 14:49:07 UTC
Confirmed, this is a much better fix.

Comment 43 Fedora Update System 2008-05-13 15:28:56 UTC
perl-Net-DNS-0.63-4.fc9 has been pushed to the Fedora 9 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update perl-Net-DNS'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F9/FEDORA-2008-3676

Comment 44 Bug Zapper 2008-05-14 06:38:40 UTC
Changing version to '9' as part of upcoming Fedora 9 GA.
More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 45 Fedora Update System 2008-05-21 10:56:11 UTC
perl-Net-DNS-0.63-4.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.