First draft

git-svn: trunk@935
remotes/push_mirror/metadata
Nigel Horne 21 years ago
parent 5d79922b9c
commit a209be9708
  1. 85
      clamav-devel/contrib/clamavmon/clamavmon

@ -0,0 +1,85 @@
#!/usr/bin/perl -w
# Copyright (C) 2004 Nigel Horne <njh@bandsman.co.uk>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
# clamavmon - monitor a network for virus intrusion
eval 'exec /usr/bin/perl -w -S $0 ${1+"$@"}' if 0;
use strict;
use IO::Socket::INET;
use Tk;
use Tk::Dialog;
use threads;
my $mw = MainWindow->new;
my $history = "";
my $text = $mw->Scrolled('Text', -width => 50, -scrollbars => 'ow')->pack;
my $button1 = $mw->Button(-text => 'About', -command => \&about)->pack(-side => 'left');
# my $button2 = $mw->Button(-text => 'Quit', -command => \&quit)->pack(-side => 'left');
my $button2 = $mw->Button(-text => 'Quit', -command => \&exit)->pack(-side => 'left');
my $t = threads->new(\&listener);
my $quitting = 0;
MainLoop;
sub listener {
my $MySocket = IO::Socket::INET->new(
LocalPort => 3310,
Proto => 'udp',
Type => SOCK_DGRAM) or die "$0: socket: $!\n";
unless($quitting) {
my $mess;
$MySocket->recv($mess, 128);
my ($rport, $ipaddr) = sockaddr_in($MySocket->peername);
$text->insert('end', "From " . inet_ntoa($ipaddr) . " $mess\n");
print "From " . inet_ntoa($ipaddr) . " $mess\n";
# $text->Contents($history);
$text->pack;
}
}
sub quit {
$quitting = 1;
$t->join();
exit;
}
sub about {
my $about = $mw->DialogBox(
-title=>"About clamAVmon",
-buttons=>["OK"]
);
$about->add('Label',
-anchor => 'w',
-justify => 'left',
-text => "clamAVmon\n" .
"Copyright (C) 2004 Nigel Horne njh\@bandsman.co.uk\n" .
"The GPL Licence will appear here")->pack;
$about->Show();
}
Loading…
Cancel
Save