diff options
Diffstat (limited to 'hostname_linux.go')
| -rw-r--r-- | hostname_linux.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/hostname_linux.go b/hostname_linux.go new file mode 100644 index 0000000..4ab6dee --- /dev/null +++ b/hostname_linux.go @@ -0,0 +1,22 @@ +package main + +import ( + "fmt" + "os" + "syscall" +) + +// GetFullHostname returns the hostname + domain name (if set). +func getFullHostname() (string, error) { + host, err := os.Hostname() + if err != nil { + return "", fmt.Errorf("failed to get hostname: %w", err) + } + + domain, err := getDomainName() + if err != nil || domain == "" { + return host, nil // fallback to short hostname + } + + return fmt.Sprintf("%s.%s", host, domain), nil +} |
