While select itself is reasonably portable, it turns out that including the declaration for fd_set makes a bit of a mess for QF's clean headers.