+ size_t max = c ? utcp_get_sndbuf_free(c) : 0;
+ if(max > sizeof buf)
+ max = sizeof buf;
+
+ if((dir & DIR_READ) && max)
+ poll(fds, 2, timeout.tv_sec * 1000 + timeout.tv_usec / 1000);
+ else
+ poll(fds + 1, 1, timeout.tv_sec * 1000 + timeout.tv_usec / 1000);