Кратко
- По статье Eric Allman 1994 года, основные работы над Sendmail прекратились после февраля 1987-го и возобновились в июле 1991-го, когда уже появились версии поставщиков и сторонних участников.
- Причин возвращения было несколько: изменения в Berkeley, расхождение версий и расширения SMTP, которые, по оценке Allman, не вошли в большинство реализаций.
- Sendmail 8.6.6 поддерживал часть расширений, а часть — с ограничениями. Публичный выпуск сделал эти границы проверяемыми, но не доказал ни широкое внедрение, ни полное соответствие стандартам.
Долгая пауза стала проблемой версий
Sendmail был частью Unix-среды Berkeley задолго до того, как стал коммерческим продуктом или символом дискуссий об экономике открытого ПО. Биография Internet Hall of Fame сообщает, что Eric Allman разработал delivermail и Sendmail в Калифорнийском университете в Berkeley, работая над INGRES; обе программы распространялись вместе с BSD. Этот контекст показывает значение открытого исходного кода: создатели систем могли изучать почтовый маршрутизатор и собирать его в собственном окружении.
В статье Allman 1994 года «Changes in Sendmail Version 8» описан следующий период. Основные работы над Sendmail фактически прекратились после февраля 1987 года; активная разработка вернулась в июле 1991-го. В промежутке другие обеспечивали минимальную поддержку, а поставщики и внешние участники развивали собственные версии. Allman назвал несколько причин возвращения: Berkeley требовались почтовые изменения для структуры поддоменов и 4.4BSD; он рецензировал книгу Bryan Costales о Sendmail; нужно было объединить разошедшиеся версии; изменились и стандарты SMTP.
Это совокупность причин, а не решение, вызванное одним событием. Код должен был соответствовать новой версии BSD, свести расходящиеся ветви и учесть изменения протокола. По словам Allman, IDA-Sendmail вырос из набора конфигурационных файлов в существенную коллекцию патчей и широко применялся теми, кто самостоятельно собирал исходники. Он также утверждал, что группа IDA и большинство поставщиков не включали новые уточнения и расширения SMTP. Это ретроспективная оценка Allman в 1994 году, а не независимый обзор каждого поставщика или каждой установки.
Различие принципиально. Стандарт может быть опубликован, а фактически работающая программа продолжит опираться на прежние предположения. Если реализация закрыта, раздроблена или недоступна, у оператора может не быть практического пути от текста стандарта к проверяемой замене. Публичная версия помогает сократить разрыв, делая изменения и ограничения видимыми. Но она не может заставить поставщика выпустить обновление, администратора установить его или удалённый сервер принять новый режим.
Версия 8 показала границы возможностей
Allman использовал Sendmail 8.6.6, чтобы показать: поддержка протокола не сводится к «есть» или «нет». В статье говорится о базовом ESMTP по RFC 1425, расширении размера сообщения из RFC 1427 и ограниченной поддержке параметра BODY из RFC 1426. Там же указано, что эта версия не объявляла 8BITMIME и не могла корректно преобразовать сообщение для SMTP-соседа, не поддерживающего 8-битные данные.
Это точнее, чем общее утверждение, будто «Sendmail 8 поддерживал новые стандарты SMTP»: возможности привязаны к конкретной версии. RFC 1425 описывает обмен возможностями ESMTP через EHLO; RFC 1427 определяет SIZE; RFC 1426 — расширение BODY, позже связанное с 8BITMIME. На передачу влияют объявленные возможности соседа, выбор отправителя и обработка получателя. Статья не устанавливает, когда именно системы обновлялись и как часто такие ситуации возникали в реальной эксплуатации.
Отдельная страница изменений Sendmail Version 8 называет программу «условно соответствующей» RFC 1123 и перечисляет выполненные требования вместе с оставшимися оговорками. Эта страница ссылается на более поздние номера RFC расширений, чем статья 1994 года. Эти источники нельзя сводить к одному списку возможностей. Вместе они показывают, что утверждение о соответствии должно указывать версию, конкретный нормативный текст и исключения.
Вклад Allman заключался не только в выпуске новой основной версии. Статья сделала границу реализации читаемой: какое расширение было реализовано, какое — частично, где сохранялся сбой преобразования. У скачка номера до 8 было прозаическое объяснение: файлы дистрибутива 4.4BSD уже нумеровались как 8.1. Это не означало, что все протокольные проблемы были решены.
Открытый код дал операторам объект для проверки
Заметка Heng Lu № 65 предлагает полезную редакционную оптику: опубликованный стандарт и работающий код отвечают на разные вопросы. Заметка не является свидетельством о мотивах Allman или истории Sendmail. Здесь различие практическое. Стандарт говорит, что системы должны уметь; исходный выпуск позволяет изучить одну реализацию; тест и реальный SMTP-обмен показывают, что сделали две конкретные системы.
Открытый код также распределяет работу по сопровождению. Разработчики могут опубликовать общую правку, поставщики — перенести патчи, операторы — сравнить локальное поведение с доступным исходником. При этом различия конфигураций, частные патчи и старые пакеты могут сохранять расхождение и после публикации. Открытый выпуск создаёт возможность для проверки и ремонта, но не отменяет затрат на сопровождение.
Вывод должен оставаться ограниченным. В изложении Allman пауза в разработке Sendmail увеличила разрыв между меняющимися документами SMTP и реализациями, доступными многим пользователям. Версия 8 дала публичную точку сравнения и включила часть новых расширений, однако пример 8.6.6 сохраняет явные ограничения. Публикация стандарта или кода не доказывает повсеместное внедрение. Важно, может ли оператор определить точную версию, проверить её поведение и выбрать поддерживаемый путь, если реализация не отвечает требованиям.
Источники
- Eric Allman, «Changes in Sendmail Version 8» (1994)
- Изменения Sendmail Version 8 и статус по RFC 1123
- RFC 1123 — требования к интернет-хостам
- RFC 1425 — расширения службы SMTP
- RFC 1426 — передача 8-битного MIME по SMTP
- RFC 1427 — расширение SMTP для объявления размера сообщения
- Internet Hall of Fame — Eric Allman
- Heng Lu, заметка 65 — приоритет работающего кода (редакционная оптика, не историческое свидетельство)
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
