Отправляет email-рассылки с помощью сервиса Sendsay

Re: Программа - smtp + telnet - не выводит команды!!!

Отключи буферизацию. Точно чем отключать не скажу - копаться в доках надо.
В виндах при работе с файлами можно октрывать файлы без буферизации так:
fopen(..., "wc").
В твоем случае можно попробовать делать fflush после каждой операции
вывода - по идее поможет.

Original Message From: "d2r" <ost@e*****.com>
To: "comp.soft.linux.discuss (3623771)" <igo***@m*****.com>
Sent: Tuesday, December 09, 2003 12:55 PM

Кратко опишу ситуацию:

Пишу программу обработки электронной почты (smtp/pop сервера).

Запуск - через inetd. В /etc/services прописана, в /etc/inetd.conf
прописана (тип - stream, протокол - tcp).

Вывожу приглашение по подключению к серверу ("220 SMTP......"). Завершаю
сообщение как указано в rfc2821 комбинацией CR+LF (0x0D 0x0A). После чего
ожидаю ввод команды (на стадии разработки стоит простая пара scanf/printf).
В конце вывожу "221 Connection close....".

Когда запускаю сервер из командной строки, все нормально, сообщение
выводится сразу, ввод команды работает, после ввода выводится сообщение о
завершении работы и выход в командную строку.

Когда же пытаюсь подключится через telnet, сообщения выводятся только после
завершения связи с сервером: вслепую набираю любую последовательность и
давлю Enter - обрабатывается scanf, после чего telnet показывает мне
начальное сообщение, то, что я набрал и завершающее сообщение.

Подскажите пожалуйста, где грабли и как их обойти.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Igor Zavoichinsky" Tue, 9 Dec 2003 15:32:40 +0300 (#34211)

 

Ответы:

Спасибо всем за советы, поставил fflush( NULL ) после вывода - помогло.

А насчет отключения буферизации, я что-то об этом не подумал, надо будет покапаться
в манах.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   d2r Mon, 15 Dec 2003 08:37:33 +0200 (#34835)