develooper Front page | perl.perl6.users | Postings from August 2017

Re: How do I do SSL/TLS with eMail::MIME ?

Thread Previous
From:
ToddAndMargo
Date:
August 20, 2017 05:21
Subject:
Re: How do I do SSL/TLS with eMail::MIME ?
Message ID:
1397486f-9441-8b8d-075d-8ca21e41c03e@zoho.com
On 08/19/2017 10:10 PM, Brandon Allbery wrote:
> On Sun, Aug 20, 2017 at 12:55 AM, ToddAndMargo <ToddAndMargo@zoho.com 
> <mailto:ToddAndMargo@zoho.com>> wrote:
> 
>     On 08/19/2017 09:51 PM, Brandon Allbery wrote:
> 
>         I think you only want :starttls. :ssl tells it to expect a
>         socket that immediately negotiates SSL; the error suggests the
>         mail server doesn't. (Note that, because SSL is negotiated
>         immediately, it must use different ports; in general, a mail
>         server that supports SSL uses port 465 instead of 25, because it
>         can't do SSL and non-SSL on the same port.)
> 
>         Also, SSL as such isn't used that much beyond HTTPS. Modern mail
>         servers are more likely to use negotiated encryption (STARTTLS)
>         instead. So just :starttls and not :ssl.
> 
>     If I remove the :ssl and leave :starttls, it just hangs
> 
> 
> Are you sure this server supports STARTTLS?
> And if it really is SSL only then it probably doesn't *also* do 
> STARTTLS¸which is a newer protocol.

I added all the following to the bug report:
https://github.com/retupmoca/P6-Net-SMTP/issues/17

https://www.zoho.com/mail/help/zoho-smtp.html

SMTP Configuration settings for Zoho Mail - SSL
     Outgoing Server Name: smtp.zoho.com
     Port: 465
     Security Type: SSL
     Require Authentication: Yes.

SMTP Configuration settings for Zoho Mail - TLS
     Outgoing Server Name: smtp.zoho.com
     Port: 587
     Security Type: TLS


my $client = Net::SMTP.new( :server( "smtp.zoho.com" ), :port( 465 ), 
:ssl, :debug( 1 ) );

$ crashme.pl6
err code: 336130329
error:1408F119:SSL routines:SSL3_GET_RECORD:decryption failed or bad 
record mac
Use of uninitialized value of type Str in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to 
something meaningful.
   in method get-response at 
/home/tony/.perl6/sources/C7BFE131D057F94A1EC6C5CBF4DFC8C731D85400 
(Net::SMTP::Raw) line 13
Start argument to substr out of range. Is: 3, should be in 0..0; use *-3 
if you want to index relative to the end
   in method get-response at 
/home/tony/.perl6/sources/C7BFE131D057F94A1EC6C5CBF4DFC8C731D85400 
(Net::SMTP::Raw) line 13
   in method start at 
/home/tony/.perl6/sources/B0AFFC7E1CD3A465D71AF333700CF7086E4870E5 
(Net::SMTP::Simple) line 59
   in method new at 
/home/tony/.perl6/sources/AF0C4F60F05B28648456130019BA1D9C3B2FE938 
(Net::SMTP) line 38
   in block <unit> at ./crashme.pl6 line 5


my $client = Net::SMTP.new( :server( "smtp.zoho.com" ), :port( 587 ), 
:starttls, :debug( 1 ) );

$ crashme.pl6
<== 220 mx.zohomail.com SMTP Server ready August 19, 2017 10:18:33 PM PDT
==> EHLO rn4.rent-a-nerd.loca
<== 250-mx.zohomail.com Hello rn4.rent-a-nerd.local 
(50-37-23-91.grdv.nv.frontiernet.net (50.37.23.91))
<== 250-STARTTLS
<== 250 SIZE 53477376
==> STARTTL
<== 220 Ready to start TLS.
err code: 336130329
error:1408F119:SSL routines:SSL3_GET_RECORD:decryption failed or bad 
record mac
Use of uninitialized value of type Str in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to 
something meaningful.
   in method get-response at 
/home/tony/.perl6/sources/C7BFE131D057F94A1EC6C5CBF4DFC8C731D85400 
(Net::SMTP::Raw) line 13
Start argument to substr out of range. Is: 3, should be in 0..0; use *-3 
if you want to index relative to the end
   in method get-response at 
/home/tony/.perl6/sources/C7BFE131D057F94A1EC6C5CBF4DFC8C731D85400 
(Net::SMTP::Raw) line 13
   in method send at 
/home/tony/.perl6/sources/C7BFE131D057F94A1EC6C5CBF4DFC8C731D85400 
(Net::SMTP::Raw) line 22
   in method ehlo at 
/home/tony/.perl6/sources/C7BFE131D057F94A1EC6C5CBF4DFC8C731D85400 
(Net::SMTP::Raw) line 25
   in method start at 
/home/tony/.perl6/sources/B0AFFC7E1CD3A465D71AF333700CF7086E4870E5 
(Net::SMTP::Simple) line 63
   in method new at 
/home/tony/.perl6/sources/AF0C4F60F05B28648456130019BA1D9C3B2FE938 
(Net::SMTP) line 38
   in block <unit> at ./crashme.pl6 line 6

Thread Previous


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About