style:包名小写
This commit is contained in:
@@ -1,5 +0,0 @@
|
|||||||
package Global
|
|
||||||
|
|
||||||
import "Mmx/Modles"
|
|
||||||
|
|
||||||
var Config *Modles.Config
|
|
||||||
5
global/global.go
Normal file
5
global/global.go
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
package global
|
||||||
|
|
||||||
|
import "Mmx/Modles"
|
||||||
|
|
||||||
|
var Config *modles.Config
|
||||||
56
main.go
56
main.go
@@ -14,39 +14,39 @@ import (
|
|||||||
func main() {
|
func main() {
|
||||||
defer func() {
|
defer func() {
|
||||||
if e := recover(); e != nil {
|
if e := recover(); e != nil {
|
||||||
Util.Log.Println(e)
|
util.Log.Println(e)
|
||||||
var buf [4096]byte
|
var buf [4096]byte
|
||||||
Util.Log.Println(string(buf[:runtime.Stack(buf[:], false)]))
|
util.Log.Println(string(buf[:runtime.Stack(buf[:], false)]))
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
Util.Log.Println("Step0: 检查状态…")
|
util.Log.Println("Step0: 检查状态…")
|
||||||
G := Global.Config.Generate()
|
G := global.Config.Generate()
|
||||||
|
|
||||||
if Global.Config.Settings.QuitIfNetOk && Util.Checker.NetOk() {
|
if global.Config.Settings.QuitIfNetOk && util.Checker.NetOk() {
|
||||||
Util.Log.Println("网络正常,程序退出")
|
util.Log.Println("网络正常,程序退出")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
Util.Log.Println("Step1: 正在获取客户端ip")
|
util.Log.Println("Step1: 正在获取客户端ip")
|
||||||
{
|
{
|
||||||
body, err := Request.Get(G.UrlLoginPage, nil)
|
body, err := request.Get(G.UrlLoginPage, nil)
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
G.Ip, err = Util.GetIp(body)
|
G.Ip, err = util.GetIp(body)
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
}
|
}
|
||||||
Util.Log.Println("Step2: 正在获取Token")
|
util.Log.Println("Step2: 正在获取Token")
|
||||||
{
|
{
|
||||||
data, err := Request.Get(G.UrlGetChallengeApi, map[string]string{
|
data, err := request.Get(G.UrlGetChallengeApi, map[string]string{
|
||||||
"callback": "jsonp1583251661367",
|
"callback": "jsonp1583251661367",
|
||||||
"username": G.Form.UserName,
|
"username": G.Form.UserName,
|
||||||
"ip": G.Ip,
|
"ip": G.Ip,
|
||||||
})
|
})
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
G.Token, err = Util.GetToken(data)
|
G.Token, err = util.GetToken(data)
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
}
|
}
|
||||||
Util.Log.Println("Step3: 执行登录…")
|
util.Log.Println("Step3: 执行登录…")
|
||||||
{
|
{
|
||||||
info, err := json.Marshal(map[string]string{
|
info, err := json.Marshal(map[string]string{
|
||||||
"username": G.Form.UserName,
|
"username": G.Form.UserName,
|
||||||
@@ -55,18 +55,18 @@ func main() {
|
|||||||
"acid": G.Meta.Acid,
|
"acid": G.Meta.Acid,
|
||||||
"enc_ver": G.Meta.Enc,
|
"enc_ver": G.Meta.Enc,
|
||||||
})
|
})
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
G.EncryptedInfo = "{SRBX1}" + Util.Base64(Util.XEncode(string(info), G.Token))
|
G.EncryptedInfo = "{SRBX1}" + util.Base64(util.XEncode(string(info), G.Token))
|
||||||
G.Md5 = Util.Md5(G.Token)
|
G.Md5 = util.Md5(G.Token)
|
||||||
G.EncryptedMd5 = "{MD5}" + G.Md5
|
G.EncryptedMd5 = "{MD5}" + G.Md5
|
||||||
|
|
||||||
var chkstr = G.Token + G.Form.UserName + G.Token + G.Md5
|
var chkstr = G.Token + G.Form.UserName + G.Token + G.Md5
|
||||||
chkstr += G.Token + G.Meta.Acid + G.Token + G.Ip
|
chkstr += G.Token + G.Meta.Acid + G.Token + G.Ip
|
||||||
chkstr += G.Token + G.Meta.N + G.Token + G.Meta.Type
|
chkstr += G.Token + G.Meta.N + G.Token + G.Meta.Type
|
||||||
chkstr += G.Token + G.EncryptedInfo
|
chkstr += G.Token + G.EncryptedInfo
|
||||||
G.EncryptedChkstr = Util.Sha1(chkstr)
|
G.EncryptedChkstr = util.Sha1(chkstr)
|
||||||
|
|
||||||
res, err := Request.Get(G.UrlLoginApi, map[string]string{
|
res, err := request.Get(G.UrlLoginApi, map[string]string{
|
||||||
"callback": "jQuery112401157665",
|
"callback": "jQuery112401157665",
|
||||||
"action": "login",
|
"action": "login",
|
||||||
"username": G.Form.UserName,
|
"username": G.Form.UserName,
|
||||||
@@ -82,12 +82,12 @@ func main() {
|
|||||||
"double_stack": "0",
|
"double_stack": "0",
|
||||||
"_": fmt.Sprint(time.Now().UnixNano()),
|
"_": fmt.Sprint(time.Now().UnixNano()),
|
||||||
})
|
})
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
G.LoginResult, err = Util.GetResult(res)
|
G.LoginResult, err = util.GetResult(res)
|
||||||
Util.ErrHandler(err)
|
util.ErrHandler(err)
|
||||||
Util.Log.Println("登录结果: " + G.LoginResult)
|
util.Log.Println("登录结果: " + G.LoginResult)
|
||||||
if Global.Config.Settings.DemoMode {
|
if global.Config.Settings.DemoMode {
|
||||||
Util.Log.Println(res)
|
util.Log.Println(res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package Modles
|
package modles
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"Mmx/Modles/util"
|
"Mmx/Modles/util"
|
||||||
@@ -9,6 +9,7 @@ type Settings struct {
|
|||||||
QuitIfNetOk bool `json:"quit_if_net_ok"`
|
QuitIfNetOk bool `json:"quit_if_net_ok"`
|
||||||
DemoMode bool `json:"demo_mode"`
|
DemoMode bool `json:"demo_mode"`
|
||||||
Dns string `json:"dns"`
|
Dns string `json:"dns"`
|
||||||
|
Daemon uint `json:"daemon"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Modles
|
package modles
|
||||||
|
|
||||||
type LoginForm struct {
|
type LoginForm struct {
|
||||||
Domain string `json:"domain"`
|
Domain string `json:"domain"`
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Request
|
package request
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"Mmx/Util"
|
"Mmx/Util"
|
||||||
@@ -26,10 +26,10 @@ func Get(Url string, Query map[string]string) (string, error) {
|
|||||||
resp, err := (&http.Client{
|
resp, err := (&http.Client{
|
||||||
Transport: &http.Transport{
|
Transport: &http.Transport{
|
||||||
DialContext: (&net.Dialer{
|
DialContext: (&net.Dialer{
|
||||||
Timeout: 10 * time.Second,
|
Timeout: 5 * time.Second,
|
||||||
Resolver: &net.Resolver{
|
Resolver: &net.Resolver{
|
||||||
PreferGo: true,
|
PreferGo: true,
|
||||||
Dial: Util.NetDailEr(),
|
Dial: util.NetDailEr(),
|
||||||
},
|
},
|
||||||
}).DialContext,
|
}).DialContext,
|
||||||
},
|
},
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
func getbyte(a byte) int {
|
func getbyte(a byte) int {
|
||||||
x := int(a)
|
x := int(a)
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"math"
|
"math"
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bufio"
|
"bufio"
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"Mmx/Global"
|
"Mmx/Global"
|
||||||
@@ -10,7 +10,7 @@ import (
|
|||||||
func init() {
|
func init() {
|
||||||
//配置文件初始化
|
//配置文件初始化
|
||||||
Path := "Config.json"
|
Path := "Config.json"
|
||||||
var c Modles.Config
|
var c modles.Config
|
||||||
if !File.Exists(Path) {
|
if !File.Exists(Path) {
|
||||||
if err := File.WriteJson(
|
if err := File.WriteJson(
|
||||||
Path,
|
Path,
|
||||||
@@ -30,5 +30,5 @@ func init() {
|
|||||||
|
|
||||||
_ = File.WriteJson(Path, c.FillDefault())
|
_ = File.WriteJson(Path, c.FillDefault())
|
||||||
|
|
||||||
Global.Config = &c
|
global.Config = &c
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"Mmx/Global"
|
"Mmx/Global"
|
||||||
@@ -40,7 +40,7 @@ func (c *loG) genTimeStamp() {
|
|||||||
|
|
||||||
func (c *loG) Println(a ...interface{}) {
|
func (c *loG) Println(a ...interface{}) {
|
||||||
c.genTimeStamp()
|
c.genTimeStamp()
|
||||||
if Global.Config.Settings.DemoMode {
|
if global.Config.Settings.DemoMode {
|
||||||
c.WriteLog("Login-"+c.timeStamp+".log", a...)
|
c.WriteLog("Login-"+c.timeStamp+".log", a...)
|
||||||
}
|
}
|
||||||
log.Println(a...)
|
log.Println(a...)
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package Util
|
package util
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"Mmx/Global"
|
"Mmx/Global"
|
||||||
@@ -54,7 +54,7 @@ func Sha1(content string) string {
|
|||||||
func ErrHandler(err error) {
|
func ErrHandler(err error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Log.Println("运行出错,状态异常")
|
Log.Println("运行出错,状态异常")
|
||||||
if Global.Config.Settings.DemoMode {
|
if global.Config.Settings.DemoMode {
|
||||||
Log.Fatalln(err)
|
Log.Fatalln(err)
|
||||||
}
|
}
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
@@ -66,6 +66,6 @@ func NetDailEr() func(ctx context.Context, network, address string) (net.Conn, e
|
|||||||
d := net.Dialer{
|
d := net.Dialer{
|
||||||
Timeout: 5 * time.Second,
|
Timeout: 5 * time.Second,
|
||||||
}
|
}
|
||||||
return d.DialContext(ctx, "udp", Global.Config.Settings.Dns+":53")
|
return d.DialContext(ctx, "udp", global.Config.Settings.Dns+":53")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user