hello, in a minimal shell tutorial written in C, i have a read_line function that does: char* read_line() { char* line=NULL; line=(char*)malloc(512); line=fgets(line,512,stdin); return line; } then i parse this line to build a correct "argv" to pass to execvp() everything works well when i use ssh interactively. The problem i encounter is when i pass a command to ssh into this shell: ssh -v guest@localhost ls [...] guest@localhost's password: debug1: Authentication succeeded (password). debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: Sending environment. debug1: Sending env LANG = fr_FR.utf8 debug1: Sending command: ls ( here the shell waits ) the shell still waits for ls and i have to retype intaractively "ls" to get the correct result: ls debug1: client_input_channel_req: channel 0 rtype exit-status reply 0 Desktop Examples debug1: channel 0: free: client-session, nchannels 1 debug1: Transferred: stdin 0, stdout 0, stderr 0 bytes in 61.4 seconds debug1: Bytes per second: stdin 0.0, stdout 0.0, stderr 0.0 debug1: Exit status 9 any explanation would be greatly appreciated. +ben - To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html