return fd;
}
+void clear_fd(int fd)
+{
+ fd_set fds;
+ struct timeval tv;
+ FD_ZERO(&fds);
+ FD_SET(fd, &fds);
+ tv.tv_sec = 0;
+ tv.tv_usec = 50000;
+ for(;;) {
+ int ret = select(fd+1, &fds, NULL, NULL, &tv);
+ if(ret > 0) {
+ char buffer[100];
+ ret = read(fd, buffer, sizeof(buffer));
+ }
+ else
+ break;
+ }
+}
+
int send_command(int tty_fd, cmd_t* cmd)
{
if(!cmd)
{
log_printf(NOTICE, "entering main loop");
+ clear_fd(tty_fd);
+ clear_fd(autosample_fd);
+
fd_set readfds, tmpfds;
FD_ZERO(&readfds);
FD_SET(tty_fd, &readfds);
return ret;
}
- fd_set fds;
- struct timeval tv;
- FD_ZERO(&fds);
- FD_SET(fd, &fds);
- tv.tv_sec = 0;
- tv.tv_usec = 50000;
- for(;;) {
- ret = select(fd+1, &fds, NULL, NULL, &tv);
- if(ret > 0) {
- char buffer[100];
- ret = read(fd, buffer, sizeof(buffer));
- }
- else
- break;
- }
+ clear_fd(fd);
return 0;
}
}
int autosample_fd = -1;
-// if(opt.led_filename_) {
+ if(key_value_storage_length(&opt.autosampledevs_) > 0) {
log_printf(NOTICE, "starting autosample process");
autosample_fd = start_autosample_process(&opt);
if(autosample_fd == -1) {
log_close();
exit(1);
}
-// }
+ }
int cmd_listen_fd = init_command_socket(opt.command_sock_);
if(cmd_listen_fd < 0) {