summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAndreas Brachold <vdr07@deltab.de>2007-09-09 18:51:36 +0000
committerAndreas Brachold <vdr07@deltab.de>2007-09-09 18:51:36 +0000
commit5b289c11933419b15ef41ce8af3c1b013d362491 (patch)
tree2af242acd48e85c3046e294ec0d22bc335b5d860 /lib
parentc58704322fa8fcbee809d4c02643197d05293160 (diff)
downloadxxv-5b289c11933419b15ef41ce8af3c1b013d362491.tar.gz
xxv-5b289c11933419b15ef41ce8af3c1b013d362491.tar.bz2
* HTTPD: Fix - count received bytes.
Diffstat (limited to 'lib')
-rw-r--r--lib/XXV/MODULES/HTTPD.pm30
1 files changed, 18 insertions, 12 deletions
diff --git a/lib/XXV/MODULES/HTTPD.pm b/lib/XXV/MODULES/HTTPD.pm
index 3e5ab64..c51024b 100644
--- a/lib/XXV/MODULES/HTTPD.pm
+++ b/lib/XXV/MODULES/HTTPD.pm
@@ -202,7 +202,7 @@ sub init {
sub communicator
{
my $obj = shift || return error('No object defined!');
- my $watcher = shift || return error ('No Watcher!' );
+ my $watcher = shift || return error('No watcher defined!');
# read new line and report it
my $handle=$watcher->w->fd;
@@ -334,6 +334,7 @@ sub communicator
);
$obj->{STATUS}->{'sendbytes'} += $console->{'sendbytes'};
+
$watcher->w->cancel;
undef $watcher;
}
@@ -359,7 +360,7 @@ sub _readline {
sub parseRequest {
# ------------------
my $obj = shift || return error('No object defined!');
- my $socket = shift || return error ('No Handle!' );
+ my $socket = shift || return error('No handle defined!' );
my $logout = shift || 0;
binmode $socket;
@@ -394,6 +395,7 @@ sub parseRequest {
} else {
#dumper($line);
}
+ $obj->{STATUS}->{'readbytes'} += length($line) if($line);
}
$data->{Request} =~ s/%([a-f0-9][a-f0-9])/pack("C", hex($1))/ieg
@@ -407,6 +409,7 @@ sub parseRequest {
my $bytes = sysread($socket,$post,$data->{ContentLength});
$data->{Post} = $post
if($bytes && $data->{ContentLength} == $bytes);
+ $obj->{STATUS}->{'readbytes'} += $bytes;
}
#dumper($data);
return $data;
@@ -420,9 +423,9 @@ sub parseRequest {
sub handleInput {
# ------------------
my $obj = shift || return error('No object defined!');
- my $watcher = shift || return error ('No Watcher!');
- my $console = shift || return error ('No Console');
- my $cgi = shift || return error ('No CGI Object');
+ my $watcher = shift || return error('No watcher defined!');
+ my $console = shift || return error('No console defined!');
+ my $cgi = shift || return error('No CGI object defined!');
my $ucmd = $cgi->param('cmd') || '<undef>';
my $udata = $cgi->param('data') || '';
@@ -477,8 +480,11 @@ sub status {
my $lastReportTime = shift || 0;
return {
- message => sprintf(gettext('Traffic on HTTPD Socket since %s: sent: %d kbytes - received: %d kbytes - connections: %d'),
- $obj->{STATUS}->{'starttime'}, convert($obj->{STATUS}->{'sendbytes'}), convert($obj->{STATUS}->{'readbytes'}), $obj->{STATUS}->{'connects'} ),
+ message => sprintf(gettext('Traffic on HTTPD socket since %s: sent: %s kbytes - received: %s kbytes - connections: %d.'),
+ $obj->{STATUS}->{'starttime'},
+ convert($obj->{STATUS}->{'sendbytes'}),
+ convert($obj->{STATUS}->{'readbytes'}),
+ $obj->{STATUS}->{'connects'} ),
};
}
@@ -516,8 +522,8 @@ sub findskins
# return 1 if(load_file($res) eq 'abc');
# ------ unzip ------------
sub unzip {
- my $obj = shift || return error ('No Object');
- my $file = shift || return error ('No File');
+ my $obj = shift || return error('No object defined!');
+ my $file = shift || return error('No file defined!');
my $gz = gzopen($file, "rb")
or return $obj->msg(undef, sprintf(gettext("Could not open file '%s'! : %s"), $file, &gzerror ));
@@ -544,9 +550,9 @@ sub unzip {
sub checkvalue {
# ------------------
my $obj = shift || return error('No object defined!');
- my $watcher = shift || return error ('No Watcher!');
- my $console = shift || return error ('No Console');
- my $data = shift || return error ('No Data!' );
+ my $watcher = shift || return error('No watcher defined!');
+ my $console = shift || return error('No console defined!');
+ my $data = shift || return error('No data defined!');
my @query = split(':',$data);
my $check = $query[0];