added dotfiles to config
This commit is contained in:
@@ -14,6 +14,9 @@ steam:
|
||||
password: steampassword
|
||||
api_key: apikey
|
||||
rate_per_sec: 1
|
||||
sentry: ".sentry"
|
||||
login_key: ".login_key"
|
||||
server_list: ".server.json"
|
||||
|
||||
httpd:
|
||||
cors_allow_domains: '*'
|
||||
|
@@ -18,10 +18,7 @@ import (
|
||||
|
||||
//goland:noinspection SpellCheckingInspection
|
||||
const (
|
||||
SENTRYFILE = ".sentry"
|
||||
LOGINKEYFILE = ".login_key"
|
||||
SERVERLIST = ".server.json"
|
||||
APPID = 730
|
||||
APPID = 730
|
||||
)
|
||||
|
||||
type DemoMatchLoader struct {
|
||||
@@ -30,6 +27,9 @@ type DemoMatchLoader struct {
|
||||
steamLogin *steam.LogOnDetails
|
||||
matchRecv chan *protobuf.CMsgGCCStrike15V2_MatchList
|
||||
cmList []*netutil.PortAddr
|
||||
sentryFile string
|
||||
loginKey string
|
||||
serverList string
|
||||
}
|
||||
|
||||
func AccountId2SteamId(accId uint32) uint64 {
|
||||
@@ -127,31 +127,35 @@ func (d *DemoMatchLoader) connectToSteam() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (d *DemoMatchLoader) Setup(username string, password string, authCode string) error {
|
||||
func (d *DemoMatchLoader) Setup(username string, password string, authCode string, sentry string, loginKey string, serverList string) error {
|
||||
d.loginKey = loginKey
|
||||
d.sentryFile = sentry
|
||||
d.serverList = serverList
|
||||
|
||||
d.steamLogin = new(steam.LogOnDetails)
|
||||
d.steamLogin.Username = username
|
||||
d.steamLogin.Password = password
|
||||
d.steamLogin.AuthCode = authCode
|
||||
d.steamLogin.ShouldRememberPassword = true
|
||||
|
||||
if _, err := os.Stat(SENTRYFILE); err == nil {
|
||||
hash, err := ioutil.ReadFile(SENTRYFILE)
|
||||
if _, err := os.Stat(d.sentryFile); err == nil {
|
||||
hash, err := ioutil.ReadFile(d.sentryFile)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
d.steamLogin.SentryFileHash = hash
|
||||
}
|
||||
|
||||
if _, err := os.Stat(LOGINKEYFILE); err == nil {
|
||||
hash, err := ioutil.ReadFile(LOGINKEYFILE)
|
||||
if _, err := os.Stat(d.loginKey); err == nil {
|
||||
hash, err := ioutil.ReadFile(d.loginKey)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
d.steamLogin.LoginKey = string(hash)
|
||||
}
|
||||
|
||||
if _, err := os.Stat(SERVERLIST); err == nil {
|
||||
rawJson, err := ioutil.ReadFile(SERVERLIST)
|
||||
if _, err := os.Stat(d.serverList); err == nil {
|
||||
rawJson, err := ioutil.ReadFile(d.serverList)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -190,13 +194,13 @@ func (d *DemoMatchLoader) steamEventHandler() {
|
||||
log.Errorf("[DL] Unable to marshal JSON: %v", err)
|
||||
}
|
||||
|
||||
err = ioutil.WriteFile(SERVERLIST, serverJson, os.ModePerm)
|
||||
err = ioutil.WriteFile(d.serverList, serverJson, os.ModePerm)
|
||||
if err != nil {
|
||||
log.Errorf("[DL] Unable to write server list: %v", err)
|
||||
}
|
||||
case *steam.MachineAuthUpdateEvent:
|
||||
log.Debug("[DL] Got sentry!")
|
||||
err := ioutil.WriteFile(SENTRYFILE, e.Hash, os.ModePerm)
|
||||
err := ioutil.WriteFile(d.sentryFile, e.Hash, os.ModePerm)
|
||||
if err != nil {
|
||||
log.Errorf("[DL] Unable write sentry file: %v", err)
|
||||
}
|
||||
@@ -208,7 +212,7 @@ func (d *DemoMatchLoader) steamEventHandler() {
|
||||
log.Warningf("[DL] Steam login denied: %+v", e)
|
||||
switch e.Result {
|
||||
case steamlang.EResult_AccountLogonDenied:
|
||||
log.Warningf("[DL] Please provide AuthCode with --authcode")
|
||||
log.Fatalf("[DL] Please provide AuthCode with --authcode")
|
||||
case steamlang.EResult_InvalidPassword:
|
||||
log.Fatalf("[DL] Steam login wrong")
|
||||
}
|
||||
@@ -220,7 +224,7 @@ func (d *DemoMatchLoader) steamEventHandler() {
|
||||
}
|
||||
case *steam.LoginKeyEvent:
|
||||
log.Debug("Got login_key!")
|
||||
err := ioutil.WriteFile(LOGINKEYFILE, []byte(e.LoginKey), os.ModePerm)
|
||||
err := ioutil.WriteFile(d.loginKey, []byte(e.LoginKey), os.ModePerm)
|
||||
if err != nil {
|
||||
log.Errorf("[DL] Unable write login_key: %v", err)
|
||||
}
|
||||
|
2
main.go
2
main.go
@@ -395,7 +395,7 @@ func main() {
|
||||
|
||||
rL = ratelimit.New(conf.Steam.RatePerSecond)
|
||||
// setup GC
|
||||
err = demoLoader.Setup(conf.Steam.Username, conf.Steam.Password, *authCodeFlag)
|
||||
err = demoLoader.Setup(conf.Steam.Username, conf.Steam.Password, *authCodeFlag, conf.Steam.Sentry, conf.Steam.LoginKey, conf.Steam.ServerList)
|
||||
if err != nil {
|
||||
log.Fatalf("Unbale to setup DemoLoader: %v", err)
|
||||
}
|
||||
|
@@ -38,6 +38,9 @@ type Conf struct {
|
||||
Password string
|
||||
APIKey string `yaml:"api_key"`
|
||||
RatePerSecond int `yaml:"rate_per_sec"`
|
||||
Sentry string
|
||||
LoginKey string `yaml:"login_key"`
|
||||
ServerList string `yaml:"server_list"`
|
||||
}
|
||||
Httpd struct {
|
||||
CORSAllowDomains string `yaml:"cors_allow_domains"`
|
||||
|
Reference in New Issue
Block a user