diff options
author | rhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4> | 2007-03-28 14:40:04 +0000 |
---|---|---|
committer | rhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4> | 2007-03-28 14:40:04 +0000 |
commit | d2070cb571194880a149f3a5c1cc57be300078f4 (patch) | |
tree | b2b17451c7795daa22cbb6b6ad0bd058d9acd50d /sys/cluster/util-vserver/util-vserver-0.30.212.diff | |
parent | fb16b3d24f52d42f080871ac1712f82ae25cce96 (diff) | |
download | slackbuilds-d2070cb571194880a149f3a5c1cc57be300078f4.tar.gz slackbuilds-d2070cb571194880a149f3a5c1cc57be300078f4.tar.bz2 |
util-vserver: patching vlogin
git-svn-id: svn+slack://slack.fluxo.info/var/svn/slackbuilds@1132 370017ae-e619-0410-ac65-c121f96126d4
Diffstat (limited to 'sys/cluster/util-vserver/util-vserver-0.30.212.diff')
-rw-r--r-- | sys/cluster/util-vserver/util-vserver-0.30.212.diff | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/sys/cluster/util-vserver/util-vserver-0.30.212.diff b/sys/cluster/util-vserver/util-vserver-0.30.212.diff new file mode 100644 index 00000000..8e5204c7 --- /dev/null +++ b/sys/cluster/util-vserver/util-vserver-0.30.212.diff @@ -0,0 +1,44 @@ +Index: /src/vlogin.c +=================================================================== +--- /src/vlogin.c (revision 2325) ++++ /src/vlogin.c (revision 2514) +@@ -125,5 +125,5 @@ + + /* copy terminal activities */ +-static void ++static ssize_t + terminal_copy(int src, int dst) + { +@@ -142,4 +142,6 @@ + /* write activity to user */ + EwriteAll(dst, buf, len); ++ ++ return len; + } + +@@ -277,9 +279,19 @@ + } + +- if (FD_ISSET(STDIN_FILENO, &rfds)) +- terminal_copy(STDIN_FILENO, t.fd); +- +- if (FD_ISSET(t.fd, &rfds)) +- terminal_copy(t.fd, STDOUT_FILENO); ++ if (FD_ISSET(STDIN_FILENO, &rfds)) { ++ /* EOF */ ++ if (terminal_copy(STDIN_FILENO, t.fd) == 0) { ++ terminal_kill(SIGHUP); ++ exit(0); ++ } ++ } ++ ++ if (FD_ISSET(t.fd, &rfds)) { ++ /* EOF */ ++ if (terminal_copy(t.fd, STDOUT_FILENO) == 0) { ++ terminal_kill(SIGHUP); ++ exit(0); ++ } ++ } + } + + |