From a14117fb61e561823faccbe9842e7debe16368cb Mon Sep 17 00:00:00 2001 From: Max Magorsch Date: Wed, 6 May 2020 23:08:16 +0200 Subject: Add the AttachmentFilter extension The extension can be used to filter attachments. Currently it's filtering html attachments, based on the mime-type and the filename. The extension is currently disabled. Signed-off-by: Max Magorsch --- extensions/AttachmentFilter/Config.pm | 15 +++++++++++++++ extensions/AttachmentFilter/Extension.pm | 28 ++++++++++++++++++++++++++++ extensions/AttachmentFilter/disabled | 0 3 files changed, 43 insertions(+) create mode 100644 extensions/AttachmentFilter/Config.pm create mode 100644 extensions/AttachmentFilter/Extension.pm create mode 100644 extensions/AttachmentFilter/disabled diff --git a/extensions/AttachmentFilter/Config.pm b/extensions/AttachmentFilter/Config.pm new file mode 100644 index 000000000..5810b5d87 --- /dev/null +++ b/extensions/AttachmentFilter/Config.pm @@ -0,0 +1,15 @@ +# -*- Mode: perl; indent-tabs-mode: nil -*- +# +# This extension is filtering attachments. +# +# Currently its is filtering html attachments. +# +# Contributor(s): +# Max Magorsch + +package Bugzilla::Extension::AttachmentFilter; +use strict; + +use constant NAME => 'AttachmentFilter'; + +__PACKAGE__->NAME; diff --git a/extensions/AttachmentFilter/Extension.pm b/extensions/AttachmentFilter/Extension.pm new file mode 100644 index 000000000..1d316901e --- /dev/null +++ b/extensions/AttachmentFilter/Extension.pm @@ -0,0 +1,28 @@ +# -*- Mode: perl; indent-tabs-mode: nil -*- +# +# This extension is filtering attachments. +# +# Currently its is filtering html attachments. +# +# Contributor(s): +# Max Magorsch + +package Bugzilla::Extension::AttachmentFilter; +use strict; +use base qw(Bugzilla::Extension); + +our $VERSION = '0.01'; +################################################################################ +# This extension is filtering attachments. Currently its is filtering html +# attachments. +################################################################################ +sub attachment_process_data { + my ($self, $args) = @_; + return unless ( ($args->{attributes}->{mimetype} eq 'text/html') or ($args->{attributes}->{filename} =~ /\.htm\z/) or ($args->{attributes}->{filename} =~ /\.html\z/) ); + + ${$args->{data}} = ''; + $args->{attributes}->{filename} = ''; + +} + +__PACKAGE__->NAME; diff --git a/extensions/AttachmentFilter/disabled b/extensions/AttachmentFilter/disabled new file mode 100644 index 000000000..e69de29bb -- cgit v1.2.3-65-gdbad