■宛先例:
aaaa.aa.aa.@docomo.ne.jp
■エラーメッセージ:
Bad or missing From address: アドレス
(このエラーメッセージはsendmail.pmに記述されておりました)
そもそもやろうとしていることが無理なのか方法があるのか、具体的な内容が掲載されているページを教えてもらえると助かります。よろしくお願いいたします。
http://neta.ywcafe.net/000435.html
RFCを読まなかった携帯キャリアの罪
これでしょうか。RFC違反。。。のようです。
ドットの数ではなく、@の直前にあるのが問題のようですね。
RFC2821の4.1.2でSMTPコマンドの引数が定義されていますが、
ここで、
Dot-string = Atom *(”.” Atom)
Atom = 1*atext
のように、ドットを使うときは、それ以降に必ず文字があることが
前提となっています。
なので、携帯のメールアドレス設定部分を作った人が、
RFCを読んでいないのが問題。。。
携帯のアドレスを変更してもらうしかないようです。
http://www.csl.sony.co.jp/cgi-bin/hyperrfc?821
HyperRFC: keyword 821
RFC(Request For Comment)に、メールアドレスの仕様があるわけですが、使っていいのは
・アルファベット
・数字
・!#$%&`+-*/’^{}_
・.(ドット)
です。
そして、ドットはユーザー部分(@より左の部分)の最初および最後には書いてはいけないことになっています。
ということは、
aaaa.aa.aa.@~
はドットが最後にきているので文法上はアウトということになります。
どうしてもというならMail::Sendmail(Mail/Sendmail.pm)中のこの文法チェックを意図的に外す(コメントアウトでもして)しかありません。
元々、RFCに反したメールアドレスも付けられるようにした携帯電話会社とかが悪いんですけどね。
http://www.csl.sony.co.jp/cgi-bin/hyperrfc?822
HyperRFC: keyword 822
http://www.nttdocomo.co.jp/info/spam_mail/measure/change_add/
メールアドレス変更 | お知らせ | NTTドコモ
送れない理由はピリオド三つではなく、@の直前のピリオドのせいです。
参考URLの通り、それは推奨されて無いのですが、Docomoでは設定はできてしまうので、そういう無茶なアドレスを指定する人は多いようですね。
コメント(0件)