From 09e7dfbb2b34f5281bc3fef0b02c13db714db212 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Tue, 11 Mar 2025 08:50:57 -0500 Subject: [PATCH] onward --- http.go | 32 +++++++++++++++++++------------- main.go | 30 +++++++++++++++++++++++------- portmap.proto | 4 ++-- windowPortmap.go | 8 ++++---- 4 files changed, 48 insertions(+), 26 deletions(-) diff --git a/http.go b/http.go index 80ccd44..b2e9080 100644 --- a/http.go +++ b/http.go @@ -8,6 +8,7 @@ import ( "io/ioutil" "net/http" "os" + "strconv" "strings" "go.wit.com/log" @@ -48,19 +49,21 @@ func okHandler(w http.ResponseWriter, r *http.Request) { return } - if route == "/list" { - all := me.portmaps.All() - for all.Scan() { - pm := all.Next() - if !pm.Enabled { - continue + /* + if route == "/list" { + all := me.portmaps.All() + for all.Scan() { + pm := all.Next() + if !pm.Enabled { + continue + } + s := fmt.Sprintf("portmap enabled for port %d to %s", pm.Listen, pm.Connect) + log.Info(s) + fmt.Fprintln(w, s) } - s := fmt.Sprintf("portmap enabled for port %d to %s", pm.Listen, pm.Connect) - log.Info(s) - fmt.Fprintln(w, s) + return } - return - } + */ if route == "/save" { log.Info("event log is len =", me.events.Len()) @@ -71,14 +74,17 @@ func okHandler(w http.ResponseWriter, r *http.Request) { if route == "/enable" { log.HttpMode(w) defer log.HttpMode(nil) - log.Info("enable port/dest", port, dest) + num, _ := strconv.Atoi(port) + log.Info("enable port =", num, "dest =", dest) + enablePort(num, dest) return } if route == "/disable" { log.HttpMode(w) defer log.HttpMode(nil) - log.Info("enable port/dest", port, dest) + num, _ := strconv.Atoi(port) + log.Info("disable port =", num, "dest =", dest) return } diff --git a/main.go b/main.go index e87162c..d770790 100644 --- a/main.go +++ b/main.go @@ -43,7 +43,7 @@ func main() { if me.portmaps == nil { me.portmaps = NewPortmaps() p := new(Portmap) - p.Connect = "testing:323" + p.Dest = "testing:323" me.portmaps.Append(p) } @@ -61,7 +61,7 @@ func main() { if !pm.Enabled { continue } - log.Info("portmap enabled for port", pm.Listen, "to", pm.Connect) + log.Info("portmap enabled for port", pm.Localport, "to", pm.Dest) go gus3000(pm) } startHTTP() @@ -74,7 +74,7 @@ func main() { if !pm.Enabled { continue } - log.Info("portmap enabled for port", pm.Listen, "to", pm.Connect) + log.Info("portmap enabled for port", pm.Localport, "to", pm.Dest) go gus3000(pm) } // go NewWatchdog() @@ -84,8 +84,8 @@ func main() { // func doME(pm *Portmap, gus listener.Accept) { func doME(pm *Portmap, gus net.Listener) { - localport := int(pm.Listen) - where := pm.Connect + localport := int(pm.Localport) + where := pm.Dest /* // Listen on local port 3000 @@ -113,8 +113,8 @@ func doME(pm *Portmap, gus net.Listener) { } func gus3000(pm *Portmap) { - port := int(pm.Listen) - connect := pm.Connect + port := int(pm.Localport) + connect := pm.Dest // Listen on local port 3000 s := fmt.Sprintf("0.0.0.0:%d", port) @@ -177,3 +177,19 @@ func handleConnection(clientConn net.Conn, where string, localport int) { me.eventsChanged = true log.Printf("Connection closed on port %d from client: %s to where = %s\n", localport, clientConn.RemoteAddr(), where) } + +func enablePort(port int, dest string) { + all := me.portmaps.All() + for all.Scan() { + pm := all.Next() + if int(pm.Localport) == port { + log.Info("Found port!", port) + } + if pm.Enabled { + log.Info("portmap already enabled for", pm.Localport, "to", pm.Dest) + } else { + log.Info("portmap not enabled for", pm.Localport, "to", pm.Dest) + } + // go gus3000(pm) + } +} diff --git a/portmap.proto b/portmap.proto index fd9c297..f0cfdc3 100644 --- a/portmap.proto +++ b/portmap.proto @@ -3,8 +3,8 @@ syntax = "proto3"; package gus; message Portmap { - int64 listen = 1; // `autogenpb:unique` - string connect = 2; + int64 localport = 1; // `autogenpb:unique` + string dest = 2; bool enabled = 3; bool allowIPv4 = 4; bool useME = 5; diff --git a/windowPortmap.go b/windowPortmap.go index 3fb1ecf..9319fe5 100644 --- a/windowPortmap.go +++ b/windowPortmap.go @@ -42,7 +42,7 @@ func doMachinesUpgradeTable() { // display the protobuf me.portwin.TB = AddMachinesPB(me.portwin.box, me.portmaps) f := func(m *Portmap) { - log.Info("Triggering machine", m.Connect, "to upgrade portwin") + log.Info("Triggering machine", m.Dest, "to upgrade portwin") m.Enabled = true } me.portwin.TB.Custom(f) @@ -55,7 +55,7 @@ func AddMachinesPB(tbox *gui.Node, pb *Portmaps) *PortmapsTable { t.SetParent(tbox) editf := func(m *Portmap) string { - log.Info("machine =", m.Connect) + log.Info("machine =", m.Dest) return "edit" } t.AddButtonFunc("edit", editf) @@ -78,8 +78,8 @@ func AddMachinesPB(tbox *gui.Node, pb *Portmaps) *PortmapsTable { } t.AddStringFunc("enabled", enabledf) - t.AddListen() - t.AddConnect() + t.AddLocalport() + t.AddDest() t.ShowTable() return t }