summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfukachan <fukachan>2002-05-11 09:34:16 +0000
committerfukachan <fukachan>2002-05-11 09:34:16 +0000
commit832fd2616bae60d4e3318e5fa4c9aa722e23ad81 (patch)
treee9c3e8f10986f1c68be8f749e39c16b6c9a67316
parent263cd28a7fb42bbf6eb4a628b1a9578b8fce4794 (diff)
downloadfml8-832fd2616bae60d4e3318e5fa4c9aa722e23ad81.tar.gz
fml8-832fd2616bae60d4e3318e5fa4c9aa722e23ad81.tar.bz2
fml8-832fd2616bae60d4e3318e5fa4c9aa722e23ad81.zip
fix wrong log message (but is it correct fix ?).
FNF-ify
-rw-r--r--fml/lib/FML/Filter/ContentCheck.pm66
1 files changed, 39 insertions, 27 deletions
diff --git a/fml/lib/FML/Filter/ContentCheck.pm b/fml/lib/FML/Filter/ContentCheck.pm
index 61199c6e..45185610 100644
--- a/fml/lib/FML/Filter/ContentCheck.pm
+++ b/fml/lib/FML/Filter/ContentCheck.pm
@@ -4,7 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $FML: ContentCheck.pm,v 1.5 2002/04/24 03:16:06 fukachan Exp $
+# $FML: ContentCheck.pm,v 1.6 2002/05/09 15:42:15 tmu Exp $
#
package FML::Filter::ContentCheck;
@@ -35,10 +35,11 @@ usual constructor.
my $debug = 0;
-my (@default_rules) = qw(only_plaintext);
+my (@default_rules) = qw(only_plaintext);
my (@default_permit_rules) = qw(text/plain);
my (@default_reject_rules) = qw();
+
# Descriptions: constructor.
# Arguments: OBJ($self)
# Side Effects: none
@@ -50,7 +51,7 @@ sub new
my $me = {};
# apply default rules
- $me->{ _rules } = \@default_rules;
+ $me->{ _rules } = \@default_rules;
$me->{ _permit_rules } = \@default_permit_rules;
$me->{ _reject_rules } = \@default_reject_rules;
@@ -76,6 +77,7 @@ sub rules
$self->{ _rules } = $rarray;
}
+
=head2 C<permit_rules( $rules )>
overwrite rules by specified C<@$rules> ($rules is HASH ARRAY).
@@ -118,8 +120,8 @@ C<$msg> is C<Mail::Message> object.
C<Usage>:
use FML::Filter::ContentCheck;
- my $obj = new FML::Filter::ContentCheck;
- my $msg = $curproc->{'incoming_message'};
+ my $obj = new FML::Filter::ContentCheck;
+ my $msg = $curproc->{'incoming_message'};
$obj->content_check($msg, $args);
if ($obj->error()) {
@@ -157,17 +159,18 @@ sub content_check
sub only_plaintext
{
my ($self, $msg, $args) = @_;
- my $mp = $msg;
- my ($data_type,$prevmp,$nextmp);
+ my ($data_type, $prevmp, $nextmp);
+ my $mp = $msg;
+ MSG:
for ( ; $mp; $mp = $mp->{ next }) {
$data_type = $mp->data_type();
- next if($data_type eq "text/rfc822-headers");
- next if($data_type eq "text/plain");
- next if($data_type =~ "multipart\.");
+ next MSG if ($data_type eq "text/rfc822-headers");
+ next MSG if ($data_type eq "text/plain");
+ next MSG if ($data_type =~ "multipart\.");
$prevmp = $mp->{ prev };
- if($prevmp) {
+ if ($prevmp) {
my $prev_type = $prevmp->data_type();
if ($prev_type eq "multipart.delimiter") {
$prevmp->delete_message_part_link();
@@ -180,6 +183,7 @@ sub only_plaintext
return 0;
}
+
# Descriptions: permit mimetype
# Arguments: OBJ($self) OBJ($msg) HASH_REF($args)
# Side Effects: croak()
@@ -187,21 +191,22 @@ sub only_plaintext
sub permit_mimetype
{
my ($self, $msg, $args) = @_;
- my $mp = $msg;
- my ($data_type,$prevmp,$nextmp);
- my $permits = $self->{ _permit_rules };
+ my ($data_type, $prevmp, $nextmp);
+ my $mp = $msg;
+ my $permit_ruules = $self->{ _permit_rules };
+ MSG:
for ( ; $mp; $mp = $mp->{ next }) {
- LOOPSTART:
+ LOOPSTART:
$data_type = $mp->data_type();
- next if($data_type eq "text/rfc822-headers");
+ next MSG if ($data_type eq "text/rfc822-headers");
- foreach my $permit_type (@$permits) {
- next LOOPSTART if($data_type =~ $permit_type);
+ foreach my $permit_type (@$permit_ruules) {
+ next LOOPSTART if ($data_type =~ $permit_type);
}
$prevmp = $mp->{ prev };
- if($prevmp) {
+ if ($prevmp) {
my $prev_type = $prevmp->data_type();
if ($prev_type eq "multipart.delimiter") {
$prevmp->delete_message_part_link();
@@ -209,11 +214,13 @@ sub permit_mimetype
}
}
$mp->delete_message_part_link();
- Log("permit_mimetype delete $reject_type");
+ Log("permit_mimetype delete $data_type");
}
+
return 0;
}
+
# Descriptions: reject mimetype
# Arguments: OBJ($self) OBJ($msg) HASH_REF($args)
# Side Effects: croak()
@@ -221,19 +228,22 @@ sub permit_mimetype
sub reject_mimetype
{
my ($self, $msg, $args) = @_;
- my $mp = $msg;
- my ($data_type,$prevmp,$nextmp);
- my $rejects = $self->{ _reject_rules };
+ my ($data_type, $prevmp, $nextmp);
+ my $mp = $msg;
+ my $reject_rules = $self->{ _reject_rules };
+ MSG:
for ( ; $mp; $mp = $mp->{ next }) {
$data_type = $mp->data_type();
- next if($data_type eq "text/rfc822-headers");
+ next MSG if ($data_type eq "text/rfc822-headers");
- foreach my $reject_type (@$rejects) {
- next if($data_type ne $reject_type);
+ RULE:
+ foreach my $reject_type (@$reject_rules) {
+ next RULE if ($data_type ne $reject_type);
+ # this message $mp should be a message type to reject.
$prevmp = $mp->{ prev };
- if($prevmp) {
+ if ($prevmp) {
my $prev_type = $prevmp->data_type();
if ($prev_type eq "multipart.delimiter") {
$prevmp->delete_message_part_link();
@@ -244,9 +254,11 @@ sub reject_mimetype
Log("reject_mimetype delete $reject_type");
}
}
+
return 0;
}
+
=head1 AUTHOR
Takuya MURASHITA