send(fd,buffer,num_byte,0);
}
if (num_byte <0 && errno != EAGAIN)
+ return;
+ if (quit_on_eof_ && num_byte == 0)
return;
}
{
int ret = 0;
int socket_fd = 0;
+ char *socket_file;
//~ struct termios tmio_prev;
if (argc > 0)
- socket_file_ = argv[1];
+ socket_file = argv[1];
+ else
+ socket_file = default_socket_file_;
- for(;;)
+ if (argc > 1)
+ quit_on_eof_=0;
+
+ socket_fd = establish_socket_connection(socket_file);
+ if(socket_fd)
{
- socket_fd = establish_socket_connection(socket_file_);
- if(socket_fd < 0)
- ret = 2;
- else {
- //~ ret = set_tty_raw(STDIN_FILENO,&tmio_prev);
- //~ if (ret)
- //~ break;
- fcntl(STDIN_FILENO, F_SETFL, O_NONBLOCK);
- connect_terminal(socket_fd);
-
- //~ ret = restore_tty(STDIN_FILENO,&tmio_prev);
- //~ if (ret)
- //~ break;
- }
- if (ret == 2) {
- fprintf(stderr, "%s error, trying to reopen in 5 seconds..\n", socket_file_);
- if(socket_fd > 0)
- shutdown(socket_fd,SHUT_RDWR);
- sleep(5);
- }
- else
- break;
+ //~ ret = set_tty_raw(STDIN_FILENO,&tmio_prev);
+ //~ if (ret)
+ //~ break;
+ fcntl(STDIN_FILENO, F_SETFL, O_NONBLOCK);
+ connect_terminal(socket_fd);
+
+ //~ ret = restore_tty(STDIN_FILENO,&tmio_prev);
+ //~ if (ret)
+ //~ break;
+ }
+ else
+ {
+ fprintf(stderr, "%s error, aborting..\n", socket_file);
+ ret=2;
}
if(socket_fd > 0)