From 959a1bb8c8f061f9279884fcad1d96d12e64fda6 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Fri, 17 Jun 2022 18:59:24 -0700 Subject: [PATCH 01/12] add workflow --- .github/workflows/ci.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..cc4df2f --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,35 @@ +name: Run tests + +on: + push: + branches: + - "*" + pull_request: + branches: + - "*" + +jobs: + build: + runs-on: ubuntu-latest + name: Run tests + + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-go@v3 + with: + go-version: '1.18.3' + + - name: Ensure linux agent compiles + run: | + ARCHS='amd64 386 arm64 arm' + for i in ${ARCHS}; do + env CGO_ENABLED=0 GOOS=linux GOARCH=${i} go build -ldflags "-s -w" + done + + - name: Ensure windows agent compiles + run: | + ARCHS='amd64 386' + for i in ${ARCHS}; do + env CGO_ENABLED=0 GOOS=windows GOARCH=${i} go build -ldflags "-s -w" + done From 73deda7d04e52072d55dea49e6d9cba4bbc96134 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Mon, 20 Jun 2022 12:23:51 -0700 Subject: [PATCH 02/12] refactor goarch --- agent/agent.go | 1 - agent/install.go | 10 +--------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index 567d56a..f299863 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -141,7 +141,6 @@ func New(logger *logrus.Logger, version string) *Agent { return &Agent{ Hostname: info.Hostname, - Arch: info.Architecture, BaseURL: ac.BaseURL, AgentID: ac.AgentID, ApiURL: ac.APIURL, diff --git a/agent/install.go b/agent/install.go index 8614794..db8fad3 100644 --- a/agent/install.go +++ b/agent/install.go @@ -138,14 +138,6 @@ func (a *Agent) Install(i *Installer) { rClient.SetProxy(i.Proxy) } - var arch string - switch a.Arch { - case "x86_64": - arch = "64" - case "x86": - arch = "32" - } - var installerMeshSystemEXE string if len(i.MeshDir) > 0 { installerMeshSystemEXE = filepath.Join(i.MeshDir, "MeshAgent.exe") @@ -159,7 +151,7 @@ func (a *Agent) Install(i *Installer) { mesh := filepath.Join(a.ProgramDir, a.MeshInstaller) if i.LocalMesh == "" { a.Logger.Infoln("Downloading mesh agent...") - payload := map[string]string{"arch": arch, "plat": a.Platform} + payload := map[string]string{"goarch": a.GoArch, "plat": a.Platform} r, err := rClient.R().SetBody(payload).SetOutput(mesh).Post(fmt.Sprintf("%s/api/v3/meshexe/", baseURL)) if err != nil { a.installerMsg(fmt.Sprintf("Failed to download mesh agent: %s", err.Error()), "error", i.Silent) From eaf74850d212d63422276f966edf057ae8ecbc90 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Mon, 20 Jun 2022 15:22:28 -0700 Subject: [PATCH 03/12] update dev version --- build/setup.iss | 2 +- main.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/setup.iss b/build/setup.iss index 99bcd12..fd64abe 100644 --- a/build/setup.iss +++ b/build/setup.iss @@ -1,5 +1,5 @@ #define MyAppName "Tactical RMM Agent" -#define MyAppVersion "2.0.4" +#define MyAppVersion "2.1.0-dev" #define MyAppPublisher "AmidaWare LLC" #define MyAppURL "https://github.com/amidaware" #define MyAppExeName "tacticalrmm.exe" diff --git a/main.go b/main.go index 392c376..5b3b35c 100644 --- a/main.go +++ b/main.go @@ -25,7 +25,7 @@ import ( ) var ( - version = "2.0.4" + version = "2.1.0-dev" log = logrus.New() logFile *os.File ) From d8da1316230a34678ce57dfe5a3e32624aa6a406 Mon Sep 17 00:00:00 2001 From: redanthrax Date: Wed, 22 Jun 2022 13:03:45 -0700 Subject: [PATCH 04/12] added unix support/tested builds --- agent/{agent_linux.go => agent_unix.go} | 11 +---------- agent/{install_linux.go => install_unix.go} | 2 ++ 2 files changed, 3 insertions(+), 10 deletions(-) rename agent/{agent_linux.go => agent_unix.go} (97%) rename agent/{install_linux.go => install_unix.go} (98%) diff --git a/agent/agent_linux.go b/agent/agent_unix.go similarity index 97% rename from agent/agent_linux.go rename to agent/agent_unix.go index 1027344..3ae5475 100644 --- a/agent/agent_linux.go +++ b/agent/agent_unix.go @@ -1,13 +1,4 @@ -/* -Copyright 2022 AmidaWare LLC. - -Licensed under the Tactical RMM License Version 1.0 (the “License”). -You may only use the Licensed Software in accordance with the License. -A copy of the License is available at: - -https://license.tacticalrmm.com - -*/ +// +build !windows package agent diff --git a/agent/install_linux.go b/agent/install_unix.go similarity index 98% rename from agent/install_linux.go rename to agent/install_unix.go index b9debcc..3168f82 100644 --- a/agent/install_linux.go +++ b/agent/install_unix.go @@ -1,3 +1,5 @@ +// +build !windows + /* Copyright 2022 AmidaWare LLC. From d3753535d53a8cd4050f3eacdc53b314f116a70b Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Wed, 22 Jun 2022 20:20:19 +0000 Subject: [PATCH 05/12] add back license --- agent/agent_unix.go | 12 ++++++++++++ agent/install_unix.go | 1 + 2 files changed, 13 insertions(+) diff --git a/agent/agent_unix.go b/agent/agent_unix.go index 3ae5475..ddd5bac 100644 --- a/agent/agent_unix.go +++ b/agent/agent_unix.go @@ -1,5 +1,17 @@ +//go:build !windows // +build !windows +/* +Copyright 2022 AmidaWare LLC. + +Licensed under the Tactical RMM License Version 1.0 (the “License”). +You may only use the Licensed Software in accordance with the License. +A copy of the License is available at: + +https://license.tacticalrmm.com + +*/ + package agent import ( diff --git a/agent/install_unix.go b/agent/install_unix.go index 3168f82..cf6a068 100644 --- a/agent/install_unix.go +++ b/agent/install_unix.go @@ -1,3 +1,4 @@ +//go:build !windows // +build !windows /* From 1ac1ca57e2ffbbf1904ac761e4680887d804d29f Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Wed, 22 Jun 2022 20:33:28 +0000 Subject: [PATCH 06/12] ensure agent compiles for mac and freebsd too --- .github/workflows/ci.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cc4df2f..3c4f05a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,3 +33,17 @@ jobs: for i in ${ARCHS}; do env CGO_ENABLED=0 GOOS=windows GOARCH=${i} go build -ldflags "-s -w" done + + - name: Ensure mac agent compiles + run: | + ARCHS='amd64 arm64' + for i in ${ARCHS}; do + env CGO_ENABLED=0 GOOS=darwin GOARCH=${i} go build -ldflags "-s -w" + done + + - name: Ensure freebsd agent compiles + run: | + ARCHS='amd64 386 arm64 arm' + for i in ${ARCHS}; do + env CGO_ENABLED=0 GOOS=freebsd GOARCH=${i} go build -ldflags "-s -w" + done From aed33b9a95fadb44e60c0522185dcce09a849623 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Sun, 26 Jun 2022 09:02:48 -0700 Subject: [PATCH 07/12] update for new exe format --- agent/agent.go | 8 ++++++++ agent/agent_windows.go | 2 +- agent/process.go | 7 +++++++ main.go | 2 +- 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index f299863..5fb4dd8 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -384,6 +384,7 @@ func (a *Agent) CleanupAgentUpdates() { return } + // winagent-v* is deprecated files, err := filepath.Glob("winagent-v*.exe") if err == nil { for _, f := range files { @@ -391,6 +392,13 @@ func (a *Agent) CleanupAgentUpdates() { } } + agents, err := filepath.Glob("tacticalagent-v*.exe") + if err == nil { + for _, f := range agents { + os.Remove(f) + } + } + cderr = os.Chdir(os.Getenv("TMP")) if cderr != nil { a.Logger.Errorln(cderr) diff --git a/agent/agent_windows.go b/agent/agent_windows.go index 0912cd2..541184b 100644 --- a/agent/agent_windows.go +++ b/agent/agent_windows.go @@ -635,7 +635,7 @@ func (a *Agent) AgentUninstall(code string) { func (a *Agent) addDefenderExlusions() { code := ` Add-MpPreference -ExclusionPath 'C:\Program Files\TacticalAgent\*' -Add-MpPreference -ExclusionPath 'C:\Windows\Temp\winagent-v*.exe' +Add-MpPreference -ExclusionPath 'C:\Windows\Temp\tacticalagent-v*.exe' Add-MpPreference -ExclusionPath 'C:\Windows\Temp\trmm\*' Add-MpPreference -ExclusionPath 'C:\Program Files\Mesh Agent\*' ` diff --git a/agent/process.go b/agent/process.go index bd3e4ee..ae7c392 100644 --- a/agent/process.go +++ b/agent/process.go @@ -64,9 +64,16 @@ func (a *Agent) KillHungUpdates() { if err != nil { continue } + + // winagent-v* is deprecated if strings.Contains(p.Exe, "winagent-v") { a.Logger.Debugln("killing process", p.Exe) KillProc(int32(p.PID)) } + + if strings.Contains(p.Exe, "tacticalagent-v") { + a.Logger.Debugln("killing process", p.Exe) + KillProc(int32(p.PID)) + } } } diff --git a/main.go b/main.go index 5b3b35c..7bbface 100644 --- a/main.go +++ b/main.go @@ -197,6 +197,6 @@ func installUsage() { } func updateUsage() { - u := `Usage: tacticalrmm.exe -m update -updateurl https://example.com/winagent-vX.X.X.exe -inno winagent-vX.X.X.exe -updatever 1.1.1` + u := `Usage: tacticalrmm.exe -m update -updateurl https://example.com/tacticalagent-vX.X.X.exe -inno tacticalagent-vX.X.X.exe -updatever 1.1.1` fmt.Println(u) } From 8d2511129c96565096e0fd09bca8c9ee56054d97 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Sun, 26 Jun 2022 15:34:00 -0700 Subject: [PATCH 08/12] support for nats websocket amidaware/tacticalrmm@42e1717455f6d3933266e9be9dd10e4fce2c7492 --- agent/agent.go | 18 ++++++++++++++++++ agent/agent_unix.go | 2 ++ agent/agent_windows.go | 4 ++++ agent/checkin.go | 4 +--- agent/install.go | 5 ----- agent/rpc.go | 3 +-- agent/svc.go | 4 +--- shared/types.go | 2 ++ 8 files changed, 29 insertions(+), 13 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index 5fb4dd8..9e29645 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -66,6 +66,9 @@ type Agent struct { Platform string GoArch string ServiceConfig *service.Config + NatsServer string + NatsProxyPath string + NatsProxyPort string } const ( @@ -139,6 +142,17 @@ func New(logger *logrus.Logger, version string) *Agent { }, } + var natsProxyPath, natsProxyPort string + if ac.NatsProxyPath == "" { + natsProxyPath = "natsws" + } + + if ac.NatsProxyPort == "" { + natsProxyPort = "443" + } + + natsServer := fmt.Sprintf("wss://%s:%s", ac.APIURL, natsProxyPort) + return &Agent{ Hostname: info.Hostname, BaseURL: ac.BaseURL, @@ -163,6 +177,9 @@ func New(logger *logrus.Logger, version string) *Agent { Platform: runtime.GOOS, GoArch: runtime.GOARCH, ServiceConfig: svcConf, + NatsServer: natsServer, + NatsProxyPath: natsProxyPath, + NatsProxyPort: natsProxyPort, } } @@ -359,6 +376,7 @@ func (a *Agent) setupNatsOptions() []nats.Option { opts = append(opts, nats.RetryOnFailedConnect(true)) opts = append(opts, nats.MaxReconnects(-1)) opts = append(opts, nats.ReconnectBufSize(-1)) + opts = append(opts, nats.ProxyPath("natsws")) return opts } diff --git a/agent/agent_unix.go b/agent/agent_unix.go index ddd5bac..42630c7 100644 --- a/agent/agent_unix.go +++ b/agent/agent_unix.go @@ -154,6 +154,8 @@ func NewAgentConfig() *rmm.AgentConfig { Cert: viper.GetString("cert"), Proxy: viper.GetString("proxy"), CustomMeshDir: viper.GetString("meshdir"), + NatsProxyPath: viper.GetString("natsproxypath"), + NatsProxyPort: viper.GetString("natsproxyport"), } return ret } diff --git a/agent/agent_windows.go b/agent/agent_windows.go index 541184b..5b83535 100644 --- a/agent/agent_windows.go +++ b/agent/agent_windows.go @@ -61,6 +61,8 @@ func NewAgentConfig() *rmm.AgentConfig { cert, _, _ := k.GetStringValue("Cert") proxy, _, _ := k.GetStringValue("Proxy") customMeshDir, _, _ := k.GetStringValue("MeshDir") + natsProxyPath, _, _ := k.GetStringValue("NatsProxyPath") + natsProxyPort, _, _ := k.GetStringValue("NatsProxyPort") return &rmm.AgentConfig{ BaseURL: baseurl, @@ -72,6 +74,8 @@ func NewAgentConfig() *rmm.AgentConfig { Cert: cert, Proxy: proxy, CustomMeshDir: customMeshDir, + NatsProxyPath: natsProxyPath, + NatsProxyPort: natsProxyPort, } } diff --git a/agent/checkin.go b/agent/checkin.go index 1deebbd..9990198 100644 --- a/agent/checkin.go +++ b/agent/checkin.go @@ -12,7 +12,6 @@ https://license.tacticalrmm.com package agent import ( - "fmt" "runtime" "time" @@ -78,8 +77,7 @@ func (a *Agent) NatsMessage(nc *nats.Conn, mode string) { func (a *Agent) DoNatsCheckIn() { opts := a.setupNatsOptions() - server := fmt.Sprintf("tls://%s:4222", a.ApiURL) - nc, err := nats.Connect(server, opts...) + nc, err := nats.Connect(a.NatsServer, opts...) if err != nil { a.Logger.Errorln(err) return diff --git a/agent/install.go b/agent/install.go index db8fad3..a975581 100644 --- a/agent/install.go +++ b/agent/install.go @@ -82,11 +82,6 @@ func (a *Agent) Install(i *Installer) { a.Logger.Debugln("API:", i.SaltMaster) - terr := TestTCP(fmt.Sprintf("%s:4222", i.SaltMaster)) - if terr != nil { - a.installerMsg(fmt.Sprintf("ERROR: Either port 4222 TCP is not open on your RMM, or nats.service is not running.\n\n%s", terr.Error()), "error", i.Silent) - } - baseURL := u.Scheme + "://" + u.Host a.Logger.Debugln("Base URL:", baseURL) diff --git a/agent/rpc.go b/agent/rpc.go index 7d24d0b..e457ecd 100644 --- a/agent/rpc.go +++ b/agent/rpc.go @@ -54,8 +54,7 @@ func (a *Agent) RunRPC() { var wg sync.WaitGroup wg.Add(1) opts := a.setupNatsOptions() - server := fmt.Sprintf("tls://%s:4222", a.ApiURL) - nc, err := nats.Connect(server, opts...) + nc, err := nats.Connect(a.NatsServer, opts...) if err != nil { a.Logger.Fatalln("RunRPC() nats.Connect()", err) } diff --git a/agent/svc.go b/agent/svc.go index 6e21b15..e360ebf 100644 --- a/agent/svc.go +++ b/agent/svc.go @@ -12,7 +12,6 @@ https://license.tacticalrmm.com package agent import ( - "fmt" "sync" "time" @@ -38,8 +37,7 @@ func (a *Agent) AgentSvc() { time.Sleep(time.Duration(sleepDelay) * time.Second) opts := a.setupNatsOptions() - server := fmt.Sprintf("tls://%s:4222", a.ApiURL) - nc, err := nats.Connect(server, opts...) + nc, err := nats.Connect(a.NatsServer, opts...) if err != nil { a.Logger.Fatalln("AgentSvc() nats.Connect()", err) } diff --git a/shared/types.go b/shared/types.go index 64ae5be..683b85b 100644 --- a/shared/types.go +++ b/shared/types.go @@ -42,6 +42,8 @@ type AgentConfig struct { Cert string Proxy string CustomMeshDir string + NatsProxyPath string + NatsProxyPort string } type RunScriptResp struct { From ac2637d14b6f20dd76d3f849208dee8c3ed3f24a Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Mon, 27 Jun 2022 23:31:56 -0700 Subject: [PATCH 09/12] fix hardcoded proxypath --- agent/agent.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/agent.go b/agent/agent.go index 9e29645..cbf45f1 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -376,7 +376,7 @@ func (a *Agent) setupNatsOptions() []nats.Option { opts = append(opts, nats.RetryOnFailedConnect(true)) opts = append(opts, nats.MaxReconnects(-1)) opts = append(opts, nats.ReconnectBufSize(-1)) - opts = append(opts, nats.ProxyPath("natsws")) + opts = append(opts, nats.ProxyPath(a.NatsProxyPath)) return opts } From 38907f6bc2759aaa0d6977ca15b037e4423c1519 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Fri, 1 Jul 2022 19:10:10 +0000 Subject: [PATCH 10/12] fix linux agent update when /tmp on different fs fixes #10 --- agent/agent_unix.go | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/agent/agent_unix.go b/agent/agent_unix.go index 42630c7..55c9d97 100644 --- a/agent/agent_unix.go +++ b/agent/agent_unix.go @@ -18,6 +18,7 @@ import ( "bufio" "fmt" "os" + "path/filepath" "runtime" "strconv" "strings" @@ -249,8 +250,29 @@ func (a *Agent) AgentUpdate(url, inno, version string) { os.Chmod(f.Name(), 0755) err = os.Rename(f.Name(), self) if err != nil { - a.Logger.Errorln("AgentUpdate() os.Rename():", err) - return + a.Logger.Debugln("Detected /tmp on different filesystem") + // rename does not work when src and dest are on different filesystems + // so we need to manually copy it to the same fs then rename it + cwd, err := os.Getwd() + if err != nil { + a.Logger.Errorln("AgentUpdate() os.Getwd():", err) + return + } + // create a tmpfile in same fs as agent + tmpfile := filepath.Join(cwd, GenerateAgentID()) + defer os.Remove(tmpfile) + a.Logger.Debugln("Copying tmpfile from", f.Name(), "to", tmpfile) + cperr := copyFile(f.Name(), tmpfile) + if cperr != nil { + a.Logger.Errorln("AgentUpdate() copyFile:", cperr) + return + } + os.Chmod(tmpfile, 0755) + rerr := os.Rename(tmpfile, self) + if rerr != nil { + a.Logger.Errorln("AgentUpdate() os.Rename():", rerr) + return + } } opts := a.NewCMDOpts() From 92dd7c110f7f4d1b17d0453fdb8004ad732efa53 Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Fri, 1 Jul 2022 19:12:34 +0000 Subject: [PATCH 11/12] add optional config setting to use nats standard tcp instead of websockets --- agent/agent.go | 8 +++++++- agent/agent_unix.go | 23 ++++++++++++----------- agent/agent_windows.go | 24 +++++++++++++----------- shared/types.go | 23 ++++++++++++----------- 4 files changed, 44 insertions(+), 34 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index cbf45f1..2e465e0 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -151,7 +151,13 @@ func New(logger *logrus.Logger, version string) *Agent { natsProxyPort = "443" } - natsServer := fmt.Sprintf("wss://%s:%s", ac.APIURL, natsProxyPort) + // check if using nats standard tcp, otherwise use nats websockets by default + var natsServer string + if ac.NatsStandardPort != "" { + natsServer = fmt.Sprintf("tls://%s:%s", ac.APIURL, ac.NatsStandardPort) + } else { + natsServer = fmt.Sprintf("wss://%s:%s", ac.APIURL, natsProxyPort) + } return &Agent{ Hostname: info.Hostname, diff --git a/agent/agent_unix.go b/agent/agent_unix.go index 55c9d97..037b112 100644 --- a/agent/agent_unix.go +++ b/agent/agent_unix.go @@ -146,17 +146,18 @@ func NewAgentConfig() *rmm.AgentConfig { pk, _ := strconv.Atoi(agentpk) ret := &rmm.AgentConfig{ - BaseURL: viper.GetString("baseurl"), - AgentID: viper.GetString("agentid"), - APIURL: viper.GetString("apiurl"), - Token: viper.GetString("token"), - AgentPK: agentpk, - PK: pk, - Cert: viper.GetString("cert"), - Proxy: viper.GetString("proxy"), - CustomMeshDir: viper.GetString("meshdir"), - NatsProxyPath: viper.GetString("natsproxypath"), - NatsProxyPort: viper.GetString("natsproxyport"), + BaseURL: viper.GetString("baseurl"), + AgentID: viper.GetString("agentid"), + APIURL: viper.GetString("apiurl"), + Token: viper.GetString("token"), + AgentPK: agentpk, + PK: pk, + Cert: viper.GetString("cert"), + Proxy: viper.GetString("proxy"), + CustomMeshDir: viper.GetString("meshdir"), + NatsProxyPath: viper.GetString("natsproxypath"), + NatsProxyPort: viper.GetString("natsproxyport"), + NatsStandardPort: viper.GetString("natsstandardport"), } return ret } diff --git a/agent/agent_windows.go b/agent/agent_windows.go index 5b83535..70367c7 100644 --- a/agent/agent_windows.go +++ b/agent/agent_windows.go @@ -63,19 +63,21 @@ func NewAgentConfig() *rmm.AgentConfig { customMeshDir, _, _ := k.GetStringValue("MeshDir") natsProxyPath, _, _ := k.GetStringValue("NatsProxyPath") natsProxyPort, _, _ := k.GetStringValue("NatsProxyPort") + natsStandardPort, _, _ := k.GetStringValue("NatsStandardPort") return &rmm.AgentConfig{ - BaseURL: baseurl, - AgentID: agentid, - APIURL: apiurl, - Token: token, - AgentPK: agentpk, - PK: pk, - Cert: cert, - Proxy: proxy, - CustomMeshDir: customMeshDir, - NatsProxyPath: natsProxyPath, - NatsProxyPort: natsProxyPort, + BaseURL: baseurl, + AgentID: agentid, + APIURL: apiurl, + Token: token, + AgentPK: agentpk, + PK: pk, + Cert: cert, + Proxy: proxy, + CustomMeshDir: customMeshDir, + NatsProxyPath: natsProxyPath, + NatsProxyPort: natsProxyPort, + NatsStandardPort: natsStandardPort, } } diff --git a/shared/types.go b/shared/types.go index 683b85b..2038f5e 100644 --- a/shared/types.go +++ b/shared/types.go @@ -33,17 +33,18 @@ type ProcessMsg struct { } type AgentConfig struct { - BaseURL string - AgentID string - APIURL string - Token string - AgentPK string - PK int - Cert string - Proxy string - CustomMeshDir string - NatsProxyPath string - NatsProxyPort string + BaseURL string + AgentID string + APIURL string + Token string + AgentPK string + PK int + Cert string + Proxy string + CustomMeshDir string + NatsProxyPath string + NatsProxyPort string + NatsStandardPort string } type RunScriptResp struct { From ed56a2af31ff9ec1b5f69ca32fc1af9ec2f0541d Mon Sep 17 00:00:00 2001 From: wh1te909 Date: Thu, 7 Jul 2022 11:19:00 -0700 Subject: [PATCH 12/12] bump version --- build/rmm.exe.manifest | 2 +- build/setup.iss | 2 +- main.go | 2 +- versioninfo.json | 12 ++++++------ 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/build/rmm.exe.manifest b/build/rmm.exe.manifest index b37646b..243bb4d 100644 --- a/build/rmm.exe.manifest +++ b/build/rmm.exe.manifest @@ -3,7 +3,7 @@ diff --git a/build/setup.iss b/build/setup.iss index fd64abe..3a10b72 100644 --- a/build/setup.iss +++ b/build/setup.iss @@ -1,5 +1,5 @@ #define MyAppName "Tactical RMM Agent" -#define MyAppVersion "2.1.0-dev" +#define MyAppVersion "2.1.0" #define MyAppPublisher "AmidaWare LLC" #define MyAppURL "https://github.com/amidaware" #define MyAppExeName "tacticalrmm.exe" diff --git a/main.go b/main.go index 7bbface..ce69cfb 100644 --- a/main.go +++ b/main.go @@ -25,7 +25,7 @@ import ( ) var ( - version = "2.1.0-dev" + version = "2.1.0" log = logrus.New() logFile *os.File ) diff --git a/versioninfo.json b/versioninfo.json index 13186f9..ef230db 100644 --- a/versioninfo.json +++ b/versioninfo.json @@ -2,14 +2,14 @@ "FixedFileInfo": { "FileVersion": { "Major": 2, - "Minor": 0, - "Patch": 4, + "Minor": 1, + "Patch": 0, "Build": 0 }, "ProductVersion": { "Major": 2, - "Minor": 0, - "Patch": 4, + "Minor": 1, + "Patch": 0, "Build": 0 }, "FileFlagsMask": "3f", @@ -22,14 +22,14 @@ "Comments": "", "CompanyName": "AmidaWare LLC", "FileDescription": "Tactical RMM Agent", - "FileVersion": "v2.0.4.0", + "FileVersion": "v2.1.0.0", "InternalName": "tacticalrmm.exe", "LegalCopyright": "Copyright (c) 2022 AmidaWare LLC", "LegalTrademarks": "", "OriginalFilename": "tacticalrmm.exe", "PrivateBuild": "", "ProductName": "Tactical RMM Agent", - "ProductVersion": "v2.0.4.0", + "ProductVersion": "v2.1.0.0", "SpecialBuild": "" }, "VarFileInfo": {