diff --git a/adapter/outbound/vless.go b/adapter/outbound/vless.go index d4444cb0..cfb39e99 100644 --- a/adapter/outbound/vless.go +++ b/adapter/outbound/vless.go @@ -600,10 +600,13 @@ func NewVless(option VlessOption) (*Vless, error) { } var tlsConfig *tls.Config if option.TLS { - tlsConfig = ca.GetGlobalTLSConfig(&tls.Config{ + tlsConfig, err = ca.GetSpecifiedFingerprintTLSConfig(&tls.Config{ InsecureSkipVerify: v.option.SkipCertVerify, ServerName: v.option.ServerName, - }) + }, v.option.Fingerprint) + if err != nil { + return nil, err + } if option.ServerName == "" { host, _, _ := net.SplitHostPort(v.addr) tlsConfig.ServerName = host diff --git a/adapter/outbound/vmess.go b/adapter/outbound/vmess.go index 285fdc8e..35aacb78 100644 --- a/adapter/outbound/vmess.go +++ b/adapter/outbound/vmess.go @@ -511,10 +511,13 @@ func NewVmess(option VmessOption) (*Vmess, error) { } var tlsConfig *tls.Config if option.TLS { - tlsConfig = ca.GetGlobalTLSConfig(&tls.Config{ + tlsConfig, err = ca.GetSpecifiedFingerprintTLSConfig(&tls.Config{ InsecureSkipVerify: v.option.SkipCertVerify, ServerName: v.option.ServerName, - }) + }, v.option.Fingerprint) + if err != nil { + return nil, err + } if option.ServerName == "" { host, _, _ := net.SplitHostPort(v.addr) tlsConfig.ServerName = host