- len = read(0, BUFSIZ, buffer);\r
- write(server_fd, len, buffer);\r
- write(1, len, buffer);\r
- } while( len == BUFSIZ );\r
+ char *line = Readline_NonBlock(readline_info);\r
+ if( line )\r
+ {\r
+ write(server_fd, line, strlen(line));\r
+ write(server_fd, "\n", 1);\r
+ }\r
+ }\r
+ else\r
+ {\r
+ do\r
+ {\r
+ len = read(0, buffer, BUFSIZ);\r
+ write(server_fd, buffer, len);\r
+ write(1, buffer, len);\r
+ } while( len == BUFSIZ );\r
+ }\r
+ }\r
+ \r
+ // If there was an error, quit\r
+ if( FD_ISSET(server_fd, &err_fds) )\r
+ {\r
+ printf("\nRemote connection lost\n");\r
+ break ;\r