[libnet-sslglue-perl] 21/39: Imported Upstream version 1.01
dom at earth.li
dom at earth.li
Thu Aug 27 18:38:43 UTC 2015
This is an automated email from the git hooks/post-receive script.
dom pushed a commit to branch master
in repository libnet-sslglue-perl.
commit d840fc8bcf44aa1cf958797894cca90c61f9de5a
Author: Dominic Hargreaves <dom at earth.li>
Date: Fri Apr 6 17:59:19 2012 +0100
Imported Upstream version 1.01
---
Changes | 14 ++++++++++++++
META.yml | 4 ++--
lib/Net/SSLGlue.pm | 2 +-
lib/Net/SSLGlue/LDAP.pm | 4 ++--
lib/Net/SSLGlue/SMTP.pm | 20 +++++++++++++++-----
t/external/02_smtp.t | 8 +++++---
6 files changed, 39 insertions(+), 13 deletions(-)
diff --git a/Changes b/Changes
index db2cdfe..f53914c 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,17 @@
+1.01 2012/01/31
+Net::SSLGlue::LDAP as wrongly named Net::DNSGlue::LDAP
+
+1.0 2012/01/30
+Net::SSLGlue::SMTP: save hello domain from last hello call, so that the
+hello after the starttls uses the same domain argument.
+Thanks to zaucker[AT]oetiker[DOT]ch for reporting problem.
+
+0.9 2012/01/24
+Net::SSLGlue::SMTP: fixed stripping of port from host/ip for name
+verification. Added hello after successful starttls. Extented tests
+to check, if we can actually talk after starttls.
+Thanks to zaucker[AT]oetiker[DOT]ch for reporting problem.
+
0.8 2011/07/17
fixed wrong position for include encode_base64 and uri_unescape in *::LWP.
Thanks to mtelle[AT]kamp-dsl[DOT]de for reporting
diff --git a/META.yml b/META.yml
index 4f12db3..5296399 100644
--- a/META.yml
+++ b/META.yml
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: Net-SSLGlue
-version: 0.8
+version: 1.01
abstract: ~
author: []
license: unknown
@@ -15,7 +15,7 @@ no_index:
directory:
- t
- inc
-generated_by: ExtUtils::MakeMaker version 6.55_02
+generated_by: ExtUtils::MakeMaker version 6.56
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
diff --git a/lib/Net/SSLGlue.pm b/lib/Net/SSLGlue.pm
index 7ac03ec..ca34c7d 100644
--- a/lib/Net/SSLGlue.pm
+++ b/lib/Net/SSLGlue.pm
@@ -1,5 +1,5 @@
package Net::SSLGlue;
-our $VERSION = 0.8;
+our $VERSION = '1.01';
=head1 NAME
diff --git a/lib/Net/SSLGlue/LDAP.pm b/lib/Net/SSLGlue/LDAP.pm
index f969496..e26f26a 100644
--- a/lib/Net/SSLGlue/LDAP.pm
+++ b/lib/Net/SSLGlue/LDAP.pm
@@ -1,7 +1,7 @@
use strict;
use warnings;
-package Net::DNSGlue::LDAP;
-our $VERSION = 0.2;
+package Net::SSLGlue::LDAP;
+our $VERSION = '1.01';
use Net::LDAP;
use IO::Socket::SSL 1.19;
diff --git a/lib/Net/SSLGlue/SMTP.pm b/lib/Net/SSLGlue/SMTP.pm
index 43c23ec..c5fb9dd 100644
--- a/lib/Net/SSLGlue/SMTP.pm
+++ b/lib/Net/SSLGlue/SMTP.pm
@@ -4,7 +4,7 @@ use warnings;
package Net::SSLGlue::SMTP;
use IO::Socket::SSL 1.19;
use Net::SMTP;
-our $VERSION = 0.7;
+our $VERSION = 1.0;
##############################################################################
# mix starttls method into Net::SMTP which on SSL handshake success
@@ -13,16 +13,19 @@ our $VERSION = 0.7;
sub Net::SMTP::starttls {
my $self = shift;
$self->_STARTTLS or return;
- my $host = ${*$self}{net_smtp_host};
+ my $host = $self->host;
# for name verification strip port from domain:port, ipv4:port, [ipv6]:port
- $host =~s{^(?:[^:]+|.+\])\:(\d+)$}{};
+ $host =~s{(?<!:):\d+$}{};
Net::SMTP::_SSLified->start_SSL( $self,
SSL_verify_mode => 1,
SSL_verifycn_scheme => 'smtp',
SSL_verifycn_name => $host,
@_
- );
+ ) or return;
+
+ # another hello after starttls to read new ESMTP capabilities
+ return $self->hello(${*$self}{net_smtp_hello_domain});
}
sub Net::SMTP::_STARTTLS {
shift->command("STARTTLS")->response() == Net::SMTP::CMD_OK
@@ -41,6 +44,13 @@ my $old_new = \&Net::SMTP::new;
}
};
+my $old_hello = \&Net::SMTP::hello;
+*Net::SMTP::hello = sub {
+ my ($self,$domain) = @_;
+ ${*$self}{net_smtp_hello_domain} = $domain if $domain;
+ goto &$old_hello;
+};
+
##############################################################################
# Socket class derived from IO::Socket::SSL
# strict certificate verification per default
@@ -57,7 +67,7 @@ our %SSLopts;
if ! exists $arg_hash->{SSL_verify_mode};
$arg_hash->{SSL_verifycn_scheme} = 'smtp'
if ! exists $arg_hash->{SSL_verifycn_scheme};
- $arg_hash->{SSL_verifycn_name} = ${*$self}{net_smtp_host}
+ $arg_hash->{SSL_verifycn_name} = $self->host
if ! exists $arg_hash->{SSL_verifycn_name};
# force keys from %SSLopts
diff --git a/t/external/02_smtp.t b/t/external/02_smtp.t
index 8f3efb2..4edad8d 100644
--- a/t/external/02_smtp.t
+++ b/t/external/02_smtp.t
@@ -33,7 +33,7 @@ IO::Socket::SSL->new(
SSL_ca_path => $capath,
SSL_verify_mode => 1,
SSL_verifycn_scheme => 'smtp'
- ) or do {
+) or do {
print "1..0 # mail.gmx.net:465 not reachable with SSL\n";
exit
};
@@ -46,12 +46,12 @@ IO::Socket::SSL->new(
SSL_ca_path => $capath,
SSL_verify_mode => 1,
SSL_verifycn_scheme => 'smtp'
- ) and do {
+) and do {
print "1..0 # mail.gmx.de:465 reachable with SSL\n";
exit
};
-print "1..5\n";
+print "1..6\n";
# first direct SSL
my $smtp = Net::SMTP->new( 'mail.gmx.net',
@@ -64,6 +64,8 @@ print $smtp ? "ok\n" : "not ok # smtp connect mail.gmx.net\n";
$smtp = Net::SMTP->new( 'mail.gmx.net' );
my $ok = $smtp->starttls( SSL_ca_path => $capath );
print $ok ? "ok\n" : "not ok # smtp starttls mail.gmx.net\n";
+# check that we can talk on connection
+print $smtp->quit ? "ok\n": "not ok # quit failed\n";
# against wrong host should fail
$smtp = Net::SMTP->new( 'mail.gmx.de' ); # should succeed
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libnet-sslglue-perl.git
More information about the Pkg-perl-cvs-commits
mailing list