Creepiest bug ever
[vsys.git] / vsyssh / vsyssh.c
index 3d32454..586c6a7 100644 (file)
@@ -60,6 +60,8 @@ int main(int argc, char **argv, char **envp)
                                int ret;
                                printf("vsys>");fflush(stdout);
                                ret = select(vfd0+1, &set, NULL, NULL, &tv);
+                               FD_SET(0, &set);
+                               FD_SET(vfd0, &set);
                                if (FD_ISSET(0,&set)) {
                                        char lineread[2048];
                                        int ret;
@@ -68,12 +70,13 @@ int main(int argc, char **argv, char **envp)
                                        write(vfd1,lineread,ret);
                                        FD_CLR(0,&set);
                                }
-                               else if (FD_ISSET(vfd0,&set)) {
+                               if (FD_ISSET(vfd0,&set)) {
                                        char lineread[2048];
                                        int ret;
                                        printf("Here2\n");
                                        ret=read(vfd0,lineread,2048);
                                        write(1,lineread,ret);
+                                       printf("Here3\n");
                                        FD_CLR(vfd0,&set);
                                }
                        }