InterSquish NNTP Server

08.04.2002  Версия 1.7.0.4
            -Неправильно отдавали адрес From по команде xover. 

06.04.2002  Версия 1.7.0.3
            -При ответе на письмо, не содержащее домена в кладже MsgID 
             добавлялся домен "fidonet.org" в кладж Reply
            -Фидошные Path и Seen-by теперь гейтуются как X-FTN-PATH: и
             X-FTN-SEEN-BY: соответственно.
            -Если в фидошном письме есть кладж REPLYADDR: и в нем стоял адрес
             отправителя в виде "Vasya Pupkin" <vasya@pupkin.ru> то при 
             гейтовании получался адрес "Vasya Pupkin" 
             <"Vasya Pupkin" <vasya@pupkin.ru>>

27.03.2002  Версия 1.7.0.2
            -Извиняюсь за задержку.
            -Исправлена ошибка при выводе заголовка статьи по HEAD без точки.

09.07.2001  Версия 1.7.0.1
            -Первая тестовая версия FreeWare InterSquish.
            -Проект InterSquish теперь ведет Федор Устинов.
             Сайт поддержки: http://ufm.kgb.ru

28.05.2001  Версия 1.5.6
            -Изменения внесенные Федором Устиновым:
               Параметр PlainFido, запрещающий в исходящих сообщениях 
               гейтование любых RFC-полей в FTN-кладжи.
               Добавлена обработка поля "X-FTN-Origin".
               В новостные сообщения вставляется поле "X-Comment-To".
            -Для предотвращения появления писем с одинаковым MSGID, в
             функцию постинга добавлена задержка 1,1 сек.
                                
                    
20.04.2001  Версия 1.5.5
            -Исправлен застарелый баг, отравляющий жизнь пользователям тоссера
             HPT и сквишовых баз - трап IS при попытке клиента загрузить тела
             сообщений в пакетном режиме.
            -Новый параметр в users.cfg позволяет задавать кодировку для
             конкретного пользователя. Сделано специально для желающих читать
             эхоконференции на палмах и др. наладонниках.
        
17.03.2001  Версия 1.5.4
            -Добавлен новый параметр - NNTPDescriptionsInAnsi, позволяющий
             отправлять описания конференций в кодировке ANSI.
22.10.2000  Версия 1.5.3
            -В протокол POP3 добавлена реализация команды TOP.
            -Пофиксен трап нити POP3-сервера при попытки получить сообщение
             с номером превышающим общее количество сообщений для пользователя.
            -Изменения в алгоритм обновления полей статистики при работе
             с ключом /Win9x.

18.10.2000  Версия 1.5.2
            -Попытка победить зависы версии 1.5.1. Теперь производительность
             сервера при обслуживании нескольких клиентов должна быть выше -
             теперь каждая нить хранит свой собственный список конференций и
             userlist.
            -Пофиксен старый баг: в ряде случаев функция перевода фидошного
             MSGID в интернетовский Message-ID приводила к появлению Message-ID
             следующего вида: <stamp@domain>.fidonet.org>
            -В ряде случаев, в сообщениях прогейтованных версией 1.5.1
             появлялись двойные поля Message-ID и References. Исправлено.
10.10.2000  Версия 1.5.1
            -При постинге неправильно усекалась длина полей To,From и Subject.
             Исправлено.
            -Реализованы NNTP-команды: STAT, HEAD, BODY.
            -Теперь LIST NEWSGROUPS возвращает то, что положено - описания
             конференций.
            -FTN-кладжи и RFC-поля теперь конвертируются друг в друга значитель-
             но аккуратнее, что, в частности, позволяет нормально гейтовать 
             сообщения содержащие MIME-вложения и т.п.
            -Исправлена "потеря" имен адресатов при карбонкопировании в SMTP-
             сервере.
            -Появилась возможность ограничивать максимальный размер сообщения,
             отправляемого через SMTP-сервер. Для этого введено новое ключевое
             слово SMTPMaxMessageSize.
            -Сервер POP3 трапался при попытке отдать клиенту сообщение с
             пустым телом. Исправлено.
            -Появилось новое ключевое слово POP3HoldFlagsMask, позволяющее
             фильтровать входящие нетмайловые сообщения по их атрибутам.
            -Входящие аттачи теперь вкладываются POP3-сервером в тело сообщения.
            -Пофиксен ряд оплошностей в многопоточности.
             
