Как передать пароль по каналу ssh в C ++?

У меня есть класс C ++, используемый для запуска и взаимодействия с внешними процессами (что-то вроде QProcess Qt - мы не можем использовать Qt, поскольку работаем над небольшой встроенной системой). Он использует системные вызовы pipe и dup2 для установления связи между родительским и дочерним процессом. Проблема в том, что он не работает с ssh, scp и другими программами, ожидающими пароль. Я настроил ssh, и кажется, что он открывает / dev / tty и каким-то образом использует его для чтения пароля из командной строки. Есть ли способ ввести пароль из моего класса или определить, что приложение ожидает ввода из какого-то другого источника, кроме stdin (совсем не обязательно быть переносимым)?

8
задан Zbigh1 7 November 2011 в 09:54
поделиться