From c3246f479eba4eeaf631d097962ef045cec2ca8e Mon Sep 17 00:00:00 2001 From: Dietmar Maurer Date: Thu, 24 Aug 2017 07:58:03 +0200 Subject: [PATCH] PMG/API2/Quarantine.pm - add virusstatus API --- PMG/API2/Quarantine.pm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/PMG/API2/Quarantine.pm b/PMG/API2/Quarantine.pm index 2e5bf9b..4d966e9 100644 --- a/PMG/API2/Quarantine.pm +++ b/PMG/API2/Quarantine.pm @@ -169,6 +169,7 @@ __PACKAGE__->register_method ({ { name => 'spamusers' }, { name => 'spamstatus' }, { name => 'virus' }, + { name => 'virusstatus' }, { name => 'quarusers' }, ]; @@ -718,6 +719,42 @@ __PACKAGE__->register_method ({ return $res; }}); +__PACKAGE__->register_method ({ + name => 'virusstatus', + path => 'virusstatus', + method => 'GET', + permissions => { check => [ 'admin', 'qmanager', 'audit'] }, + description => "Get Virus Quarantine Status", + parameters => { + additionalProperties => 0, + properties => {}, + }, + returns => { + type => "object", + properties => { + count => { + description => 'Number of stored mails.', + type => 'integer', + }, + mbytes => { + description => "Estimated disk space usage in MByte.", + type => 'number', + }, + avgbytes => { + description => "Average size of stored mails in bytes.", + type => 'number', + }, + }, + }, + code => sub { + my ($param) = @_; + + my $dbh = PMG::DBTools::open_ruledb(); + my $ref = PMG::DBTools::get_quarantine_count($dbh, 'V'); + + return $ref; + }}); + __PACKAGE__->register_method ({ name => 'content', path => 'content', -- 2.39.2