@@ -190,19 +190,26 @@ func isDNSNotFoundError(err error) bool {
190
190
191
191
// isTLSCertificateVerificationError checks if the error is related to TLS certificate verification.
192
192
func isTLSCertificateVerificationError (err error ) bool {
193
- var certErr * x509.CertificateInvalidError
194
- var unknownAuthErr x509.UnknownAuthorityError
195
-
196
- // Directly check for CertificateInvalidError or UnknownAuthorityError
197
- if errors .As (err , & certErr ) || errors .As (err , & unknownAuthErr ) {
193
+ var (
194
+ certErr * x509.CertificateInvalidError
195
+ unknownAuthErr x509.UnknownAuthorityError
196
+ hostnameErr * x509.HostnameError
197
+ )
198
+
199
+ // Directly check for certificate-related errors
200
+ if errors .As (err , & certErr ) ||
201
+ errors .As (err , & unknownAuthErr ) ||
202
+ errors .As (err , & hostnameErr ) {
198
203
return true
199
204
}
200
205
201
206
// Check if the error is wrapped in a *url.Error
202
207
var urlErr * url.Error
203
208
if errors .As (err , & urlErr ) {
204
209
// Check the underlying error in urlErr
205
- if errors .As (urlErr .Err , & certErr ) || errors .As (urlErr .Err , & unknownAuthErr ) {
210
+ if errors .As (urlErr .Err , & certErr ) ||
211
+ errors .As (urlErr .Err , & unknownAuthErr ) ||
212
+ errors .As (urlErr .Err , & hostnameErr ) {
206
213
return true
207
214
}
208
215
}
0 commit comments