OSPF-LSDB

 view release on metacpan or  search on metacpan

script/ospfview  view on Meta::CPAN

	}
	$oldyaml = $yaml;

	my $view = $class->new($ospf);
	my $dot = $view->graph(%todo);
	if ($todo{verbose}) {
	    my @errors = $view->get_errors;
	    print map { "$_\n" } @errors, "" if @errors;
	}

	my $chldsigset = POSIX::SigSet->new( &POSIX::SIGCHLD );
	my $oldsigset = POSIX::SigSet->new();
	sigprocmask(POSIX::SIG_BLOCK, $chldsigset, $oldsigset)
	    or die "Block sigprocmask failed: $!";
	if ($pid) {
	    kill SIGTERM, $pid;
	    if (waitpid($pid, 0) > 0) {
		die "'@cmd' failed: $?" if $? &&
		    ((WIFEXITED($?) && WEXITSTATUS($?) != 0) ||
		    (WIFSIGNALED($?) && WTERMSIG($?) != SIGTERM));
		undef $pid;
		$gone = 1;
	    }
	}
	sigprocmask(POSIX::SIG_SETMASK, $oldsigset, undef)
	    or die "Setmask sigprocmask failed: $!";

	$gone = 0;
	$pid = open2(undef, $fh, @cmd)
	    or die "Open pipe to '@cmd' failed: $!";
	print $fh $dot, "\n";
	close($fh)
	    or die "Close pipe to '@cmd' failed: $!";
    }
}



( run in 2.631 seconds using v1.01-cache-2.11-cpan-71847e10f99 )