- /* And about the host... */
- uname (&utsname);
- /* some systems report the FQDN instead of just the hostname */
- if ((p = strchr (utsname.nodename, '.'))) {
- Hostname = p_dupstr(utsname.nodename, p - utsname.nodename);
- p++;
- m_strcpy(buffer, sizeof(buffer), p); /* save the domain for below */
- }
- else
- Hostname = m_strdup(utsname.nodename);
-
- if (!p && getdnsdomainname(buffer, sizeof(buffer)) == -1)
- Fqdn = m_strdup("@");
- else
- if (*buffer != '@') {
- Fqdn = p_new(char, m_strlen(buffer) + m_strlen(Hostname) + 2);
- sprintf (Fqdn, "%s.%s", NONULL(Hostname), buffer);
- }
- else
- Fqdn = m_strdup(NONULL (Hostname));
-