Remote Shell - mehrfache Prompt
-
Hallo zusammen,
ich befasse mich momentan mit einer Remote Shell unter Linux - soweit läuft auch alles gut, bis auf eine komische Sache: die Prompt wird manchmal, nachdem ein Befehl ausgeführt wurde, mehr als 1 mal zum Client gesendet. Das ganze sieht dann so aus:
Linux system 2.6.33.3-kernel-32 #4 SMP Sat Aug 7 13:06:33 CEST 2010 i686 GNU/Linux uid=1000(user) gid=1000(user) Gruppen=1000(user) /home/user/remshell user@system:~/remshell$ test user@system:~/remshell$ user@system:~/remshell$
wenn ich dann mal Enter gedrückt halte, passiert manchmal sowas:
user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$ user@system:~/remshell$
Der Code für den Server: http://pastebin.com/xLWHueD2
Als Client kann einfach Telnet verwendet werden, port 1300.MFG
lesley
-
mal bumpen..?
-
Bump, konnte Problem immer noch nicht lösen.
-
Wozu setzt Du den Socket auf non-blocking? Meine Vermutung wäre, dass /bin/sh damit nicht klarkommt.
Kleiner Kommentar am Rande: Den Sinn der Endlosschleife seh ich nicht, solange Du nicht forkst. Dein Prozess wird ja bei exec* mit /bin/sh ersetzt.