aboutsummaryrefslogtreecommitdiff
path: root/xS
diff options
context:
space:
mode:
Diffstat (limited to 'xS')
-rw-r--r--xS/main.go4
1 files changed, 4 insertions, 0 deletions
diff --git a/xS/main.go b/xS/main.go
index cf54ab0..8fcb6c2 100644
--- a/xS/main.go
+++ b/xS/main.go
@@ -172,6 +172,10 @@ func splitString(s, delims string, ignoreEmpty bool) (result []string) {
// SSL3/TLS: <22> | <3> | xxxx xxxx
// (handshake)| (protocol version)
//
+// Note that Go 1.12's crypto/tls offers a slightly more straight-forward
+// solution: "If a client sends an initial message that does not look like TLS,
+// the server will no longer reply with an alert, and it will expose the
+// underlying net.Conn in the new field Conn of RecordHeaderError."
func detectTLS(sysconn syscall.RawConn) (isTLS bool) {
sysconn.Read(func(fd uintptr) (done bool) {
var buf [3]byte