#!/usr/local/bin/perl use Tk; use File::Tail;
#Main Window

my $mw = new MainWindow;

$mw-> title ("Packet Analyzer Tool");

my $frm_4 = $frm_3 -> Frame(-relief => 'groove', -borderwidth =>2) -> pack(-side => "left");

my $but1 = $frm_1 -> Button(-text => "Start", -command =>\&push_start) -> pack(-side => "left", -anchor => 'nw', -ipadx => 30, -ipady => 35);

my $txt1 = $frm_4 -> Text(-width => 60, -height =>20,-state => "disable") -> pack(-side =>"left",-anchor => 's'); my $srl = $frm_4 -> Scrollbar(-orient=>'v', -command =>[yview => $txt]);

$txt1 -> configure(-yscrollcommand =>['set',$srl]);

#$txt -> insert('end', "XXX"); //display text

$txt1 -> grid(-row=>1, -column=>1);

$srl -> grid(-row=>1, -column=>2,-sticky=>"ns");

MainLoop;

#Executed START BUTTON

sub push_start

{

chdir( "/var/log/snort");

foreach my $fol(glob "*.*.*.*")

{

print "Opening $fol\n";

chdir("/var/log/snort/$fol");

foreach my $subfile(glob "*:*")

{

print "opening $subfile\n";

push(@files,File::Tail->new(name=>"$subfile",debug=>$debug));

}

while (1)

{

($nfound,$timeleft,@pending)= File::Tail::select(undef,undef,undef,$timeout,@files);

unless ($nfound)

{

print "Nothing to print \n";

}

else

{

foreach(@pending)

{

$txt1 ->insert('end', $_->read);

}

}

}

}
} #### #!/usr/local/bin/perl
use Tk;

use File::Tail;

#Main Window

my $mw = new MainWindow;

$mw-> title ("Packet Analyzer Tool");

my $frm_4 = $frm_3 -> Frame(-relief => 'groove', -borderwidth =>2) -> pack(-side => "left");

my $but1 = $frm_1 -> Button(-text => "Start", -command =>\&push_start) -> pack(-side => "left", -anchor => 'nw', -ipadx => 30, -ipady => 35);

my $txt1 = $frm_4 -> Text(-width => 60, -height =>20,-state => "disable") -> pack(-side =>"left",-anchor => 's'); my $srl = $frm_4 -> Scrollbar(-orient=>'v', -command =>[yview => $txt]);

$txt1 -> configure(-yscrollcommand =>['set',$srl]);

#$txt -> insert('end', "XXX"); //display text

$txt1 -> grid(-row=>1, -column=>1);

$srl -> grid(-row=>1, -column=>2,-sticky=>"ns");

MainLoop;

#Executed START BUTTON

sub push_start

{

chdir( "/var/log/snort");

foreach my $fol(glob "*.*.*.*")

{

print "Opening $fol\n";

chdir("/var/log/snort/$fol");

foreach my $subfile(glob "*:*")

{

print "opening $subfile\n";

push(@files,File::Tail->new(name=>"$subfile",debug=>$debug));

}

while (1)

{

($nfound,$timeleft,@pending)= File::Tail::select(undef,undef,undef,$timeout,@files);

unless ($nfound)

{

print "Nothing to print \n";

}

else

{

foreach(@pending)

{

tie *STDOUT ref $txt1, $txt1;

print $_->read;

}

}

}

}
}