不正なヘッダ?No.01585
s_yam さん 01/05/17 17:31
 
以下の手順で操作を行ったところ、
「メールのヘッダ部分に不正なヘッダが含まれているか、
 またはヘッダ部分と本文の区切り用の改行がありません。」
というメッセージが表示されてしまいます。

1. Bcc: で自分宛に来たメールを「送信済み」フォルダに入れる。
 (入れてあった)
2. そのメールを、「未送信」フォルダにコピーする。
3. 内部情報を「送信メールである」に変更する。
4. 開く。
5. 編集する。
6. 送信する。

 再送をしたくてこのような操作をしたのですが、やり方が
まずいでしょうか。
 このメールは、添付ファイルがあります。
 保存できなかったそのメールをテキストファイルに出力して
見てみたのですが、普通のヘッダ(From, Subject, To, Cc) しか
ないメールです。(内部情報のヘッダは出て来ない?)

 あと、内部情報を変更する前でも、開いた画面(2枠で使用、
別ウィンドウ) で編集できてしまいます。


[ ]
RE:01585 不正なヘッダ?No.01595
きいろいまふらあ さん 01/05/18 03:21
 
こんにちは。

受信したメールには、送信前に比べていろんなヘッダがついているので、そのへ
んのどれかがひっかかっているのかもしれませんね。編集の時点でうまくとりの
ぞけていないのかもしれません。

> 再送をしたくてこのような操作をしたのですが、やり方が
>まずいでしょうか。

私は、送信済みフォルダから再送したいメールを選択し、いちどエディタで開い
て、再度「今すぐ送信」あるいは「あとで送信」してます。私はこれが典型的な
再送のしかただと思っています。すごく簡単です。

根本的な解決になっていないかもしれませんが、ご参考まで。

[ ]
RE:01585 不正なヘッダ?No.01598
秀まるお2 さん 01/05/18 10:14
 
 受信したメールを送信しようとすると、Received:等のヘッダが入ってしまうので、
エラーになるはずです。

 エラーメッセージの時に、不正なヘッダを削除できるようにしたらいいかと思いま
すが、それでいいですかね?

 例えば、

    +---------------------------------------------------------------------+
    | このメールには送信するのに適当でないと思われるヘッダがあります。    |
    |                                                                     |
    |    Received: ....                                                   |
    |    Status:   ....                                                   |
    |                                                                     |
    | [削除して送信]    [そのまま送信]   [キャンセル]                     |
    +---------------------------------------------------------------------+

 とか。

 そもそも、送信用メールのヘッダ全体を編集できるようにしたい所ですが、それは
それで難しいです。

[ ]
RE:01598 不正なヘッダ?No.01610
s_yam さん 01/05/18 12:10
 
> エラーメッセージの時に、不正なヘッダを削除できるようにしたらいい
>かと思いますが、それでいいですかね?
 そんなに親切なメッセージを出していただけるとは。
 (簡単に実装するために)送信の指示をした時点で、通常あり得ない
ヘッダは消してしまっても、僕は困らないのですが。

 Bcc: メールを送信メールとして使えるようになれば、どういった形でも
うれしいです。

[ ]
RE:01610 不正なヘッダ?No.01616
秀まるお2 さん 01/05/18 13:04
 
>  (簡単に実装するために)送信の指示をした時点で、通常あり得ない
> ヘッダは消してしまっても、僕は困らないのですが。

 んではもうちょっと簡単なメッセージにするか、または何か他の案を考えてみます。

[ ]
RE:01610 不正なヘッダ?No.01617
秀まるお2 さん 01/05/18 15:25
 
 そもそもエラーになってた原因は、Received:ヘッダのように、複数行にまたがっ
たヘッダがあるとダメなでけで、具体的に送信不能なヘッダが含まれているかどうか
見ている訳ではありませんでした。

 ということで、複数行にまたがったヘッダでエラーにならないようにします。

 そうすると、Received:等を含んだメールがそのまま送信できてしまいます。その
結果(受信した人がどう思うか)は保証しません。

 それだけではひどいと思うので、前々からやろうと思っていた「送信メールでのヘ
ッダ表示切り替え」をサポートします。送信したくないヘッダは「ヘッダ・すべて表
示」とやって削除してから送信してください。

[ ]
RE:01617 不正なヘッダ?No.01618
Kengo さん 01/05/18 15:59
 
>  ということで、複数行にまたがったヘッダでエラーにならないようにします。

もう一押しして、
マクロで

    $s = dllfuncstr( "CurrentHeader", "In-Reply-To" );
    $d = dllfuncstr( "RootHeader", "Date" );
    if( $s != "" && $d != "" ) {
            $s = "Your message of \"" + $d + "\"\n \t" + $s;
            $s = dllfuncstr( "SetHeader", "In-Reply-To", $s );
    }

てなことをやれば、

| In-Reply-To:Your message of "Fri, 18 May 2001 15:25:47 +0900"
|         <xxxxxxxxxxxxxx@maruo.co.jp>

