feat: 支持自动嗅探 enc

This commit is contained in:
Mmx233
2024-01-01 17:47:19 +08:00
parent 00fa06c9e0
commit 524bac30f5
5 changed files with 113 additions and 40 deletions

View File

@@ -29,7 +29,7 @@ func Login(eth *tools.Eth, debugOutput bool) error {
var acidOnReality bool
if config.Settings.Reality.Enable {
log.Debugln("开始 Reality 流程")
acid, _, err := srunClient.Reality(config.Settings.Reality.Addr, flags.AutoAcid)
acid, _, err := srunClient.Api.Reality(config.Settings.Reality.Addr, flags.AutoAcid)
if err != nil {
log.Errorln("Reality 请求异常:", err)
return err
@@ -46,7 +46,7 @@ func Login(eth *tools.Eth, debugOutput bool) error {
}
if !acidOnReality && flags.AutoAcid {
log.Debugln("开始嗅探 acid")
acid, err := srunClient.DetectAcid()
acid, err := srunClient.Api.DetectAcid()
if err != nil {
if errors.Is(err, srun.ErrAcidCannotFound) {
log.Warnln("找不到 acid使用配置 acid")
@@ -59,6 +59,21 @@ func Login(eth *tools.Eth, debugOutput bool) error {
}
}
if flags.AutoEnc {
log.Debugln("开始嗅探 enc")
enc, err := srunClient.Api.DetectEnc()
if err != nil {
if errors.Is(err, srun.ErrEnvCannotFound) {
log.Warnln("找不到 enc使用配置 enc")
} else {
log.Warnf("嗅探 enc 失败,使用配置 enc: %v", err)
}
} else {
log.Debugf("使用嗅探 enc: %s", enc)
srunClient.LoginInfo.Meta.Enc = enc
}
}
// 选择输出函数
var output func(args ...interface{})
if debugOutput {