Bug 999899

Summary: Undefined subroutine &IO::Socket::SSL::set_ctx_defaults
Product: [Fedora] Fedora EPEL Reporter: Jonas Pasche <jpasche>
Component: imapsyncAssignee: Marek Mahut <mmahut>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: el5CC: mmahut, nb
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: perl-IO-Tee-0.64-1.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-27 01:30:18 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jonas Pasche 2013-08-22 10:53:57 UTC
Description of problem:

imapsync no longer works under CentOS 5 when using SSL connections.


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

Problem exists with versions 1.547 and 1.555 under CentOS 5 (the problem does not occur under CentOS 6).

Last version where the problem did not occur was 1.542.


How reproducible:

Execute imapsync using SSL encryption on any side (--ssl1 or --ssl2).


Steps to Reproduce:

1. Call the tool with --ssl1 (and some switch that does something, like --version)


Actual results:

[jonas@lyra ~]$ imapsync --ssl1 --version
Undefined subroutine &IO::Socket::SSL::set_ctx_defaults called at /usr/bin/imapsync line 4327.


Expected results:

imapsync should work as it worked before. Here's the same command executed on a CentOS 6 host where the problem does not occur:

[jonas@andromeda ~]$ imapsync --ssl1 --version
1.555


Additional info:

Using perl-IO-Socket-SSL-1.01-2.el5 which is the most current version on CentOS 5.

Looking at the ChangeLog ...

http://cpansearch.perl.org/src/SULLR/IO-Socket-SSL-1.953/Changes

... it seems like set_ctx_defaults has been introduced with v1.14 (2011-05-09) and deprecated with v1.81 (2012-12-06). In any case, the IO::Socket::SSL version of CentOS 5 is ways too old to support that function that is obviously now needed by imapsync.

The incompatibility seems to be introduced with imapsync 1.543, judging from its changelog:

revision 1.543
date: 2013/05/22 01:22:03;  author: gilles;  state: Exp;  lines: +12 -7
SSL_verify_mode 0 to avoid warning about Man-In-The-Middle. 

The code in question is this:

        if ( $ssl1 or $ssl2 or $tls1 or $tls2 ) {
                require IO::Socket::SSL ;
                #$IO::Socket::SSL::DEBUG = 3 ;
                IO::Socket::SSL::set_ctx_defaults( 
                        SSL_verify_mode => 0,
                );
        }

Commenting out the set_ctx_default call seems to solve the problem, however I'm not sure if this is a good idea.

Comment 1 Fedora Update System 2014-08-14 23:34:33 UTC
perl-IO-Tee-0.64-1.el6,imapsync-1.592-1.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/perl-IO-Tee-0.64-1.el6,imapsync-1.592-1.el6

Comment 2 Fedora Update System 2014-08-14 23:40:01 UTC
imapsync-1.592-1.el5,perl-IO-Tee-0.64-1.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/imapsync-1.592-1.el5,perl-IO-Tee-0.64-1.el5

Comment 3 Fedora Update System 2014-08-14 23:41:06 UTC
imapsync-1.592-1.fc20,perl-IO-Tee-0.64-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/imapsync-1.592-1.fc20,perl-IO-Tee-0.64-1.fc20

Comment 4 Fedora Update System 2014-08-14 23:41:16 UTC
imapsync-1.592-1.fc19,perl-IO-Tee-0.64-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/imapsync-1.592-1.fc19,perl-IO-Tee-0.64-1.fc19

Comment 5 Fedora Update System 2014-08-15 18:58:44 UTC
Package imapsync-1.592-1.el5, perl-IO-Tee-0.64-1.el5:
* should fix your issue,
* was pushed to the Fedora EPEL 5 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing imapsync-1.592-1.el5 perl-IO-Tee-0.64-1.el5'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2014-2208/imapsync-1.592-1.el5,perl-IO-Tee-0.64-1.el5
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2014-08-27 01:30:18 UTC
imapsync-1.592-1.fc20, perl-IO-Tee-0.64-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 7 Fedora Update System 2014-08-27 01:34:56 UTC
imapsync-1.592-1.fc19, perl-IO-Tee-0.64-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Fedora Update System 2014-09-02 03:55:46 UTC
imapsync-1.592-1.el5, perl-IO-Tee-0.64-1.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 9 Fedora Update System 2014-09-02 03:56:26 UTC
perl-IO-Tee-0.64-1.el6, imapsync-1.592-1.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.