#$Id: History,v 1.9 1997/05/03 12:01:20 lexa Exp $
# (C) 1996 by Alex Tutubalin, lexa@lexa.ru
#
1.4.0 - добавлены SMTP и POP gateways, которые могут заменять charset
   	в Content-Type: почты. Изначально эти gateways написаны Mike
	Shoyher, но в версии 1.4.0 они были очень сильно переработаны.
	Практически, осталась только идея.
	
	Аналогичная feature (изменение charset в Content-Type) добавлена
	в http-gateway.

	Если для кодировки описан emailcharset, то HTTP-gateway будет менять
	charset в Content-Type _только_ в заголовке и только если charset 
	в заголовке уже имелся.
	Для POP3 и SMTP протоколов все гораздо хуже. Т.к. за одну сессию может
	быть передано больше одного письма, то я не вижу пристойного простого
	способа отделять заголовки писем от всего остального. Т.е. если письмо
	содержит (в теле) строку
	Content-Type: text/plain; charset=some\n
	То some будет заменен на charset, назначенный администратором.
	Если есть желающие изменить это поведение на более разумное - 
	пришлите мне патчик. Мне _лично_ SMTP/POP gateways вообще не
	нужны.
	
	Добавлены правки для AIX 4.1 (спасибо Ilfak Guilfanov).
	Дабы не мудрствовать, сделан отдельный Makefile.aix

1.3.5 - переход к более удобной системе файловых дескрипторов:
        0 - stdin - ввод данных с клиента 
	1 - stdout - вывод данных в клиента
	netfd - передается в функции - "сетевой" дескриптор полученный
	через connect - общение с server side

	В принципе, т.к. inetd делает dup2(0,1); dup2(0,2), то новая
	семантика не должна повлиять на работоспособность. Но должна
	повлиять на разрабочиков custom gateways, если вы им являетесь.
	Аналогично, каждый gateway разделен на два - client_to_server 
	(GW_client) и server_to_client (GW_server). Что несколько упрощает
	жизнь при разработке сложных gateways (для простых это не так важно).
	
	Изменен алгоритм обработок ошибок чтения-записи (сделано как в
	программе netcat):
	 - при ошибке чтения в любом направлении, соответствующие
	 направления чтения-записи закрываются через shutdown.
 	- если в каком-то направлении read() вернул 0 (после select()'а) -
	 значит для нас ничего нет и это направление данных можно
	 закрывать.
	- если client input закрыт, а чтение с сервера 2 раза кончилось
	таймаутом, то закрывается все хозяйство.

	Добавлен параметр NETWORK_DEBUG в policy.h. Если соотв. строчку
	разкомментарить, то вы получите подробное описание последовательности
	вызовов select() и соотв. gateway functions в 'main loop' в syslog()
	Удобно для отладки. Но мусора вы получите много
	
	Исправлена ошибка в http-gw приводившая к зацикливанию в случае, когда
	запрос неккоректно завершался (пользователь нажимал cancel, например)

1.3.4.1 Надоело писать комментарии по-английски

1.3.4 - Default buffer size changed from 1k to 12k. This fixes 'feature' in
        http_gw (GET string size can't be splitted between two buffer read
        operations. I.e. GET url cannot be longer than buffersize)     

1.3.3 - Fixed serious bug in http_gw code; persistent http connection now
        specially handled

1.3.2 - minor bugfixes, ftp-able version
1.3.1 - minor bugfixes
1.3.0 - Public version of http_gw.c written
1.2.2 - Added some defines (like HAS_HSTRERROR) for compatibility
	with Linux/Solaris/Other
1.2.1 - Added CGI-interface (cyrwww). Idea given by Alexander Nikolaev
1.2.0 - First Public release (without HTTP Gateway)
