From 6c0c0e83206a1b22a2014accd43a5fc5c6ad6be8 Mon Sep 17 00:00:00 2001 From: Ramana Reddy Date: Thu, 8 Aug 2024 16:05:07 +0530 Subject: [PATCH 1/2] fix ztls context deadline error --- common/httpx/tls.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/common/httpx/tls.go b/common/httpx/tls.go index 14077b8bd..0411b8557 100644 --- a/common/httpx/tls.go +++ b/common/httpx/tls.go @@ -1,6 +1,7 @@ package httpx import ( + "context" "crypto/tls" "crypto/x509" "fmt" @@ -62,7 +63,9 @@ func (h *HTTPX) ZTLSGrab(r *http.Response) *clients.Response { } // canonical net concatenation host = net.JoinHostPort(hostname, fmt.Sprint(port)) - tlsConn, err := h.Dialer.DialTLS(r.Request.Context(), "tcp", host) + ctx, cancel := context.WithTimeout(context.Background(), h.client2.Timeout) + defer cancel() + tlsConn, err := h.Dialer.DialTLS(ctx, "tcp", host) if err != nil { return nil } @@ -106,6 +109,7 @@ func convertCertificateToResponse(hostname string, cert *x509.Certificate) *clie SHA1: clients.SHA1Fingerprint(cert.Raw), SHA256: clients.SHA256Fingerprint(cert.Raw), }, + Serial: clients.FormatToSerialNumber(cert.SerialNumber), } response.IssuerDN = clients.ParseASN1DNSequenceWithZpkixOrDefault(cert.RawIssuer, cert.Issuer.String()) response.SubjectDN = clients.ParseASN1DNSequenceWithZpkixOrDefault(cert.RawSubject, cert.Subject.String()) From 493e493cd25e21c72c824ae3659a82177875da41 Mon Sep 17 00:00:00 2001 From: Ramana Reddy Date: Sat, 10 Aug 2024 10:28:12 +0530 Subject: [PATCH 2/2] use options timeout --- common/httpx/tls.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/httpx/tls.go b/common/httpx/tls.go index 0411b8557..dbdf36149 100644 --- a/common/httpx/tls.go +++ b/common/httpx/tls.go @@ -63,7 +63,7 @@ func (h *HTTPX) ZTLSGrab(r *http.Response) *clients.Response { } // canonical net concatenation host = net.JoinHostPort(hostname, fmt.Sprint(port)) - ctx, cancel := context.WithTimeout(context.Background(), h.client2.Timeout) + ctx, cancel := context.WithTimeout(context.Background(), h.Options.Timeout) defer cancel() tlsConn, err := h.Dialer.DialTLS(ctx, "tcp", host) if err != nil {