02.07.2000  Версия 1.5.0
            -Добавлена поддержка IMail (возможно задавать до 255 групп
             новостей, посредством опции -$g#NNN, где N - десятичная цифра).
            -Поддержка конфига HPT.
            -Проведена работа по выявлению утечек памяти.
            -Еще один шажок к RFC - реализованы команды NEWNEWS и
             ARTICLE <Message-Id>
            -Когда база не содержала сообщений, в ответе на команду LIST
             выдавались случайные значения в поле <last> вместо "0". Исправлено.
            -Появилась поддержка Windows Script Host (WSH). Пока реализовано
             только две внешних команды: "IsIpValid" и "IsUserValid".
            -Теперь для IS рабочей директорией всегда является папка, в которой
             расположен IS.EXE. 
             
02.05.2000  Версия 1.4.3
            -Проект отныне компилируется в Borland C++ Builder 5.0
            (раньше был 4.0)
            -Исправлен баг в реализации SMTP - в ряде случаев отключить
             SMTP-аутентификацию было невозможно.
            -Режим BBS mode в POP3 сервере теперь по умолчанию отключен.
             Для его включения предусмотрено ключевое слово POP3BBSMode
            -в FAQ добавлен пункт про настройку гейтования нетмайла.
18.03.2000  Версия 1.4.2
            -Теперь правильно понимаются арии, прописанные в squish.cfg
             без указания имени диска (например: EchoArea  DOOM \FIDO\MAIL\DOOM)
            -"Выпрыгивание" из трея теперь осуществляется по двойному клику
             мыши.
             
12.03.2000  Версия 1.4.1
            -Пофиксен баг версии 1.4.0 - в msgid ВСЕГДА подставлялся адрес
             гейта.
            -Эхоконференции, прописанные в squish.cfg  без '-$' теперь
             интерпретируются как сквишовые (раньше такие конференции
             отбрасывались).
            -Теперь обрабатывается команда NNTP "LIST OVERVIEW.FMT" (правда,
             я не уверен в правильности).
            -Максимальное значение LogLevel увеличено до 4. Лог при LogLevel=3
             теперь стал компактнее.

03.01.2000  Версия 1.4.0
            -Появилась возможность подключать бинарный Fastecho.CFG в
            качестве файла описания арий.
            -Изменен алгоритм определения даты написания сообщения, в
            NNTP протоколе.
            -SMTP сервер теперь поддерживает аутентификацию. Это значит, что
            теперь есть возможность жестко привязать FTN-адрес пользователя к
            логину/паролю в USERS.CFG
            -Ключевое слово SMTPAuthRequired заставляет SMTP-сервер принимать
            только защищенные паролем сессии.
            -NNTP сервер теперь так же подставляет при постинге FTN-адрес
            пользователя из USERS.CFG (естественно, клиент должен передать
            username и password)

15.11.1999  Версия 1.3.4
            -Исправлен баг в коде для JAM-баз отвечающем за фильтрацию
            сообщений помеченых как удаленные. 
            
22.10.1999  Версия 1.3.3
            -Hовый параметр: TwitIPAddr, допускающий использование масок.
            Соединения с удаленными системами попадающими под маски указанные
            в параметре TwitIpAddr будут отклоняться.
            Изменения в TwitIPAddr вступают в силу немедленно, без перезапуска
            сервиса.
            -Внесены изменения в процедуру удаления сообщений отсылаемых по
            POP3: Теперь если парметр POP3TrashFolder закомментирован,
            то соответствующие msg-файлы удаляются бесследно и безвозвратно.
            Также теперь перенос msg-файлов в TrashFolder должен нормально
            работать и в Win9x.
            -Запущенный в режиме Win9x InterSquish не давал Windows сделать
            shutdown. Hаконец-то исправлено.
            -Users.cfg, Areas.cfg, если в них были внесены изменения, теперь
            перечитываются "на ходу", по мере необходимости.
            -Изменена реакция на отсутствие файлов jam-базы, прописанной в
            areas.cfg. Теперь в этом случае создается пустая jam-база.

27.09.1999  Версия 1.3.2
            -Команды теперь воспринимаются независимо от регистра символов.
            -Hесколько улучшена работа с логом.
            -Добавлена небольшая защита от атак - теперь в параметрах
                SMTPNumSameConnections,
                NNTPNumSameConnections,
                POP3NumSameConnections
            можно указать количество одновременных сессий с одним IP адресом. 
            -При указании параметра ForceINTL в IS.CFG, IS будет вставлять в 
            нетмайловые сообщения кладж INTL.
            -Пофиксен трап, возникающий в некоторых случаях после выполнения
            команды NNTP "QUIT".
           
02.09.1999  Версия 1.3.1
            -Устранена причина трапа при попытке выбрать группу, для которой
            в areas.cfg не прописан флаг типа ('-$' или '-j'). Теперь такие
            ариии игорируются, а в лог пишется соответствующее сообщение.

31.08.1999  Версия 1.3.0
            -Базы JAM теперь поддерживаются. Пользуйтесь ключом '-j'
            вместо '-$' для указания типы базы "JAM".
            -Код обработки адресов переработан. Адреса вида:
            "account@host (User Name)" теперь обрабатываются корректнее.
            -Некоторые изменения в алгоритме работы с базами.
            -Базы теперь открываются в режиме "DenyNone" (раньше было
            "DenyWrite"). Думаю, большая часть "подвисонов" пропадет.
            -Пофиксен баг зацикливания нити при открытии базы - параметр
            ThreadTimeOut не работал.
            -В рабочем каталоге теперь ведется лог исключений возникающих
            при старте. Файл называется "is_debug.log"
            -Имя параметра "SquishCfg" заменено на "AreasCfg". Параметр
            "SquishCfg" так же обрабатыватся, для совместимости.
            -Команда 'NEWGROUPS' протокола NNTP теперь обрабатывается по
            другому: посылается пустой список. (Раньше посылались ВСЕ
            конференции). Я надеюсь когда-нибудь сделать обработку в
            соответствии с RFC.

19.08.1999  Версия 1.2.4
            -Новый параметр - "DefaultInternetGate". Подробности см. конфиг.
            -Сообщения, адресованые не на фидошный, а на интернетовский e-mail
            теперь отправляются на адрес указанный в параметре
            "DefaultInternetGate".
            -Исправлен баг в SMTP-сервере, проявлявшийся в трапе при попытке
            юзера отправить одно письмо нескольким адресатам.
            -Вместо списка групп в параметрах DefaultGroups и DefaultROGroups
            теперь можно использовать символ '*', означающий "все группы"
            

17.08.1999  Версия 1.2.3
            -Мыло теперь гейтуется в обе стороны. Выборка писем осуществляется
            на основе записей в users.cfg. Если адрес, указанный в Users.cfg
            совпадает с адресом гейта, будут выбраны все нетмайловые сообщения,
            у которых поле "ToName:" совпадает с именем учетной записи,
            в противном случае выборка сообщений производится на основании
            совпадения ftn-адресов.
            -Поля "Subj" и "From" теперь по умолчанию передаются клиенту
            в формате Quoted Printable, если кому-нибудь понадобится PlainText,
            раскомментируйте в конфиге параметр PlainTextInHeaders.
            -Еще одна попытка пофиксить глюк с названием месяца в дате отправки
            при постинге .PKT, на этот раз, я надеюсь, удачная.
            -Трап нити, натыкающейся на некорректную дату в базе при передаче
            клиенту заголовков пофиксен (неудачная попытка пофиксить сей баг
            была еще в версии 1.02).
            -Имя удаленного хоста больше не ресолвится и не выводится в лог -
            в ряде случаев ресолвинг занимал длительное (10-20 сек) время при
            установки нового соединения.
            -Адреса, прописываемые в параметрах ньюс- и мэйлридера теперь
            подставляются в поле "From" (раньше подставлялся адрес гейта
            или адрес, прописанный в Users.cfg).
            Адреса должны иметь вид: "Ivan_Uskov@p0.f114.n5055.z2.fidonet.org",
            если это не так, подставляется адрес гейта.
            -Найдено и исправлено еще несколько багов в процедурах конвертации
            MSGID->MessageID (проявлялось в интернетовских адресах).
            -Некоторые косметические изменения.

13.08.1999  Версия 1.2.2
            -SMTP-сервер не создавал флаг при постинге. Исправлено.
            -При отработке NNTPTryFoundTo, русские имена передавались в неверной
            кодировке (1251 вместо 866). Исправлено.

10.08.1999  Версия 1.2.1
            -Появился постинг мыла (SMTP->FTN), в незарегистрированной версии
            тоже работает. Движение мыла в обратную сторону (FTN->POP3) будет,
            по всей видимости, реализовано в следующей версии.
            -Имена некоторых параметров в конфиге изменились! Вместо
            LogFileName, появились NNTPLogFileName и SMTPLogFileName, та же
            участь постигла параметр LogLevel (стало NNTPLogLevel и
            SMTPLogLevel).
            -Имена сервиса WindowsNT также изменились. Настоятельно рекомен-
            дую выполнить "IS -uninstall" для предыдущей версии программы, если
            она использовалась в качестве сервиса.
            -У сервера запущенного с параметром "-Win95" теперь появилось
            "лицо", которое, к тому же, прячется в трее :)
            -Реализована фича (альтернатива кладжу "X-Comment-To"):
            При раскомментированном ключевом слове "NNTPTryFoundTo" InterSquish
            предпринимает попытку найти в базе оригинальное сообщение,
            на которое постится ответ. Если это сообщение найдено, имя из поля
            "From" найденного сообщения подставляется в поле "To" отсылаемого
            сообщения. В противном случае в поле "To" подставляется "All".
            -Исправлено несколько багов с конвертацией фидошных адресов, в
            частности, вместо "Ivan_Uskov@p3.f101.n5055.z2.fidonet.org" под-
            ставлялось просто "p3.f101.n5055.z2.fidonet.org" или даже
            "p3.f101.n5055.z2@fidonet.org".
            -Исправлен очень неприятный баг в постинге PKT - из-за необнуления
            структуры в ряде случаев портились поля "FromDate" и "To"
            -Название месяца в заголовке отправляемого сообщения теперь всегда
            выводится на английском языке.
            
