git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] send-email: enable SSL level 1 debug output

From
John Keeping <john@keeping.me.uk>
Date
Nov 25, 2015, 00:02 UTC
Message-ID
<a56a8d728ffeb6a6c2b0f7decd0485a1906b8f25.1448409432.git.john@keeping.me.uk>
If a server's certificate isn't accepted by send-email, the output is:
	Unable to initialize SMTP properly. Check config and use --smtp-debug.

but adding --smtp-debug=1 just produces the same output since we don't get as far as talking SMTP.

Turning on SSL debug at level 1 gives:
	DEBUG: .../IO/Socket/SSL.pm:1796: SSL connect attempt failed error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed
	DEBUG: .../IO/Socket/SSL.pm:673: fatal SSL error: SSL connect attempt failed error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed
	DEBUG: .../IO/Socket/SSL.pm:1780: IO::Socket::IP configuration failed

IO::Socket::SSL defines level 1 debug as "print out errors from IO::Socket::SSL and ciphers from Net::SSLeay". In fact, it aliases Net::SSLeay::trace which is defined to guarantee silence at level 0 and only emit error messages at level 1, so let's enable it by default.

Signed-off-by: John Keeping <john@keeping.me.uk>
---
This is the result of a previous discussion [0] but I decided to drop
the switch on --smtp-debug since level 1 only gives output on errors.
[0] http://marc.info/?l=git&m=144840344331208&w=2
 git-send-email.perl | 1 +
 1 file changed, 1 insertion(+)
diff --git a/git-send-email.perl b/git-send-email.perl
index e907e0e..918aafa 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -1318,6 +1318,7 @@ Message-Id: $message_id
 			require Net::SMTP::SSL;
 			$smtp_domain ||= maildomain();
 			require IO::Socket::SSL;
+			$IO::Socket::SSL::DEBUG = 1;
 			# Net::SMTP::SSL->new() does not forward any SSL options
 			IO::Socket::SSL::set_client_defaults(
 				ssl_verify_params());
-- 
2.6.3.462.gbe2c914
Next: John Keeping
Message 1 of 2 in “send-email: enable SSL level 1 debug output”
  1. send-email: enable SSL level 1 debug outputJohn Keeping, Nov 25, 2015
  2. send-email: enable SSL level 1 debug outputJohn Keeping, Dec 3, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.