On 08/19/2017 10:10 PM, Brandon Allbery wrote:
On Sun, Aug 20, 2017 at 12:55 AM, ToddAndMargo <toddandma...@zoho.com <mailto:toddandma...@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

Reply via email to