sgifford has asked for the wisdom of the Perl Monks concerning the following question:

I'm porting a working Unix Perl program to Windows, and for some reason I'm having trouble getting IO::Socket::SSL to work. I don't seem to be able to create sockets with it at all. I'm testing with this one-liner:
perl -MIO::Socket::SSL=debug4 -e "$sock=IO::Socket::SSL->new('whereabouts.eecs.umich.edu:443') or die IO::Socket::SSL::errstr"
with this result:
CA file certs/my-ca.pem not found, using CA path instead. IO::Socket::INET configuration failederror:00000000:lib(0):func(0):rea +son(0) at -e line 1 IO::Socket::INET configuration failederror:00000000:lib(0):func(0):rea +son(0) at -e line 1.

The failure seems to happen when something tries to turn blocking on, which ends up in IO::Socket::INET::configure, which calls the blocking method on the socket, which fails.

I'm running on Windows 2000, with ActiveState Perl 5.8.8.817, with Net::SSLeay 1.30 and IO::Socket::SSL 0.999, both from http://cpan.uwinnipeg.ca/dist/

Does this module work for other people on Windows? Is there anything obvious I'm doing wrong? Any advice for troubleshooting and fixing this?

Thanks!

Update: Fix Net::SSLeay version number; not sure what file I got it from before...

Replies are listed 'Best First'.
Re: Trouble with IO::Socket::SSL on Windows
by syphilis (Archbishop) on Aug 24, 2006 at 05:33 UTC
    No such problem for me:
    D:\>perl -MIO::Socket::SSL=debug4 -e "$sock=IO::Socket::SSL->new('whe +reabouts.eecs.umich.edu:443') or die IO::Socket::SSL::errstr" D:\>perl -MNet::SSLeay -e "print $Net::SSLeay::VERSION" 1.25 D:\>perl -MIO::Socket::SSL -e "print $IO::Socket::SSL::VERSION" 0.92 D:\>
    Are you sure that you're running Net::SSLeay-0.61 ? I couldn't locate that version. If it exists it must be fairly old as version 1.00 was released over 8 years ago. Maybe that's where your problem lies.

    Cheers,
    Rob
Re: Trouble with IO::Socket::SSL on Windows
by Anonymous Monk on Aug 25, 2006 at 13:14 UTC