23.07.1999  Версия 1.2.0
            -Долгожданный постинг наконец появился :)
            -Версия теперь распространяется как shareware.
            -Новые параметры в конфигах для поддержки постинга.
            -Теперь в лог пишется TCP/IP адрес удаленной системы.
            -Пофиксен давний глюк заключавшийся в отсылке клиенту заголовков
            сообщений удаленных ранее из базы вручную.
            -Пофиксены раннее незаметные баги с преобразованием адресов.

23.05.1999  Версия 1.1.1 
            -Конфигурация теперь опять хранится в текстовых файлах. Программа
            ISSetup удалена за ненадобностью.
            -Теперь InterSquish поддерживает авторизацию пользователей.
            -Появился механизм разграничения доступа к различным группам
             конференций.
            -Исправлена процедура выхода по тайм-ауту при блокировке базы
             из вне.
            -Сделаны некоторые подготовительные шаги в реализации постинга.
            -Создан список рассылки InterSquish.          

04.05.1999  Версия 1.1.0
            -Проект отныне компилируется в Borland C++ Builder 4.0
            (раньше был 3.0)
            -Работа в качестве сервиса Windows NT существенно улучшена, в
            частности, устранено непонятное зависание некоторых диалогов
            из панели управления Windows.
            -Сервис теперь можно инсталлировать из командной строки, с помощью
            опций IS /install и IS /uninstall
            -Пустое окно больше не выводится.
            -Для запуска в ОС Win95 и Win98, где нет сервисов, используется
            ключ IS /Win9x
            -Выполнены некоторые работы по приведению IS к требованиям
            соответствующих RFC, в частности добавились Message-ID и References,
            теперь можно пользоваться Netscape.
            -Изменен принцип нумерации версий.
            -Некоторые другие изменения.
            
