Resent-

メッセージの再送

[8] RFC 822メッセージでは伝統的に Resent-*: ヘッダー再送を表せるとされていました。

[9] 近年この方式はあまり使われていません。

ヘッダー名

[14] もとのヘッダー名の前に Resent- をつける形になっています。

[15] この形で使えるヘッダーは予め定義された特定のものだけです。 任意のヘッダー名が使えるわけではありません。

関連

[1] 電子メイル, MIME multipartによる転送 MIME multipart による転送, 電子ニュース, RFC822と仲間達の頭領域名, メッセージの返信 MIME

[16] 転送, メーリングリスト

歴史

Resent-*:

[10] 伝統的な規定は RFC 822 にあったものです。

[3] RFC 822
     4.2.  FORWARDING
          Some systems permit mail recipients to  forward  a  message,
     retaining  the original headers, by adding some new fields.  This
     standard supports such a service, through the "Resent-" prefix to
     field names.
          Whenever the string "Resent-" begins a field name, the field
     has  the  same  semantics as a field whose name does not have the
     prefix.  However, the message is assumed to have  been  forwarded
     by  an original recipient who attached the "Resent-" field.  This
     new field is treated as being more recent  than  the  equivalent,
     original  field.   For  example, the "Resent-From", indicates the
     person that forwarded the message, whereas the "From" field indi-
     cates the original author.
          Use of such precedence  information  depends  upon  partici-
     pants'  communication needs.  For example, this standard does not
     dictate when a "Resent-From:" address should receive replies,  in
     lieu of sending them to the "From:" address.
     Note:  In general, the "Resent-" fields should be treated as 
 containing  a  set  of information that is independent of the
            set of original fields.  Information for  one  set  should
            not  automatically be taken from the other.  The 
 interpretation of multiple "Resent-" fields, of the same type,  is
            undefined.

参考: 通常、「Resent-」領域は元の領域の集合とは独立した情報の集合から なるものとして扱うべきです。ある集合の情報は他から自動的に取ってくる べきではありません。複数の同じ種類の「Resent-」領域の解釈は未定義とします。

          In the remainder of this specification, occurrence of  legal
     "Resent-"  fields  are treated identically with the occurrence of
     fields whose names do not contain this prefix.

この仕様書の残りでは、妥当な「Resent-」領域の出現はこの接頭辞を含まない 名前の領域の出現と同じ物として扱います。

[11] RFC 822RFC 2822 として全面改訂されました。規定は大幅に明確化されました。

[4] RFC 2822 3.6.6. Resent fields
   Resent fields SHOULD be added to any message that is reintroduced by
   a user into the transport system.  A separate set of resent fields
   SHOULD be added each time this is done.  All of the resent fields
   corresponding to a particular resending of the message SHOULD be
   together.  Each new set of resent fields is prepended to the message;
   that is, the most recent set of resent fields appear earlier in the
   message.  No other fields in the message are changed when resent
   fields are added.

Resent (再送) 領域は利用者により転送系に再注入されたいかなるメッセージにも 加えるべきものです。この成される各時毎に再送領域の分離された集合を 加えるべきです。メッセージの特定の再送に対応する再送領域はすべて 一緒にあるべきです。再送領域の新しい集合はそれぞれ、 メッセージに前置されます。つまり、一番最新の再送領域はメッセージの 最初にあらわれます。メッセージの他のどの領域も、再送領域を追加した時に 変更しません。

   Each of the resent fields corresponds to a particular field elsewhere
   in the syntax.  For instance, the "Resent-Date:" field corresponds to
   the "Date:" field and the "Resent-To:" field corresponds to the "To:"
   field.  In each case, the syntax for the field body is identical to
   the syntax given previously for the corresponding field.

各再送領域は構文中の他の特定の領域と対応します。例えば、 「Resent-Date:」(再送日付)領域は「Date:」(日付)領域と対応し、 「Resent-To:」(再送宛先)領域は「To:」(宛先)領域に対応します。 各場合とも、領域本体の構文は以前に対応する領域に示した構文と同じです。

   When resent fields are used, the "Resent-From:" and "Resent-Date:"
   fields MUST be sent.  The "Resent-Message-ID:" field SHOULD be sent.
   "Resent-Sender:" SHOULD NOT be used if "Resent-Sender:" would be
   identical to "Resent-From:".

