First draft of the dccp sender/receiver pair.
[paraslash.git] / send.h
diff --git a/send.h b/send.h
index 2c6c727..75c1373 100644 (file)
--- a/send.h
+++ b/send.h
@@ -84,3 +84,22 @@ struct sender {
  */
        int (*client_cmds[NUM_SENDER_CMDS])(struct sender_command_data*);
 };
+
+
+
+static inline int _write_ok(int fd)
+{
+       struct timeval tv = {0, 0};
+       fd_set wfds;
+       int ret;
+again:
+       FD_ZERO(&wfds);
+       FD_SET(fd, &wfds);
+       ret = select(fd + 1, NULL, &wfds, NULL, &tv);
+       if (ret < 0 && errno == EINTR)
+               goto again;
+       if (ret < 0)
+               ret = 0;
+       return ret;
+}
+