summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/child.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/child.c b/src/child.c
index effb2ae..60f8ead 100644
--- a/src/child.c
+++ b/src/child.c
@@ -206,26 +206,26 @@ static void child_main (struct child_s *ptr)
* We have to wait for connections on multiple fds,
* so use select.
*/
+ while (!config.quit) {
- FD_ZERO(&rfds);
+ int listenfd = -1;
- for (i = 0; i < vector_length(listen_fds); i++) {
- int *fd = (int *) vector_getentry(listen_fds, i, NULL);
+ FD_ZERO(&rfds);
- ret = socket_nonblocking(*fd);
- if (ret != 0) {
- log_message(LOG_ERR, "Failed to set the listening "
- "socket %d to non-blocking: %s",
- fd, strerror(errno));
- exit(1);
- }
+ for (i = 0; i < vector_length(listen_fds); i++) {
+ int *fd = (int *) vector_getentry(listen_fds, i, NULL);
- FD_SET(*fd, &rfds);
- maxfd = max(maxfd, *fd);
- }
+ ret = socket_nonblocking(*fd);
+ if (ret != 0) {
+ log_message(LOG_ERR, "Failed to set the listening "
+ "socket %d to non-blocking: %s",
+ fd, strerror(errno));
+ exit(1);
+ }
- while (!config.quit) {
- int listenfd = -1;
+ FD_SET(*fd, &rfds);
+ maxfd = max(maxfd, *fd);
+ }
ptr->status = T_WAITING;