diff --git a/common/tls/utls_client.go b/common/tls/utls_client.go index b93942a3..a5ae6b65 100644 --- a/common/tls/utls_client.go +++ b/common/tls/utls_client.go @@ -3,7 +3,6 @@ package tls import ( - "context" "crypto/tls" "crypto/x509" "net" @@ -42,10 +41,6 @@ type utlsConnWrapper struct { *utls.UConn } -func (c *utlsConnWrapper) HandshakeContext(ctx context.Context) error { - return c.UConn.Handshake() -} - func (c *utlsConnWrapper) ConnectionState() tls.ConnectionState { state := c.Conn.ConnectionState() return tls.ConnectionState{ @@ -140,6 +135,14 @@ func newUTLSClient(router adapter.Router, serverAddress string, options option.O id = utls.HelloChrome_Auto case "firefox": id = utls.HelloFirefox_Auto + case "edge": + id = utls.HelloEdge_Auto + case "safari": + id = utls.HelloSafari_Auto + case "360": + id = utls.Hello360_Auto + case "qq": + id = utls.HelloQQ_Auto case "ios": id = utls.HelloIOS_Auto case "android": diff --git a/docs/configuration/shared/tls.md b/docs/configuration/shared/tls.md index 0f0b2a2a..694ce14d 100644 --- a/docs/configuration/shared/tls.md +++ b/docs/configuration/shared/tls.md @@ -192,10 +192,15 @@ Available fingerprint values: * chrome * firefox +* edge +* safari +* 360 +* qq * ios * android * random +Chrome fingerprint will be used if empty. ### ACME Fields diff --git a/docs/configuration/shared/tls.zh.md b/docs/configuration/shared/tls.zh.md index bef2727a..0f85bc90 100644 --- a/docs/configuration/shared/tls.zh.md +++ b/docs/configuration/shared/tls.zh.md @@ -192,10 +192,16 @@ uTLS 是 "crypto/tls" 的一个分支,它提供了 ClientHello 指纹识别阻 * chrome * firefox +* edge +* safari +* 360 +* qq * ios * android * random +默认使用 chrome 指纹。 + ### ACME 字段 !!! warning ""