Я хочу передать некоторые команды из моей программы C. Вот пример программы:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(){
FILE *ssh = popen("ssh [email protected]", "w");
pid_t pid;
pid = fork();
if(!ssh)
{
fprintf(stderr, "Could not open pipe for output.\n");
}
if (pid==0){
fprintf(stdout, "Child process properly created.\n");
fputs("user", ssh);
fputc('\n', ssh); // enter key
_exit(0);
}
fprintf(stdout, "Exit from child process.\n");
pclose(ssh);
return 0 ;
}
Теперь, когда я запускаю эту программу, она запрашивает пароль в командной строке примерно так:
[email protected]'s password:
Я хочу передать пароль из моего примера программы, а не из командной строки. Подскажите, пожалуйста, как это сделать на C программно.
SSH используется только для примера. Это может быть и для других сценариев.
Спасибо, Юви.
ssh
интерфейса, я предлагаю вам задать его на сайте superuser.com. - person pmg   schedule 16.03.2012