--- projects/cms/source/host/ihost-perl/ihost.pl 2001/02/05 17:38:38 1.15 +++ projects/cms/source/host/ihost-perl/ihost.pl 2001/02/13 12:28:50 1.16 @@ -9,8 +9,8 @@ # methods as you see fit. # - pjm2@ukc.ac.uk # -# $Author: pjm2 $ -# $Id: ihost.pl,v 1.15 2001/02/05 17:38:38 pjm2 Exp $ +# $Author: tdb $ +# $Id: ihost.pl,v 1.16 2001/02/13 12:28:50 tdb Exp $ #------------------------------------------------------------ $| = 1; @@ -203,9 +203,23 @@ sub send_udp_packet() { my($hostname) = hostname(); $hostname =~ s/\..*$//g; - `cat /etc/resolv.conf` =~ /domain\s+([^\s]+)/; - my($domainname) = $1; - my($machine_name) = "$hostname.$domainname"; + my($resolv) = `cat /etc/resolv.conf`; + my($domainname); + my($machine_name); + if($resolv =~ /domain\s+([^\s]+)/) { + # some machines have domain in resolv.conf + $domainname = $1; + $machine_name = "$hostname.$domainname"; + } + elsif($resolv =~ /search\s+([^\s]+)/) { + # some machines have search in resolv.conf + $domainname = $1; + $machine_name = "$hostname.$domainname"; + } + else { + # we can't find out the domain + $machine_name = $hostname; + } my($ip) = inet_ntoa(scalar(gethostbyname($hostname)) || 'localhost'); # Build the XML packet this way, as we can clearly