mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2025-04-19 21:42:24 +00:00
Merge pull request #225 from MHSanaei/fix-reality-sub-link
[sub] fix reality link
This commit is contained in:
commit
7ee9133e9b
1 changed files with 17 additions and 20 deletions
|
@ -271,17 +271,18 @@ func (s *SubService) genVlessLink(inbound *model.Inbound, email string) string {
|
|||
|
||||
if security == "reality" {
|
||||
params["security"] = "reality"
|
||||
realitySetting, _ := stream["realitySettings"].(map[string]interface{})
|
||||
realitySettings, _ := searchKey(realitySetting, "settings")
|
||||
if realitySetting != nil {
|
||||
if sniValue, ok := searchKey(realitySettings, "serverName"); ok {
|
||||
params["sni"], _ = sniValue.(string)
|
||||
realitySettings, _ := stream["realitySettings"].(map[string]interface{})
|
||||
if realitySettings != nil {
|
||||
if sniValue, ok := searchKey(realitySettings, "serverNames"); ok {
|
||||
sNames, _ := sniValue.([]interface{})
|
||||
params["sni"], _ = sNames[0].(string)
|
||||
}
|
||||
if pbkValue, ok := searchKey(realitySettings, "publicKey"); ok {
|
||||
params["pbk"], _ = pbkValue.(string)
|
||||
}
|
||||
if sidValue, ok := searchKey(realitySettings, "shortIds"); ok {
|
||||
params["sid"], _ = sidValue.(string)
|
||||
shortIds, _ := sidValue.([]interface{})
|
||||
params["sid"], _ = shortIds[0].(string)
|
||||
}
|
||||
if fpValue, ok := searchKey(realitySettings, "fingerprint"); ok {
|
||||
params["fp"], _ = fpValue.(string)
|
||||
|
@ -291,11 +292,6 @@ func (s *SubService) genVlessLink(inbound *model.Inbound, email string) string {
|
|||
if streamNetwork == "tcp" && len(clients[clientIndex].Flow) > 0 {
|
||||
params["flow"] = clients[clientIndex].Flow
|
||||
}
|
||||
|
||||
serverName, _ := realitySetting["serverName"].(string)
|
||||
if serverName != "" {
|
||||
address = serverName
|
||||
}
|
||||
}
|
||||
|
||||
if security == "xtls" {
|
||||
|
@ -444,25 +440,26 @@ func (s *SubService) genTrojanLink(inbound *model.Inbound, email string) string
|
|||
|
||||
if security == "reality" {
|
||||
params["security"] = "reality"
|
||||
realitySetting, _ := stream["realitySettings"].(map[string]interface{})
|
||||
realitySettings, _ := searchKey(realitySetting, "settings")
|
||||
if realitySetting != nil {
|
||||
if sniValue, ok := searchKey(realitySettings, "serverName"); ok {
|
||||
params["sni"], _ = sniValue.(string)
|
||||
realitySettings, _ := stream["realitySettings"].(map[string]interface{})
|
||||
if realitySettings != nil {
|
||||
if sniValue, ok := searchKey(realitySettings, "serverNames"); ok {
|
||||
sNames, _ := sniValue.([]interface{})
|
||||
params["sni"], _ = sNames[0].(string)
|
||||
}
|
||||
if pbkValue, ok := searchKey(realitySettings, "publicKey"); ok {
|
||||
params["pbk"], _ = pbkValue.(string)
|
||||
}
|
||||
if sidValue, ok := searchKey(realitySettings, "shortIds"); ok {
|
||||
params["sid"], _ = sidValue.(string)
|
||||
shortIds, _ := sidValue.([]interface{})
|
||||
params["sid"], _ = shortIds[0].(string)
|
||||
}
|
||||
if fpValue, ok := searchKey(realitySettings, "fingerprint"); ok {
|
||||
params["fp"], _ = fpValue.(string)
|
||||
}
|
||||
}
|
||||
serverName, _ := realitySetting["serverName"].(string)
|
||||
if serverName != "" {
|
||||
address = serverName
|
||||
|
||||
if streamNetwork == "tcp" && len(clients[clientIndex].Flow) > 0 {
|
||||
params["flow"] = clients[clientIndex].Flow
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue