diff --git a/mxstartup2mxconfig b/mxstartup2mxconfig index 021f915..b1b2010 100755 --- a/mxstartup2mxconfig +++ b/mxstartup2mxconfig @@ -248,27 +248,10 @@ sub print_ips_cfg { ############################################################################## -sub walknetgroup { - my @ng; - - &y(\@ng,@_); - - sub y { - my ($ary,$m)=@_; - $_=`ypmatch $m netgroup 2>/dev/null`; - foreach ( split ) { - if (/\(/) { - s/[\(\),]//g; - push @$ary, $_; - } else { - foreach ( split ) { - &y($ary,$_); - } - } - } - } - - return @ng; +sub hostconfig_list { + my $tag = shift; + $_=`/usr/sbin/hostconfig --list $tag 2>/dev/null`; + return ( split ); } @@ -279,8 +262,9 @@ sub expand_hosts { foreach my $host (@oh) { if($host =~ /^\@(\S+)/) { - push @hosts, walknetgroup($1); - } elsif($host =~ /^(\/\S+)/) { + push @hosts, hostconfig_list($1); + } + elsif ($host =~ /^(\/\S+)/) { next unless(-r $1); push @hosts, expand_hosts(read_file($1)); } else {