%# BEGIN LICENSE BLOCK %# %# Copyright (c) 1996-2002 Jesse Vincent %# %# (Except where explictly superceded by other copyright notices) %# %# This work is made available to you under the terms of Version 2 of %# the GNU General Public License. A copy of that license should have %# been provided with this software, but in any event can be snarfed %# from www.gnu.org %# %# This work is distributed in the hope that it will be useful, but %# WITHOUT ANY WARRANTY; without even the implied warranty of %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU %# General Public License for more details. %# %# %# Unless otherwise specified, all modifications, corrections or %# extensions to this work which alter its source code become the %# property of Best Practical Solutions, LLC when submitted for %# inclusion in the work. %# %# %# END LICENSE BLOCK <& /RTIR/Elements/Header, Title => $title, ShowBar => 0 &>
<&| /Widgets/TitleBox, title => $title, class => 'traceroute', &>
<%PERL>
while (my $content = <$tr>) {
    $m->comp('/Elements/MakeClicky', content => \$content);
    $m->out( $content );
    $m->out('
'); $m->flush_buffer; sleep(2); }
<%INIT> unless ( $q =~ /^[A-Z0-9.]+$/i ) { Abort(loc("Invalid search query")); } my $title = loc("Traceroute to '[_1]'", $q); my $cmd = RT->Config->Get('TracerouteCommand') || '/usr/sbin/traceroute'; unless ( -f $cmd && -x _ ) { $RT::Logger->error( "'$cmd' doesn't exist or it's not executable." ."Setup \$TracerouteCommand option" ); Abort(loc("Traceroute is not configured properly. Contact system administrator.")); } tied(%session)->release_all_locks; open my $tr, "$cmd $q|" or Abort("Couldn't run '/usr/sbin/traceroute': $!"); <%ARGS> $q => ''