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/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 +} +