再送領域を使う場合、「Resent-From:」(再送元)領域と「Resent-Date:」(再送日付) 領域は必ず送らなければなりません。「Resent-Message-ID:」 (再送メッセージ識別子)領域は送るべきです。「Resent-Sender:」 (再送送信者)は「Resent-From:」と同一になる場合は使うべきではありません

  1. resent-date = "Resent-Date:" date-time CRLF
  2. resent-from = "Resent-From:" mailbox-list CRLF
  3. resent-sender = "Resent-Sender:" mailbox CRLF
  4. resent-to = "Resent-To:" address-list CRLF
  5. resent-cc = "Resent-Cc:" address-list CRLF
  6. resent-bcc = "Resent-Bcc:" (address-list / [CFWS]) CRLF
  7. resent-msg-id = "Resent-Message-ID:" msg-id CRLF
   Resent fields are used to identify a message as having been
   reintroduced into the transport system by a user.  The purpose of
   using resent fields is to have the message appear to the final
   recipient as if it were sent directly by the original sender, with
   all of the original fields remaining the same.  Each set of resent
   fields correspond to a particular resending event.  That is, if a
   message is resent multiple times, each set of resent fields gives
   identifying information for each individual time.  Resent fields are
   strictly informational.  They MUST NOT be used in the normal
   processing of replies or other such automatic actions on messages.

再送領域は配送系に利用者により再注入されたメッセージを識別するのに使います。 再送領域を使う目的は、元の領域を全て同じにしておいて、 最終受信者にメッセージが元送信者から直接送られたように見せることです。 再送領域の各集合は特定の再送行為に対応します。これにより、 メッセージが複数回再送された時に、再送領域の各集合で個々の情報を 特定出来ます。返信やその他の同様なメッセージの自動反応の一般的な処理で 使ってはいけません

   Note: Reintroducing a message into the transport system and using
   resent fields is a different operation from "forwarding".
   "Forwarding" has two meanings: One sense of forwarding is that a mail
   reading program can be told by a user to forward a copy of a message
   to another person, making the forwarded message the body of the new
   message.  A forwarded message in this sense does not appear to have
   come from the original sender, but is an entirely new message from
   the forwarder of the message.  On the other hand, forwarding is also
   used to mean when a mail transport program gets a message and
   forwards it on to a different destination for final delivery.  Resent
   header fields are not intended for use with either type of
   forwarding.

参考: メッセージの配送系への再注入と再送領域の使用は「転送」とは違った 操作です。「転送」には2つの意味があります。転送の1つの意味は、メイル読み プログラムが利用者により転送するメッセージを新しいメッセージの本文にして、 メッセージの複製を他の人に転送することと言うことが出来ます。 この意味では転送するメッセージは元送信者から来た様には見えず、 メッセージ転送者からの全く新しいメッセージです。他には、 転送はメイル転送プログラムがメッセージを受け取って、違った目的地に 最終配送のために転送することを意味しても使われます。 再送頭領域はこのどちらの種類の転送においても使うものではありません。

   The resent originator fields indicate the mailbox of the person(s) or
   system(s) that resent the message.  As with the regular originator
   fields, there are two forms: a simple "Resent-From:" form which
   contains the mailbox of the individual doing the resending, and the
   more complex form, when one individual (identified in the
   "Resent-Sender:" field) resends a message on behalf of one or more
   others (identified in the "Resent-From:" field).

再送発起人 (originator) 領域はメッセージを再送する人(々)や系統のメイル箱を 示します。普通の発起人領域と同じ様に、2つの形があります。 再送を行う個人のメイル箱から成る単一「Resent-From:」(再送元)形式と、 より複雑な形式, ある個人 (「Resent-Sender:」(再送送信者) 領域で識別) が一人以上の人 (「Resent-From:」領域で識別) の名目で メッセージを再送する時のものです。

   Note: When replying to a resent message, replies behave just as they
   would with any other message, using the original "From:",
   "Reply-To:", "Message-ID:", and other fields.  The resent fields are
   only informational and MUST NOT be used in the normal processing of
   replies.

参考: 再送メッセージに返信する時、返信は他のメッセージの場合と同じ様に、 元の「From:」, 「Reply-To:」, 「Message-ID:」, その他の領域を使って 行います。再送領域は参考のみであって、普通の返信処理に使ってはいけません

   The "Resent-Date:" indicates the date and time at which the resent
   message is dispatched by the resender of the message.  Like the
   "Date:" field, it is not the date and time that the message was
   actually transported.

「Resent-Date:」は再送メッセージがメッセージの再送者により送られた 日時を示します。「Date:」領域同様、メッセージが実際に転送された 日時ではありません。

   The "Resent-To:", "Resent-Cc:", and "Resent-Bcc:" fields function
   identically to the "To:", "Cc:", and "Bcc:" fields respectively,
   except that they indicate the recipients of the resent message, not
   the recipients of the original message.

「Resent-To:」, 「Resent-Cc:」, 「Resent-Bcc:」領域は、 元メッセージの受信者ではなく再送メッセージの受信者を示すことを除いては、 それぞれ「To:」, 「Cc:」, 「Bcc:」領域と同じ機能を持っています。

   The "Resent-Message-ID:" field provides a unique identifier for the
   resent message.

「Resent-Message-ID:」領域は再送メッセージの唯一識別子になります。

[5] RFC 2822 4.5.0 抜粋

Also, the interpretation of trace fields and resent fields which do

not occur in blocks prepended to the message is unspecified as well.

また、メッセージに前置された塊の中に現れる以外の追跡領域と再送領域の解釈も 同様に未定義です。

[6] RFC 2822 4.5.6. Obsolete resent fields
   The obsolete syntax adds a "Resent-Reply-To:" field, which consists
   of the field name, the optional comments and folding white space, the
   colon, and a comma separated list of addresses.

旧構文は「Resent-Reply-To:」(再送返信先)領域を加えます。 これは領域名, 省略可能な注釈と折畳み空白間隔, コロン, アドレスの読点区切り一覧から成ります。

  1. obs-resent-from = "Resent-From" *WSP ":" mailbox-list CRLF
  2. obs-resent-send = "Resent-Sender" *WSP ":" mailbox CRLF
  3. obs-resent-date = "Resent-Date" *WSP ":" date-time CRLF
  4. obs-resent-to = "Resent-To" *WSP ":" address-list CRLF
  5. obs-resent-cc = "Resent-Cc" *WSP ":" address-list CRLF
  6. obs-resent-bcc = "Resent-Bcc" *WSP ":" (address-list / [CFWS]) CRLF
  7. obs-resent-mid = "Resent-Message-ID" *WSP ":" msg-id CRLF
  8. obs-resent-rply = "Resent-Reply-To" *WSP ":" address-list CRLF
   As with other resent fields, the "Resent-Reply-To:" field is to be
   treated as trace information only.

他の再送領域同様、「Resent-Reply-To:」領域は追跡情報としてのみ扱われます。

[7] RFC 2822 A.3. Resent messages

Start with the message that has been used as an example several times:

何度も例に使ったメッセージから始めます。

   ----
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>
   This is a message just to say hello.
   So, "Hello".
   ----

これは単に挨拶するだけのメッセージです。 で、「こんにちは」。

   Say that Mary, upon receiving this message, wishes to send a copy of
   the message to Jane such that (a) the message would appear to have
   come straight from John; (b) if Jane replies to the message, the
   reply should go back to John; and (c) all of the original
   information, like the date the message was originally sent to Mary,
   the message identifier, and the original addressee, is preserved.  In
   this case, resent fields are prepended to the message:

このメッセージを受け取った Mary が、 (a) メッセージが John から直接来た様に見え、 (B) Jane がメッセージに返信しようとしたら返信は John に行く様にして、 (c) メッセージが元々 Mary に送られてきた日付とかメッセージ識別子とか 元のアドレスとかの全ての元の情報を変えない メッセージの複製を Jane に送ろうと思ったことにします。 この場合、再送領域をメッセージに前置して、次のようになります。

   ----
   Resent-From: Mary Smith <mary@example.net>
   Resent-To: Jane Brown <j-brown@other.example>
   Resent-Date: Mon, 24 Nov 1997 14:22:01 -0800
   Resent-Message-ID: <78910@example.net>
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>
   This is a message just to say hello.
   So, "Hello".
   ----
   If Jane, in turn, wished to resend this message to another person,
   she would prepend her own set of resent header fields to the above
   and send that.

こんどは Jane が、他の人にこのメッセージを再送したいと思ったら、 Jane 自身の再送頭領域を上のに前置して送信します。

[12] その後 RFC 2822 は改訂され RFC 5322 になりました。

RFC 4249

[2] RFC 4249: Implementer-Friendly Specification of Message and MIME-Part Header Fields and Field Components, https://www.rfc-editor.org/rfc/rfc4249.html#section-3.1.2.1.2

実装状況

[13] 近年の MUAResent-* の送信にも受信にも対応していないものが多いようです。

メモ