LINUX.ORG.RU

Разыскивается исходный код простейшего telnet клиента.


0

1

Казалось бы, что может быть проще, чем rfc854? Да не тут-то было! Во первых, сначала надо договориться с сервером о параметрах удалённого терминала, во вторых, судя по всему, обмен данными происходит асинхронно. Во всяком случае даже после согласования параметров терминала, режим запрос-ответ не работает. Насколько я могу судить по результатам отладки, данные от сервера могут приходить по частям.

Собственно вопрос, можно ли написать полноценный telnet клиент без использования select()?

И ещё вопрос, есть ли где в сети код простейшего telnet клиента под лицензией public domain ?

Спасибо.

★★★

без select получишь полный бред во взаимодействии, поскольку без неблокирующих сокетов не будешь знать, есть ли на том конце что «на почитать». хотя можно сделать много поточное приложение - один поток читает, второй пишет. с селектом все-таки проще всего.

Deleted
()
Ответ на: комментарий от Deleted

Огромное спасибо! Наверное всё же использую два потока - в системе, для которой нужен telnet, pthread_create есть, а функции select пока нет.

alman ★★★
() автор топика
Ответ на: комментарий от Deleted

> а что это за система такая? embedded?

Пока ещё не встраиваемая. Эдакий цыплёнок, который ещё не вылупился за пределы образа флоппи диска и виртуальной машины. :)

Кстати, с двумя потоками заработало великолепно. Я Вам благодарен за подсказку.

Попутно другой вопрос возник, как обычно прячут пароль при вводе с клавиатуры? Вроде нужно какой-то ioctl на /dev/tty?

alman ★★★
() автор топика
Ответ на: комментарий от alman

Эдакий цыплёнок, который ещё не вылупился за пределы образа флоппи диска и виртуальной машины. :)

Свою ос разрабатываете? :)

gizzka ★★
()
Ответ на: комментарий от rg-400

> если правильно понял, то смотреть в сторону структуры termios(поле c_lflag) и ECHO. man termios

Спасибо, это то что надо.

alman ★★★
() автор топика

>И ещё вопрос, есть ли где в сети код простейшего telnet клиента под лицензией public domain ?

busybox

gogi
()
Ответ на: комментарий от alman

Да вроде не толксы, не должны. :)

Если есть что рассказать/покажать - расскажите, пожалуйста, интересно глянуть.

gizzka ★★
()
Ответ на: комментарий от gogi

> busybox

Лицензия не подходит.

alman ★★★
() автор топика
Ответ на: комментарий от gizzka

> Если есть что рассказать/покажать - расскажите, пожалуйста, интересно глянуть.

http://l4os.ru

Если решите попробовать запустить, то лучше на виртуальной машине с винчестером, информацию на котором не жалко.

Последняя новость здесь: http://mandrykin.livejournal.com/5655.html

alman ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.