Skip Menu |

This queue is for tickets about the Mojolicious-Plugin-ReCAPTCHAv2 CPAN distribution.

Report information
The Basics
Id: 106580
Status: resolved
Priority: 0/
Queue: Mojolicious-Plugin-ReCAPTCHAv2

People
Owner: Nobody in particular
Requestors: cromedome [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: (no value)
Fixed in: (no value)



Subject: Not recognizing my version of IO::Socket::SSL
When I attempt to verify a CAPTCHA, the plugin reports the following error: Retrieving captcha verifcation failed: IO::Socket::SSL 1.94+ required for TLS support When I went to verify I had the proper version of IO::Socket::SSL installed: IO::Socket::SSL is up to date. (2.016) As of right now, it makes me unable to use this. Please help.
Using Mojolicious 6.15 on Perl 5.22.0 on OS X 10.10.5. On Fri Aug 21 10:07:06 2015, CROMEDOME wrote: Show quoted text
> When I attempt to verify a CAPTCHA, the plugin reports the following > error: > > Retrieving captcha verifcation failed: IO::Socket::SSL 1.94+ required > for TLS support > > When I went to verify I had the proper version of IO::Socket::SSL > installed: > > IO::Socket::SSL is up to date. (2.016) > > As of right now, it makes me unable to use this. Please help.
Am Fr 21. Aug 2015, 10:07:06, CROMEDOME schrieb: Show quoted text
> When I attempt to verify a CAPTCHA, the plugin reports the following > error: > > Retrieving captcha verifcation failed: IO::Socket::SSL 1.94+ required > for TLS support
Actually it´s not Mojolicious::Plugin::ReCAPTCHAv2 which reports this error: M::P::ReCAPTCHAv2 utilizes Mojo::UserAgent which in turn uses Mojo::IOLoop::Client which then checks for the presence of a sufficiently up-to-date IO::Socket::SSL. AFAIK the way the version requirement check works hasn´t changed for quite a while, so I don´t think that that´s the origin of the problem report. Show quoted text
> When I went to verify I had the proper version of IO::Socket::SSL > installed: > > IO::Socket::SSL is up to date. (2.016)
Maybe you have two different versions of IO::Socket::SSL installed in two different places? Do you manipulate perls @INC, e.g. through "use lib qw(...)" or something like that? Please verify that the "perl" executable that you use on the CLI is the same that is used when you start your Mojolicious app. Otherwise, did you verify that your IO::Socket::SSL can be loaded? Try perl -E 'use IO::Socket::SSL 1.94 (); say "OK"' Make sure that a really simple test script works: perl -E 'use Mojo::UserAgent; my $ua = Mojo::UserAgent->new; say $ua->get("https://www.google.com/recaptcha/api/siteverify")->res->code' Hopefully one of these ideas will help you locate the root cause of your problem! Best Heiko
Subject: Re: [rt.cpan.org #106580] Not recognizing my version of IO::Socket::SSL
Date: Fri, 28 Aug 2015 11:21:12 -0500
To: bug-Mojolicious-Plugin-ReCAPTCHAv2 [...] rt.cpan.org
From: "Jason A. Crome" <cromedome [...] gmail.com>
Thanks for the incredibly fast, well thought out response! Sorry I didn’t respond sooner but I have been sick in bed the last 3 days. I use plenv for managing my Perl installations. As of now, I have only system perl installed and 5.22.0 which my application uses. System Perl is using 1.966. I ran through the steps you described and pasted the output below. The first test is against system Perl, and when I cd to my projects directory, 5.22.0 is used from that point forward. I will keep poking around to see what else I can find. Thanks for your help! Keep you posted with what I find. Jason jason@darwin ~ 11:14:39 » perl -v This is perl 5, version 18, subversion 2 (v5.18.2) built for darwin-thread-multi-2level (with 2 registered patches, see perl -V for more detail) Copyright 1987-2013, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. jason@darwin ~ 11:14:42 » modvsn IO::Socket::SSL IO::Socket::SSL version: 1.966 jason@darwin ~ 11:14:57 » perl -E 'use IO::Socket::SSL 1.94 (); say "OK"' OK jason@darwin ~ 11:16:31 » cd Projects/crome-plated.com jason@darwin Projects/crome-plated.com (captcha_v1*) 11:16:37 git » perl -E 'use IO::Socket::SSL 1.94 (); say "OK"' OK jason@darwin Projects/crome-plated.com (captcha_v1*) 11:16:39 git » perl -E 'use Mojo::UserAgent; my $ua = Mojo::UserAgent->new; say $ua->get("https://www.google.com/recaptcha/api/siteverify")->res->code' 200 jason@darwin Projects/crome-plated.com (captcha_v1*) 11:17:02 git » Jason A. Crome / CromeDome AIM: TheOneCromeDome Twitter: http://www.twitter.com/cromedome Blog: http://crome-plated.tumblr.com/ CPAN: http://search.cpan.org/~cromedome/ github: http://github.com/cromedome Bitbucket: https://bitbucket.org/cromedome/ Show quoted text
> On Aug 23, 2015, at 2:00 PM, Heiko Jansen via RT <bug-Mojolicious-Plugin-ReCAPTCHAv2@rt.cpan.org> wrote: > > <URL: https://rt.cpan.org/Ticket/Display.html?id=106580 > > > Am Fr 21. Aug 2015, 10:07:06, CROMEDOME schrieb: >
>> When I attempt to verify a CAPTCHA, the plugin reports the following >> error: >> >> Retrieving captcha verifcation failed: IO::Socket::SSL 1.94+ required >> for TLS support
> > Actually it´s not Mojolicious::Plugin::ReCAPTCHAv2 which reports this error: M::P::ReCAPTCHAv2 utilizes Mojo::UserAgent which in turn uses Mojo::IOLoop::Client which then checks for the presence of a sufficiently up-to-date IO::Socket::SSL. > AFAIK the way the version requirement check works hasn´t changed for quite a while, so I don´t think that that´s the origin of the problem report. >
>> When I went to verify I had the proper version of IO::Socket::SSL >> installed: >> >> IO::Socket::SSL is up to date. (2.016)
> > Maybe you have two different versions of IO::Socket::SSL installed in two different places? > Do you manipulate perls @INC, e.g. through "use lib qw(...)" or something like that? > > Please verify that the "perl" executable that you use on the CLI is the same that is used when you start your Mojolicious app. > > Otherwise, did you verify that your IO::Socket::SSL can be loaded? Try > perl -E 'use IO::Socket::SSL 1.94 (); say "OK"' > > Make sure that a really simple test script works: > perl -E 'use Mojo::UserAgent; my $ua = Mojo::UserAgent->new; say $ua->get("https://www.google.com/recaptcha/api/siteverify")->res->code' > > Hopefully one of these ideas will help you locate the root cause of your problem! > > Best > Heiko
Hi Json, Am Fr 28. Aug 2015, 12:21:31, cromedome@gmail.com schrieb: Show quoted text
> I will keep poking around to see what else I can find.
given your successful tests I don´t have all that many suggestions left to explore. Only thing that comes to mind is: make sure you haven´t set $ENV{MOJO_NO_TLS} to a true value before executing the failing code. Heiko
Not sure what happened, but things are working now. I'll see if I can determine what the cause and fix was. Thanks for the prompt attention to this and for all of your help! On Mon Aug 31 08:47:42 2015, HJANSEN wrote: Show quoted text
> Hi Json, > > Am Fr 28. Aug 2015, 12:21:31, cromedome@gmail.com schrieb: >
> > I will keep poking around to see what else I can find.
> > given your successful tests I don´t have all that many suggestions > left to explore. > Only thing that comes to mind is: make sure you haven´t set > $ENV{MOJO_NO_TLS} to a true value before executing the failing code. > > Heiko