というようなヘッダーを作れるようになると嬉しいです。

現状では、
・"\n"が無視される
・無理矢理貼り付けても後でエラーになる
ので。

[ ]
RE:01618 不正なヘッダ?No.01619
秀まるお2 さん 01/05/18 17:07
 
 斉藤秀夫です。

 SetHeaderで改行入りの文字列を貼り付ける件ですが、内部的に矛盾した動作とな
っていたので、改行をあえて取り除いて貼り付けるように動作させてしまいます。

 ついでに送信時にも改行入りのヘッダから改行を除去する処理を入れてしまったの
で、仮に無理矢理改行を入れたとしても、送信時にはその改行は無くなります。

 ということで、結論を言うと、ヘッダのどの部分で改行するかをメール作成者が指
示することは出来なくなります。

 メールのエンコードのことを考えるとユーザー側での改行位置指定まで面倒を見る
のは難しいので、ご了承ください。

 ちなみに

In-Reply-to: Your message of "..."  <...>

 のような長いヘッダを生成した場合だと、それがそのままエンコードも改行もされ
ずに送信されてしまいます。改行されないので80桁オーバーになってしまいますが、
80桁オーバーになるのはV1.15からの鶴亀メール側の仕様です。どうして80桁
オーバーにしたかについて質問があればお答えします。

[ ]
RE:01619 不正なヘッダ?No.01621
Kengo さん 01/05/18 17:52
 
>  ついでに送信時にも改行入りのヘッダから改行を除去する処理を入れてしまったの
> で、仮に無理矢理改行を入れたとしても、送信時にはその改行は無くなります。

なるほど。

#01617
>  ということで、複数行にまたがったヘッダでエラーにならないようにします。

を、私は「複数行のまま送る」と理解してしまったんですが、
改行を取って1行にしてしまうんですね。
そうすると、"\n"が生きるようになったとしても、私が希望する
ようにはならないですね…

>  メールのエンコードのことを考えるとユーザー側での改行位置指定まで面倒を見る
> のは難しいので、ご了承ください。

宛先に関して、エンコードして折り返すような場合に、
その位置によってうまく送れない場合(サーバー)がある、
関連でしたっけ?

それは理解しているのですが。

「エンコードが不要なヘッダはそのまま(改行を除去しない)」
っていうのは、だめですかねぇ?
#悪あがき

もっと限定すると、私が複数行で書きたいのは In-Reply-to: と
References: だけです。どちらもまずエンコードは不要…だと
思うんですが、返信対象の Message-Id: 次第ですね。
To: とか Subject: とかは鶴亀任せで満足してます。
なので、この2つだけで充分なのですが。(私は)
#さらに悪あがき
##何にしても特別扱いには違いない。

[ ]
RE:01617 不正なヘッダ?No.01624
s_yam さん 01/05/18 18:41
 
> ということで、複数行にまたがったヘッダでエラーにならないようにしま
>す。
 そうでしたか。おっしゃる通りの仕様でよいと思います。
 対応をしていただきありがとうございます。


[ ]
RE:01621 不正なヘッダ?No.01626
秀まるお2 さん 01/05/18 18:47
 
> もっと限定すると、私が複数行で書きたいのは In-Reply-to: と
> References: だけです。どちらもまずエンコードは不要…だと
> 思うんですが、返信対象の Message-Id: 次第ですね。

 しいて、日本語が含まれていなければエンコードの必要は無しなので、日本語が入
っている場合に限って改行除去という作戦もあります。

 ちょっと考えて、簡単に出来そうならそうしてみます。

[ ]
RE:01626 不正なヘッダ?No.01632
Kengo さん 01/05/18 19:37
 
>  ちょっと考えて、簡単に出来そうならそうしてみます。

よろしくお願いします。

もし実装された場合に、余計なトラブルを防ぐための提案。
・「全般的な設定」の「ヘッダ」あたりに、「複数行のヘッダを
 認める」とかのチェックボックスを付ける。(デフォルトでは
 未チェック)
・「全般的な設定」の「基本」の「確認メッセージ」に
 「複数行のヘッダで送信しようとした時」のチェックボックス
 を付ける。(デフォルトでチェック)

[ ]
RE:01632 不正なヘッダ?No.01640
秀まるお2 さん 01/05/19 17:12
 
 今完成しました。(簡単なテストしかしてないけど)

 漢字を含む場合は改行除去後にエンコード、漢字を含まない場合は改行もそのまま
送信ということで、オプション類は無しです。

 例のマクロも動作しました。次のバージョンにてご確認お願いします。(特に問題
なければ報告は要りませんが)

[ ]
RE:01640 不正なヘッダ?No.01657
Kengo さん 01/05/21 14:38
 
>  漢字を含む場合は改行除去後にエンコード、漢字を含まない場合は改行もそのまま
> 送信ということで、オプション類は無しです。

1.18 で、In-Reply-To: と References: で試してみましたが、
とりあえず問題なさそうです。
ありがとうございました。

[ ]