aboutsummaryrefslogtreecommitdiff
path: root/sys/cluster/util-vserver/util-vserver-0.30.212.diff
diff options
context:
space:
mode:
authorrhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4>2007-03-28 14:40:04 +0000
committerrhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4>2007-03-28 14:40:04 +0000
commitd2070cb571194880a149f3a5c1cc57be300078f4 (patch)
treeb2b17451c7795daa22cbb6b6ad0bd058d9acd50d /sys/cluster/util-vserver/util-vserver-0.30.212.diff
parentfb16b3d24f52d42f080871ac1712f82ae25cce96 (diff)
downloadslackbuilds-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.diff44
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);
++ }
++ }
+ }
+
+