summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hostname.go12
-rw-r--r--main.go9
-rw-r--r--run.go37
3 files changed, 52 insertions, 6 deletions
diff --git a/hostname.go b/hostname.go
index cf033df..62803c1 100644
--- a/hostname.go
+++ b/hostname.go
@@ -42,9 +42,19 @@ func getHostname() {
// On Linux, /etc/hosts, /etc/hostname
// and domainname and hostname
func goodHostname(h string) bool {
- hostname := shell.Cat("/etc/hostname")
+ hostname := shell.Chomp(shell.Cat("/etc/hostname"))
log.Println("hostname =", hostname)
+ hs := run("hostname -s")
+ dn := run("domainname")
+ log.Println("hostname short =", hs, "domainname =", dn)
+
+ tmp := hs + "." + dn
+ if (hostname == tmp) {
+ log.Println("hostname seems to be good", hostname)
+ return true
+ }
+
return false
}
diff --git a/main.go b/main.go
index 620b4a6..53e8101 100644
--- a/main.go
+++ b/main.go
@@ -25,16 +25,16 @@ func main() {
me.ipmap = make(map[string]*IPtype)
me.dnsmap = make(map[string]*IPtype)
me.ifmap = make(map[int]*IFtype)
- me.dnsTTL = 5 // recheck DNS is working every 2 minutes // TODO: watch rx packets?
+ me.dnsTTL = 2 // recheck DNS is working every 2 minutes // TODO: watch rx packets?
// will set all debugging flags
// gui.SetDebug(true)
// myGui = gui.New().InitEmbed(resToolkit).LoadToolkit("gocui")
myGui = gui.New().Default()
- sleep(1)
+ sleep(.2)
setupControlPanelWindow()
- sleep(1)
+ sleep(.2)
if (args.GuiDebug) {
gui.DebugWindow()
}
@@ -49,9 +49,8 @@ func main() {
*/
func checkNetworkChanges() {
var ttl int = 0
- var ttlsleep int = 5
for {
- sleep(ttlsleep)
+ sleep(0.5)
ttl -= 1
if (ttl < 0) {
if (runtime.GOOS == "linux") {
diff --git a/run.go b/run.go
new file mode 100644
index 0000000..510007e
--- /dev/null
+++ b/run.go
@@ -0,0 +1,37 @@
+package main
+
+import (
+ "bytes"
+ "fmt"
+ "strings"
+ "os/exec"
+
+ "git.wit.org/wit/shell"
+)
+
+func run(s string) string {
+ cmdArgs := strings.Fields(s)
+ // Define the command you want to run
+ // cmd := exec.Command(cmdArgs)
+ cmd := exec.Command(cmdArgs[0], cmdArgs[1:len(cmdArgs)]...)
+
+ // Create a buffer to capture the output
+ var out bytes.Buffer
+
+ // Set the output of the command to the buffer
+ cmd.Stdout = &out
+
+ // Run the command
+ err := cmd.Run()
+ if err != nil {
+ fmt.Println("Error running command:", err)
+ return ""
+ }
+
+ tmp := shell.Chomp(out.String())
+ // Output the results
+ fmt.Println("Command Output:", tmp)
+
+ return tmp
+}
+