diff options
| author | tmu <tmu> | 2003-08-05 10:45:17 +0000 |
|---|---|---|
| committer | tmu <tmu> | 2003-08-05 10:45:17 +0000 |
| commit | e44020ea7380f7b2ccb2e9a41d7dcc9c1aa2ce40 (patch) | |
| tree | 16839caecee2ce84e50747f70db5e8b99a29e81d /fml/lib/Mail | |
| parent | 9ddc31a47edb67892c8ed62791520c920d5c6bfd (diff) | |
| download | fml8-e44020ea7380f7b2ccb2e9a41d7dcc9c1aa2ce40.tar.gz fml8-e44020ea7380f7b2ccb2e9a41d7dcc9c1aa2ce40.tar.bz2 fml8-e44020ea7380f7b2ccb2e9a41d7dcc9c1aa2ce40.zip | |
freeserve.ne.jp errormail
Diffstat (limited to 'fml/lib/Mail')
| -rw-r--r-- | fml/lib/Mail/Bounce/Freeserve.pm | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/fml/lib/Mail/Bounce/Freeserve.pm b/fml/lib/Mail/Bounce/Freeserve.pm new file mode 100644 index 00000000..936fb7fb --- /dev/null +++ b/fml/lib/Mail/Bounce/Freeserve.pm @@ -0,0 +1,95 @@ +#-*- perl -*- +# +# Copyright (C) 2003 MURASHITA Takuya +# All rights reserved. This program is free software; you can +# redistribute it and/or modify it under the same terms as Perl itself. +# +# $FML: Freeserve.pm,v 1.9 2002/12/20 03:49:16 fukachan Exp $ +# + + +package Mail::Bounce::Freeserve; + +use strict; +use vars qw(@ISA @EXPORT @EXPORT_OK $AUTOLOAD); +use Carp; + +=head1 NAME + +Mail::Bounce::Freeserve - Freeserve error message format parser + +=head1 SYNOPSIS + +See C<Mail::Bounce> for more details. + +=head1 DESCRIPTION + +See C<Mail::Bounce> for more details. + +=head1 Freeserve Error Formats + + To: nospam-ml-admin@ffs.fml.org + Message-Id: <200308051027.h75ARXb26220@fbe.freeserve.ne.jp> + X-Loop: erroraddress@fbe.freeserve.ne.jp + From: support@freeserve.ne.jp + Subject: 【freeserve管理メール】メールを受け取ることが出来ませんでした。 + + 【このメールはfreeserveシステムから自動的に送信されています】 + + freeserveではメールボックスに容量制限があります。 + あなた様がメールを送ったfreeserveユーザーのメールボックスが制限値に達してお + り、お送りになったメールを受け取ることが出来ませんでした。 + + http://www.freeserve.ne.jp/ + support@freeserve.ne.jp + +=cut + + +# Descriptions: trap error pattern in subject from goo.ne.jp. +# Arguments: OBJ($self) OBJ($msg) HASH_REF($result) +# Side Effects: update $result +# Return Value: none +sub analyze +{ + my ($self, $msg, $result) = @_; + my $hdr = $msg->whole_message_header(); + my $xloop = $hdr->get('x-loop'); + + if ($xloop =~ /^X-Loop:\s+([^\s\@]+@\S+\.freeserve\.ne\.jp)$/) { + my $addr = $1; + + # set up return buffer if $addr is found. + # XXX-TODO: we should use $self->address_clean_up() ? + if ($addr) { + $result->{ $addr }->{ 'Final-Recipient' } = $addr; + $result->{ $addr }->{ 'Status' } = '4.x.y'; + $result->{ $addr }->{ 'hints' } = 'freeserve.ne.jp'; + } + } +} + + +=head1 CODING STYLE + +See C<http://www.fml.org/software/FNF/> on fml coding style guide. + +=head1 AUTHOR + +MURASHITA Takuya + +=head1 COPYRIGHT + +Copyright (C) 2003 MURASHITA Takuya + +All rights reserved. This program is free software; you can +redistribute it and/or modify it under the same terms as Perl itself. + +=head1 HISTORY + +Mail::Bounce::Freeserve first appeared in fml8 mailing list driver package. +See C<http://www.fml.org/> for more details. + +=cut + +1; |
