]>
git.proxmox.com Git - pmg-api.git/log
Dietmar Maurer [Tue, 12 Sep 2017 06:06:49 +0000 (08:06 +0200)]
round timespan to integer
old code was a NOP, because it uses float.
Dietmar Maurer [Tue, 12 Sep 2017 05:55:30 +0000 (07:55 +0200)]
remove dead code
Dietmar Maurer [Tue, 12 Sep 2017 05:12:25 +0000 (07:12 +0200)]
list mimetypes in API directory index
Dominik Csapak [Mon, 11 Sep 2017 11:23:07 +0000 (13:23 +0200)]
fix trailing whitespaces
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 11 Sep 2017 11:23:06 +0000 (13:23 +0200)]
make contenttype and matchfield available in the api
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 11 Sep 2017 11:23:05 +0000 (13:23 +0200)]
implement matchfield and contenttype api call methods
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 11 Sep 2017 11:23:04 +0000 (13:23 +0200)]
remove mimetype code from contenttypefilter module
we generate the list elsewhere now
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 11 Sep 2017 11:23:03 +0000 (13:23 +0200)]
add mimetypes api call
this gets us a server generated list of mimetypes for e.g. the
contenttype filter rule
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 11 Sep 2017 11:23:02 +0000 (13:23 +0200)]
use otype() sub instead of $self->{otype}
the sub otype() is always the one defined in the class we instantiated,
but $self->{otype} is set at creation and does not work if we do not set
it in the 'new' sub of the object (for example in ContentTypeFilter.pm)
so now we get the correct otype from the current class
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Mon, 11 Sep 2017 10:11:00 +0000 (12:11 +0200)]
add rbl count statistics API
Dietmar Maurer [Mon, 11 Sep 2017 09:55:40 +0000 (11:55 +0200)]
pmgpolicy: extract RBL count, store into database
Dietmar Maurer [Mon, 11 Sep 2017 07:38:58 +0000 (09:38 +0200)]
scan_journal_for_rbl_rejects: new helper to extract RBL rejects from journal
Dietmar Maurer [Mon, 11 Sep 2017 05:13:30 +0000 (07:13 +0200)]
new table LocalStat to sync RBLCount
Dietmar Maurer [Fri, 8 Sep 2017 09:12:24 +0000 (11:12 +0200)]
upgradedb: fix typo
Dietmar Maurer [Thu, 7 Sep 2017 08:38:34 +0000 (10:38 +0200)]
MatchField - allow to match empty fields
Dietmar Maurer [Thu, 7 Sep 2017 06:21:15 +0000 (08:21 +0200)]
statistics API: allow to specify year, month and day
This makes it simpler to use with pmgsh.
Dietmar Maurer [Thu, 7 Sep 2017 04:56:37 +0000 (06:56 +0200)]
code cleanup
Dietmar Maurer [Wed, 6 Sep 2017 10:23:35 +0000 (12:23 +0200)]
implement admin/advfilter configuration
Dietmar Maurer [Wed, 6 Sep 2017 09:40:59 +0000 (11:40 +0200)]
remove wrong uri_unescape
Dietmar Maurer [Wed, 6 Sep 2017 09:35:28 +0000 (11:35 +0200)]
implement contact statistic API
Dietmar Maurer [Tue, 5 Sep 2017 12:02:54 +0000 (14:02 +0200)]
implement receiver statistics, cleanups
Dietmar Maurer [Tue, 5 Sep 2017 04:00:46 +0000 (06:00 +0200)]
PMG/API2/Statistics.pm - remove unuse dir from directory index
Dietmar Maurer [Mon, 4 Sep 2017 10:46:08 +0000 (12:46 +0200)]
PMG/API2/Statistics.pm - implement sender statistics
Support remote sort/filter.
Dietmar Maurer [Mon, 4 Sep 2017 06:16:07 +0000 (08:16 +0200)]
define and use new standard option pmg-email-address
Dietmar Maurer [Fri, 1 Sep 2017 05:47:28 +0000 (07:47 +0200)]
PMG/API2/Statistics.pm - implement domain statistics
Dietmar Maurer [Fri, 1 Sep 2017 05:46:52 +0000 (07:46 +0200)]
PMG/Statistic.pm - rename traffic_in/out to bytes_in/out
Dietmar Maurer [Thu, 31 Aug 2017 10:10:05 +0000 (12:10 +0200)]
PMG/API2/Statistics.pm - add maildistribution API
Dietmar Maurer [Thu, 31 Aug 2017 10:04:47 +0000 (12:04 +0200)]
PMG::Statistic::traffic_stat_day_dist - return data for both directions
Dietmar Maurer [Thu, 31 Aug 2017 07:46:12 +0000 (09:46 +0200)]
PMG/API2/Statistics.pm - implement mailcount API
Dietmar Maurer [Thu, 31 Aug 2017 07:45:10 +0000 (09:45 +0200)]
PMG::Statistic::traffic_stat_graph - return data for both directions
Dietmar Maurer [Thu, 31 Aug 2017 05:27:11 +0000 (07:27 +0200)]
PMG/API2/Statistics.pm: improve spamscore api - include percentage
Dietmar Maurer [Fri, 25 Aug 2017 07:43:44 +0000 (09:43 +0200)]
improve API doc
Dietmar Maurer [Fri, 25 Aug 2017 06:05:04 +0000 (08:05 +0200)]
API /statistics/mail: return values as numbers
Dietmar Maurer [Thu, 24 Aug 2017 10:16:20 +0000 (12:16 +0200)]
API /statistics/spam: always return counts for levels 0 to 10
Dietmar Maurer [Thu, 24 Aug 2017 08:41:24 +0000 (10:41 +0200)]
PMG/API2/Statistics.pm - plug API to path /statistics
Because everything is node independent.
Dietmar Maurer [Thu, 24 Aug 2017 08:28:13 +0000 (10:28 +0200)]
add virus and spam statistic API
Dietmar Maurer [Thu, 24 Aug 2017 07:44:48 +0000 (09:44 +0200)]
PMG/API2/Statistics.pm - new API class for statistics
Dietmar Maurer [Thu, 24 Aug 2017 07:43:20 +0000 (09:43 +0200)]
register and use standard options for starttime and endtime
Dietmar Maurer [Thu, 24 Aug 2017 06:23:01 +0000 (08:23 +0200)]
verify_optional_pmail: do not raise error if $pmail ne $authuser
Dietmar Maurer [Thu, 24 Aug 2017 06:00:15 +0000 (08:00 +0200)]
PMG::API2::quarantine->virusstatus() - remove avgspam from result hash
Dietmar Maurer [Thu, 24 Aug 2017 05:59:16 +0000 (07:59 +0200)]
remove dead code
Dietmar Maurer [Thu, 24 Aug 2017 05:58:03 +0000 (07:58 +0200)]
PMG/API2/Quarantine.pm - add virusstatus API
Dietmar Maurer [Thu, 24 Aug 2017 05:55:49 +0000 (07:55 +0200)]
get_quarantine_count: always return numbers instead of undef
Dietmar Maurer [Thu, 24 Aug 2017 05:46:58 +0000 (07:46 +0200)]
PMG/API2/Quarantine.pm - add spamstatus API
Dietmar Maurer [Thu, 24 Aug 2017 05:26:45 +0000 (07:26 +0200)]
quarantine API: add quarusers to index
Dietmar Maurer [Thu, 24 Aug 2017 05:24:36 +0000 (07:24 +0200)]
code cleanup - remove unused var $role
Dietmar Maurer [Thu, 24 Aug 2017 05:22:53 +0000 (07:22 +0200)]
remove role quser from spamusers API
Dietmar Maurer [Thu, 24 Aug 2017 05:21:08 +0000 (07:21 +0200)]
add API to query UserPrefs
Dietmar Maurer [Thu, 24 Aug 2017 05:09:15 +0000 (07:09 +0200)]
implement virus quarantine API /quarantine/virus
Dietmar Maurer [Thu, 24 Aug 2017 05:00:19 +0000 (07:00 +0200)]
PMG::DBTools::get_quarantine_count - new helper
Dietmar Maurer [Thu, 24 Aug 2017 04:34:49 +0000 (06:34 +0200)]
pmgreport: inlude cluster error state
Dominik Csapak [Wed, 23 Aug 2017 10:26:29 +0000 (12:26 +0200)]
fix typos
s/paramater/parameter/
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 23 Aug 2017 10:26:28 +0000 (12:26 +0200)]
change the spam api call
instead of having the /quarantine/spam api call return a
list of days with spamcount/average,
display directly the list of spams for the given timeframe
(default the last 24 hours) like the spamlist api call
and drop that
(because having a unix timestamp as part of the path is not
really nice, and with the gui restructuring, we do not
need the day summary)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 23 Aug 2017 10:26:27 +0000 (12:26 +0200)]
add spamusers api call
this api call returns a list of receiver emails, which
have received spam in the quarantine in the given timeframe
by default this is the last 24 hours
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 23 Aug 2017 09:51:35 +0000 (11:51 +0200)]
PMG/HTMLMail.pm - allow bgcolor attribute
Dietmar Maurer [Wed, 23 Aug 2017 09:37:28 +0000 (11:37 +0200)]
PMG/HTMLMail.pm - allow more img attributes
Dietmar Maurer [Wed, 23 Aug 2017 09:25:53 +0000 (11:25 +0200)]
PMG/HTMLMail.pm - allow style tags and style attributes
Dietmar Maurer [Wed, 23 Aug 2017 08:34:59 +0000 (10:34 +0200)]
sync_config_from_master: sync domains, mynetworks and transport config
Dietmar Maurer [Wed, 23 Aug 2017 07:45:06 +0000 (09:45 +0200)]
run_postmap: only run postmap if file was modified
Dietmar Maurer [Wed, 23 Aug 2017 06:45:41 +0000 (08:45 +0200)]
sync_userprefs_db: fix sql syntax error (add missing comma)
Dietmar Maurer [Wed, 23 Aug 2017 06:39:19 +0000 (08:39 +0200)]
add pmgreport to service list
Dietmar Maurer [Wed, 23 Aug 2017 06:24:57 +0000 (08:24 +0200)]
pmgreport: add quarantine data
Dietmar Maurer [Wed, 23 Aug 2017 05:52:51 +0000 (07:52 +0200)]
pmgreport: add virus charts
Dietmar Maurer [Wed, 23 Aug 2017 05:29:28 +0000 (07:29 +0200)]
code cleanup
Dietmar Maurer [Tue, 22 Aug 2017 11:32:32 +0000 (13:32 +0200)]
pmgreport: add mail traffic
Dietmar Maurer [Tue, 22 Aug 2017 10:53:18 +0000 (12:53 +0200)]
pmgreport: add incoming/outgoing statistics
Dietmar Maurer [Tue, 22 Aug 2017 10:12:42 +0000 (12:12 +0200)]
pmgreport: add timespan parameter
Dietmar Maurer [Tue, 22 Aug 2017 09:51:27 +0000 (11:51 +0200)]
install pmgreport.timer
Dietmar Maurer [Tue, 22 Aug 2017 09:44:54 +0000 (11:44 +0200)]
improve pmgreport (add cluster info)
new options --receiver and --auto
Dietmar Maurer [Tue, 22 Aug 2017 08:40:59 +0000 (10:40 +0200)]
add timer for pmgreport
Dietmar Maurer [Mon, 21 Aug 2017 11:09:55 +0000 (13:09 +0200)]
pmgreport: new tool to send daily system reports
Dietmar Maurer [Mon, 21 Aug 2017 10:24:23 +0000 (12:24 +0200)]
factor out format_uptime
Dietmar Maurer [Mon, 21 Aug 2017 05:46:52 +0000 (07:46 +0200)]
code cleanup
Dietmar Maurer [Fri, 18 Aug 2017 08:49:38 +0000 (10:49 +0200)]
add API to reset rule database
Dietmar Maurer [Fri, 18 Aug 2017 08:14:21 +0000 (10:14 +0200)]
reload_ruledb: untaint pid
Dietmar Maurer [Fri, 18 Aug 2017 08:09:36 +0000 (10:09 +0200)]
upgradedb: call reload_ruledb()
Dietmar Maurer [Fri, 18 Aug 2017 07:54:54 +0000 (09:54 +0200)]
init_ruledb: call reload_ruledb() after init
Dietmar Maurer [Fri, 18 Aug 2017 07:32:34 +0000 (09:32 +0200)]
trigger database reloads
We need to send notifications to pmg-smtp-filter.
Dietmar Maurer [Thu, 17 Aug 2017 13:24:55 +0000 (15:24 +0200)]
add missing comma
Dietmar Maurer [Thu, 17 Aug 2017 12:37:11 +0000 (14:37 +0200)]
implement whitelist/blacklist add/delete API
Dietmar Maurer [Wed, 16 Aug 2017 10:11:26 +0000 (12:11 +0200)]
implement quarantine delete/deliver
moved code to new PMG::Quarantine class.
Dietmar Maurer [Mon, 14 Aug 2017 10:52:37 +0000 (12:52 +0200)]
improve quarantine api
implement actions whitelist/blacklist.
Dietmar Maurer [Fri, 11 Aug 2017 08:10:45 +0000 (10:10 +0200)]
spam api: return details about matched spam tests
Dietmar Maurer [Fri, 11 Aug 2017 08:10:45 +0000 (10:10 +0200)]
spamlist api: return details about matched spam tests
Dietmar Maurer [Fri, 11 Aug 2017 07:43:47 +0000 (09:43 +0200)]
new helper load_sa_descriptions
Dietmar Maurer [Thu, 10 Aug 2017 09:04:51 +0000 (11:04 +0200)]
PMG/API2/Quarantine.pm - implement htmlmail formatter
We can now render mail content as html using
/api2/htmlmail/quarantine/content?id=XXXXX
Dietmar Maurer [Thu, 10 Aug 2017 09:03:26 +0000 (11:03 +0200)]
read_raw_email: add maxbytes parameter
Dietmar Maurer [Thu, 10 Aug 2017 09:02:19 +0000 (11:02 +0200)]
do not use perl taint mode to avoid MIME::Parser problems
Dietmar Maurer [Thu, 10 Aug 2017 06:56:19 +0000 (08:56 +0200)]
new helper decode_to_html()
Dietmar Maurer [Thu, 10 Aug 2017 06:55:18 +0000 (08:55 +0200)]
PMG/HTTPServer.pm - pass $format to $rpcenv
Dietmar Maurer [Thu, 10 Aug 2017 06:27:07 +0000 (08:27 +0200)]
PMG::HTMLMail - new class to parse and sanitize html mails
Dietmar Maurer [Thu, 10 Aug 2017 06:26:00 +0000 (08:26 +0200)]
depend on libhtml-tree-perl and libhtml-scrubber-perl
Dietmar Maurer [Tue, 8 Aug 2017 11:13:54 +0000 (13:13 +0200)]
add /quarantine/content API
Dietmar Maurer [Tue, 8 Aug 2017 11:13:21 +0000 (13:13 +0200)]
PMG/DBTools.pm - new helper load_mail_data()
Dietmar Maurer [Tue, 8 Aug 2017 07:47:01 +0000 (09:47 +0200)]
improve spamlist API
Dietmar Maurer [Tue, 8 Aug 2017 07:46:19 +0000 (09:46 +0200)]
PMG::Utils::decode_rfc1522 - new helper
Dietmar Maurer [Tue, 8 Aug 2017 06:32:31 +0000 (08:32 +0200)]
pmgsh: correctly setup RESTEnvironment (set user/role)
Dietmar Maurer [Tue, 8 Aug 2017 06:31:57 +0000 (08:31 +0200)]
implement spamlist api
Dietmar Maurer [Tue, 8 Aug 2017 05:36:20 +0000 (07:36 +0200)]
code cleanup - use defined()
Dietmar Maurer [Fri, 4 Aug 2017 10:51:05 +0000 (12:51 +0200)]
pmgmirror: update lastync in clusterinfo table