onward
This commit is contained in:
parent
92f8b42706
commit
09e7dfbb2b
32
http.go
32
http.go
|
@ -8,6 +8,7 @@ import (
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"go.wit.com/log"
|
"go.wit.com/log"
|
||||||
|
@ -48,19 +49,21 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if route == "/list" {
|
/*
|
||||||
all := me.portmaps.All()
|
if route == "/list" {
|
||||||
for all.Scan() {
|
all := me.portmaps.All()
|
||||||
pm := all.Next()
|
for all.Scan() {
|
||||||
if !pm.Enabled {
|
pm := all.Next()
|
||||||
continue
|
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)
|
return
|
||||||
log.Info(s)
|
|
||||||
fmt.Fprintln(w, s)
|
|
||||||
}
|
}
|
||||||
return
|
*/
|
||||||
}
|
|
||||||
|
|
||||||
if route == "/save" {
|
if route == "/save" {
|
||||||
log.Info("event log is len =", me.events.Len())
|
log.Info("event log is len =", me.events.Len())
|
||||||
|
@ -71,14 +74,17 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
if route == "/enable" {
|
if route == "/enable" {
|
||||||
log.HttpMode(w)
|
log.HttpMode(w)
|
||||||
defer log.HttpMode(nil)
|
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
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if route == "/disable" {
|
if route == "/disable" {
|
||||||
log.HttpMode(w)
|
log.HttpMode(w)
|
||||||
defer log.HttpMode(nil)
|
defer log.HttpMode(nil)
|
||||||
log.Info("enable port/dest", port, dest)
|
num, _ := strconv.Atoi(port)
|
||||||
|
log.Info("disable port =", num, "dest =", dest)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
30
main.go
30
main.go
|
@ -43,7 +43,7 @@ func main() {
|
||||||
if me.portmaps == nil {
|
if me.portmaps == nil {
|
||||||
me.portmaps = NewPortmaps()
|
me.portmaps = NewPortmaps()
|
||||||
p := new(Portmap)
|
p := new(Portmap)
|
||||||
p.Connect = "testing:323"
|
p.Dest = "testing:323"
|
||||||
me.portmaps.Append(p)
|
me.portmaps.Append(p)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ func main() {
|
||||||
if !pm.Enabled {
|
if !pm.Enabled {
|
||||||
continue
|
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 gus3000(pm)
|
||||||
}
|
}
|
||||||
startHTTP()
|
startHTTP()
|
||||||
|
@ -74,7 +74,7 @@ func main() {
|
||||||
if !pm.Enabled {
|
if !pm.Enabled {
|
||||||
continue
|
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 gus3000(pm)
|
||||||
}
|
}
|
||||||
// go NewWatchdog()
|
// go NewWatchdog()
|
||||||
|
@ -84,8 +84,8 @@ func main() {
|
||||||
|
|
||||||
// func doME(pm *Portmap, gus listener.Accept) {
|
// func doME(pm *Portmap, gus listener.Accept) {
|
||||||
func doME(pm *Portmap, gus net.Listener) {
|
func doME(pm *Portmap, gus net.Listener) {
|
||||||
localport := int(pm.Listen)
|
localport := int(pm.Localport)
|
||||||
where := pm.Connect
|
where := pm.Dest
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// Listen on local port 3000
|
// Listen on local port 3000
|
||||||
|
@ -113,8 +113,8 @@ func doME(pm *Portmap, gus net.Listener) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func gus3000(pm *Portmap) {
|
func gus3000(pm *Portmap) {
|
||||||
port := int(pm.Listen)
|
port := int(pm.Localport)
|
||||||
connect := pm.Connect
|
connect := pm.Dest
|
||||||
|
|
||||||
// Listen on local port 3000
|
// Listen on local port 3000
|
||||||
s := fmt.Sprintf("0.0.0.0:%d", port)
|
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
|
me.eventsChanged = true
|
||||||
log.Printf("Connection closed on port %d from client: %s to where = %s\n", localport, clientConn.RemoteAddr(), where)
|
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)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -3,8 +3,8 @@ syntax = "proto3";
|
||||||
package gus;
|
package gus;
|
||||||
|
|
||||||
message Portmap {
|
message Portmap {
|
||||||
int64 listen = 1; // `autogenpb:unique`
|
int64 localport = 1; // `autogenpb:unique`
|
||||||
string connect = 2;
|
string dest = 2;
|
||||||
bool enabled = 3;
|
bool enabled = 3;
|
||||||
bool allowIPv4 = 4;
|
bool allowIPv4 = 4;
|
||||||
bool useME = 5;
|
bool useME = 5;
|
||||||
|
|
|
@ -42,7 +42,7 @@ func doMachinesUpgradeTable() {
|
||||||
// display the protobuf
|
// display the protobuf
|
||||||
me.portwin.TB = AddMachinesPB(me.portwin.box, me.portmaps)
|
me.portwin.TB = AddMachinesPB(me.portwin.box, me.portmaps)
|
||||||
f := func(m *Portmap) {
|
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
|
m.Enabled = true
|
||||||
}
|
}
|
||||||
me.portwin.TB.Custom(f)
|
me.portwin.TB.Custom(f)
|
||||||
|
@ -55,7 +55,7 @@ func AddMachinesPB(tbox *gui.Node, pb *Portmaps) *PortmapsTable {
|
||||||
t.SetParent(tbox)
|
t.SetParent(tbox)
|
||||||
|
|
||||||
editf := func(m *Portmap) string {
|
editf := func(m *Portmap) string {
|
||||||
log.Info("machine =", m.Connect)
|
log.Info("machine =", m.Dest)
|
||||||
return "edit"
|
return "edit"
|
||||||
}
|
}
|
||||||
t.AddButtonFunc("edit", editf)
|
t.AddButtonFunc("edit", editf)
|
||||||
|
@ -78,8 +78,8 @@ func AddMachinesPB(tbox *gui.Node, pb *Portmaps) *PortmapsTable {
|
||||||
}
|
}
|
||||||
t.AddStringFunc("enabled", enabledf)
|
t.AddStringFunc("enabled", enabledf)
|
||||||
|
|
||||||
t.AddListen()
|
t.AddLocalport()
|
||||||
t.AddConnect()
|
t.AddDest()
|
||||||
t.ShowTable()
|
t.ShowTable()
|
||||||
return t
|
return t
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue