Культурный офтопик
 help / color / mirror / Atom feed
From: Sergey Vlasov <vsu@altlinux.ru>
To: smoke-room@lists.altlinux.org
Subject: Re: [room] Postfix и багтрекер
Date: Mon, 21 Feb 2011 00:25:37 +0300
Message-ID: <20110221002537.26817c28@atlas.home> (raw)
In-Reply-To: <201102202243.50829.a_s_y@sama.ru>

On Sun, 20 Feb 2011 22:43:49 +0300 Sergey wrote:

> On Sunday 20 February 2011, you wrote:
> 
> > > Одна вот из идей - баги развесить по поводу соблюдения RFC 1652. И вот
> > > весь вечер по сайту Postfix лазию - тишина. В рассылках, что ли, пишут...
> > 
> > Это бага разработчиков портала госуслуг.
> 
> Не только. Допустить эту багу им позволила именно плохая поддержка RFC 1652
> рядом MTA. Иначе они на неё бы сразу наступили. В RFC 1652 написано конкретно:
> 
>    (4)     one optional parameter using the keyword BODY is added to
>            the MAIL FROM command.  The value associated with this
>            parameter is a keyword indicating whether a 7bit message
>            (in strict compliance with [1]) or a MIME message (in
>            strict compliance with [3]) with arbitrary octet content
>            is being sent.
> 
> [1] - это
> 
>    [1] Postel, J., "Simple Mail Transfer Protocol", STD 10, RFC 821,
>        USC/Information Sciences Institute, August 1982.
> 
> А там написано не менее конкретно:
> 
>          The mail data may contain any of the 128 ASCII characters.  All
>          characters are to be delivered to the recipient's mailbox
>          including format effectors and other control characters.  If
>          the transmission channel provides an 8-bit byte (octets) data
>          stream, the 7-bit ASCII codes are transmitted right justified
>          in the octets with the high order bits cleared to zero.

На самом деле это требование относится к передающей стороне, где и
находится настоящая ошибка. Про поведение принимающей стороны в старом
RFC 821 ничего явно не сказано; а вот в RFC 2821 уже написано:

   Commands and replies are composed of characters from the ASCII
   character set [1].  When the transport service provides an 8-bit byte
   (octet) transmission channel, each 7-bit character is transmitted
   right justified in an octet with the high order bit cleared to zero.
   More specifically, the unextended SMTP service provides seven bit
   transport only.  An originating SMTP client which has not
   successfully negotiated an appropriate extension with a particular
   server MUST NOT transmit messages with information in the high-order
   bit of octets.  If such messages are transmitted in violation of this
   rule, receiving SMTP servers MAY clear the high-order bit or reject
   the message as invalid.  In general, a relay SMTP SHOULD assume that
   the message content it has received is valid and, assuming that the
   envelope permits doing so, relay it without inspecting that content.
   Of course, if the content is mislabeled and the data path cannot
   accept the actual content, this may result in ultimate delivery of a
   severely garbled message to the recipient.  Delivery SMTP systems MAY
   reject ("bounce") such messages rather than deliver them.  No sending
   SMTP system is permitted to send envelope commands in any character
   set other than US-ASCII; receiving systems SHOULD reject such
   commands, normally using "500 syntax error - invalid character"
   replies.

> Postfix же бит в ноль не сбрасывает, что есть ошибка. Так что, в теории,
> надо чинить. :-)

По букве RFC - не ошибка, поскольку написано MAY; более того, в
качестве предпочтительного (SHOULD) предлагается как раз поведение
Postfix - принимать и обрабатывать сообщение в том виде, в котором его
передали, не обращая внимания на нарушение 7-битности. Объявлять такое
поведение багом, скорее всего, бесполезно - вряд ли кто-то будет делать
изменения, ухудшающие совместимость Postfix с реально встречающимися
серверами.

Впрочем, текущее поведение Sendmail (принудительный сброс старшего
бита) этим MAY тоже разрешено.


  parent reply	other threads:[~2011-02-20 21:25 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-20 17:09 Sergey
2011-02-20 17:33 ` Aleksey Novodvorsky
2011-02-20 18:32   ` Sergey
2011-02-20 18:52     ` Sergey
2011-02-20 19:08     ` Aleksey Novodvorsky
2011-02-20 19:43       ` Sergey
2011-02-20 19:47         ` Aleksey Novodvorsky
2011-02-20 20:33           ` Sergey
2011-02-20 19:49         ` Sergey
2011-02-20 21:25         ` Sergey Vlasov [this message]
2011-02-20 21:52           ` Sergey
2011-02-20 22:06           ` Sergey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110221002537.26817c28@atlas.home \
    --to=vsu@altlinux.ru \
    --cc=smoke-room@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Культурный офтопик

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/smoke-room/0 smoke-room/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 smoke-room smoke-room/ http://lore.altlinux.org/smoke-room \
		smoke-room@lists.altlinux.org smoke-room@lists.altlinux.ru smoke-room@lists.altlinux.com smoke-room@altlinux.ru smoke-room@altlinux.org smoke-room@altlinux.com
	public-inbox-index smoke-room

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.smoke-room


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git