|Subject:||The Module dies on Unexpected Parameters to Constructor|
Hi, Today i had to suffer from an nasty bug with your module.. I tried to use IO::Socket::SSL with IO::Socket::IP. As soon as i made it work my app crashed with the following error: perl -E 'use IO::Socket::IP; use IO::Socket::SSL; $IO::Socket::SSL::ISA = 'IO::Socket::IP'; my $test = IO::Socket::SSL->new(SSL_ =>1);' Unexpected keys - SSL_, SSL_cert_file, SSL_check_crl, SSL_honor_cipher_order, SSL_key_file, SSL_server, SSL_use_cert, SSL_verify_mode, SSL_version at -e line 1 The workaround is just to load the Module into IO::Socket::SSL. You see as as soon as IO::Socket::SSL is constructed the underlying constructor of IO::Socket::IP dies cause it doesn't like the Keys! Another Example: perl -MIO::Socket::IP -E 'my $ip = IO::Socket::IP->new(blabla => 1);' Unexpected keys - blabla at -e line 1 This is a critical bug and i either request you fixing this behavior and just don't care about these keys(don't doing the checks), or to remove the "drop in replacement" advert from the Modules Text, because in this state it can't be called a drop in at all! As Reference here the Functionality of both Examples when using IO::Socket::INET: perl -E 'use IO::Socket::SSL; my $test = IO::Socket::SSL->new(SSL_ =>1);' perl -MIO::Socket::INET -E 'my $ip = IO::Socket::INET->new(blabla => 1);' It doesn't complain, and the same i expect from your module.