LINUX.ORG.RU

[C/C++]Соединение сокета с sh посредством pipes


0

0

Подскажите как реализовтаь следующий функционал: Некий удаленный клиент устанавливает соединение через TCP socket с сервером, далее клиент вводит команды в режиме постоянного ввода и получает отклик от выполненных команд на сервере, вобщем аналогично ssh. Интересует именно реализация связки напрямую потоков сокета и потоков вывода терминальной программы sh. Насколько понимаю осуществялется это с помощью пайпов, но как? Подскажите в сторону каких функций смотреть? Может есть какието примеры? Или другие варианты реализации? (Использовать ssh не предлагать!)

Спасибо!



Последнее исправление: Alex981051 (всего исправлений: 1)

> Может есть какието примеры? Или другие варианты реализации?

telnet

А чем SSH не угодил?

sjinks ★★★
()

Вы хотите написать на C/C++ приложение, состоящее из клиентской и серверной части. Серверная слушает определенный TCP-порт и выполняет присылаемые команды в sh, отправляя вывод клиенту. Клиент подключается к серверу, отправляет ему ввод и отображает вывод. При этом серверная часть, запуская sh, связывается с ним через пайпы.

Верно ли я понял?

интересует именно реализация связки напрямую потоков сокета и потоков вывода терминальной программы sh.

Полученный из клиента по TCP буфер можно записать в входной поток sh, а прочитанный из выходного потока sh буфер отправить клиенту..

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

да, netcat, а еще stty чтобы нормально vim работал (впрочем, флаги для bash я еще не осилил)

sudo работать не будет без псевдотерминала

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