I've compiled boa (http//www.boa.org) under Cygwin and it seems to work (incidentally much better than it did with 1.3.2). However, the select() call in Boa's main loop continually fails with errno==EBADF. Whilst this doesn't actually break it functionally, it does cause it to thrash taking up 99% CPU time. if (select(OPEN_MAX, &block_read_fdset, &block_write_fdset, NULL, (request_block ? &req_timeout : NULL)) == -1) { /* what is the appropriate thing to do here on EBADF */ if (errno == EINTR) continue; /* while(1) */ else if (errno != EBADF) { log_error_mesg(__FILE__, __LINE__, "select"); exit(errno); } } Thoughts? Regards, Phil