Function: hypb:domain-name
hypb:domain-name is a byte-compiled function defined in hypb.el.
Signature
(hypb:domain-name)
Documentation
Return current Internet domain name with '@' prepended or nil if none.
Source Code
;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hypb.el
(defun hypb:domain-name ()
"Return current Internet domain name with '@' prepended or nil if none."
(let* ((dname-cmd (or (file-exists-p "/usr/bin/domainname")
(file-exists-p "/bin/domainname")))
(dname (or (and (boundp 'message-user-fqdn) (stringp message-user-fqdn)
(string-match "\\." message-user-fqdn)
message-user-fqdn)
(getenv "DOMAINNAME")
(when dname-cmd
(hypb:call-process-p
"domainname" nil
'(substring (buffer-string) 0 -1)))))
host-and-domain)
(when (or (and dname (string-match "\\." dname))
(and (setq host-and-domain (hypb:call-process-p
"hostname" nil '(substring (buffer-string) 0 -1) "-f"))
(setq dname (when (string-match "\\`[^.]+\\." host-and-domain)
(substring host-and-domain (match-end 0)))))
(let* ((src "/etc/resolv.conf")
(src-buf-exists-p (get-file-buffer src)))
(and (file-exists-p src) (file-readable-p src)
(with-temp-buffer
(insert-file-contents-literally src)
(goto-char (point-min))
(when (re-search-forward "^domain[ \t]+\\([^ \t\n\r]+\\)" nil t)
(setq dname (match-string 1)))
(or src-buf-exists-p (kill-buffer nil))
dname))))
(concat "@" dname))))