Re: телнет

From
Valentin Nechayev ()
To
Alexander Pevzner ()
Date
2003-05-28T19:14:34Z
Area
RU.UNIX.PROG
From: Valentin Nechayev <netch@segfault.kiev.ua>

>>> Alexander Pevzner wrote: 

VN>> Про expect тут уже все уши прожужжали, а я такое вот спрошу: что там за
VN>> "протокол телнета"?  Работать-то телнетовым клиентом (пока не начали
VN>> слать 0xff) можно с любым протоколом с разделением строк через \r\n -
[...]
AP> Я встряну, поскольку на телнете собаку съел :-)

О, тогда тебя помучаю.

AP> Некоторые сервера не будут с тобой разговаривать, пока ты не
AP> ответишиь на их options negotiations.

Вот в этом и был вопрос - что за сервер, и не относится ли он к тому, кто про
telnet options вообще не знают?
А не разговаривает пока не договорились стандартный BSD'шный telnetd.

AP> Кроме того, телнетовский
AP> IAC вполне может оказаться в потоке данных.

Как IAC, или в том смысле, что это код 0xff, который является частью данных,
но выглядит как IAC?

AP> С другой стороны, минимальная реализация телнета, которая будет
AP> работать с любым сервером, должна делать не больше следующего:
AP>   1) уметь отличать команды от данных, в т.ч. option subnegotiation

А как?
Я вот недавно нарвался - сервер отдаёт кусок текста в cp1251 - "...""ят" -
telnet это понимает как DATA MARK.
Как различать-то будем?

AP>   2) Уметь правильно передавать и принимать в потоке данных байт
AP> 0xff (т.е., IAC)
AP>   3) посылать WONT в ответ на DO, и DONT в ответ на WILL
AP>   4) игнорировать все остальные команды, в т.ч. DONT и WONT.

А если некоторые предложения принимать нельзя?
А что с аутентификацией, как со стандартным telnetd?

AP> Этого вполне достаточно, чтобы сервер был счастлив, и написать
AP> такое несложно. Исходничком такой минимальной имплементации
AP> могу поделиться :-)


-netch-
--- ifmail v.2.15dev5
 * Origin: Dark side of coredump (2:5020/400)