22.02.1999  Версия 1.05
            -Устранены проблемы, возникавшие при повторном использовании
            нити, хранящейся в кеше - некоторые объекты не инициализировались
            заново, что приводило к трапу нити.
            -Добавлен новый параметр ThreadCacheSize, задающий размер кеша,
            в котором хранятся нити.

19.02.1999  Версия 1.04
            -Пофиксен наконец-то баг, проявляющийся в том, что ISS упрямо
            хотел найти squish.cfg в d:\fidonet\partoss\
            -КОНФИГУРАЦИЯ ISS ТЕПЕРЬ ХРАНИТСЯ В REGISTRY, по адресу:
            HKLM\Software\IvUs\InterSquish. Файл ISS.CFG больше не используется.
            -Добавлены ловушки для исключительных ситуаций возникающих
            при чтении из сквишовой базы.
            -Внесены изменения в алгоритм работы сервера - теперь нить после
            дисконнекта не умирает, а остается в кеше.
            -Команда NEWGROUPS из RFC 977 не обрабатывалась. Пофиксено (хотя
            пока с отступлением от стандарта - вместо новых ньюсгрупп пере
            дается весь список)

14.02.1999  Версия 1.03
            -Во избежание будущих недоразумений все файлы получили короткие
            (8.3) имена.
            -Passthru'шные арии больше не передаются в список конференций,
            доступных для подписки.
            -Клуджи и сенбаи теперь не видны, поскольку помещаются теперь в 
            заголовок статьи вместе с другой системной информацией.
            -В лог теперь пишется дата и время.
            -Косметические изменения в ISSetup.
            
12.02.1999  Версия 1.02
            -Пофиксен трап возникавший при попытке попытке юзера прервать
            загрузку заголовков.
            -Пофиксен трап возникавший при декодировании некорректной даты
            в поле сквишового сообщения.
            -Исправлен баг с незакрытием сервера при наличии хотя бы одного
            активного соединения.
            -Улучшен алгоритм разрешения конфликтов с другими програмами,
            открывающими базу на запись (тоссеры, редакторы).
            -Значительно увеличена скорость загрузки сообщений при
            одновременном сокращении использования процессора.
            -Внесены изменения в интерфейс сервера и программы настройки.

11.02.1999  Версия 1.01
            -Пофиксен баг в процедуре инсталляции сервиса.
