54 lines
1.7 KiB
Go
54 lines
1.7 KiB
Go
package main
|
||
|
||
import (
|
||
"github.com/Mmx233/BitSrunLoginGo/internal/controllers"
|
||
"github.com/Mmx233/BitSrunLoginGo/internal/global"
|
||
"github.com/Mmx233/BitSrunLoginGo/tools"
|
||
log "github.com/sirupsen/logrus"
|
||
"net"
|
||
)
|
||
|
||
func main() {
|
||
if global.Config.Settings.Guardian.Enable {
|
||
//进入守护模式
|
||
controllers.Guardian()
|
||
} else {
|
||
//登录流程
|
||
var err error
|
||
if global.Config.Settings.Basic.Interfaces == "" { //单网卡
|
||
var eth *tools.Eth
|
||
if global.Flags.Interface != "" {
|
||
netEth, e := net.InterfaceByName(global.Flags.Interface)
|
||
if e != nil {
|
||
log.Warnf("获取指定网卡 %s 失败,使用默认网卡: %v", global.Flags.Interface, e)
|
||
} else {
|
||
eth, e = tools.ConvertInterface(*netEth)
|
||
if e != nil {
|
||
log.Warnf("获取指定网卡 %s ip 地址失败,使用默认网卡: %v", global.Flags.Interface, e)
|
||
} else if eth == nil {
|
||
log.Warnf("指定网卡 %s 无可用 ip 地址,使用默认网卡", global.Flags.Interface)
|
||
} else {
|
||
log.Debugf("使用指定网卡 %s ip: %s", eth.Name, eth.Addr.String())
|
||
}
|
||
}
|
||
}
|
||
if err = controllers.Login(eth, false); err != nil {
|
||
log.Errorln("登录出错: ", err)
|
||
if !global.Config.Settings.Log.DebugLevel {
|
||
log.Infoln("开启调试日志(debug_level)获取详细信息")
|
||
}
|
||
return
|
||
}
|
||
} else { //多网卡
|
||
log.Infoln("多网卡模式")
|
||
interfaces, _ := tools.GetInterfaceAddr(global.Config.Settings.Basic.Interfaces)
|
||
for _, eth := range interfaces {
|
||
log.Infoln("使用网卡: ", eth.Name)
|
||
if err = controllers.Login(ð, false); err != nil {
|
||
log.Errorf("网卡 %s 登录出错: %v", eth.Name, err)
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|