* network.h: Define a new ERRNO_IO_RETRY macro to test whether an I/O
operation should be retried. This eliminates the need to duplicate
the same logic testing for EAGAIN or EINTR in multiple places.
+2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
+
+ * network.h: Define a new ERRNO_IO_RETRY macro to test whether an I/O
+ operation should be retried. This eliminates the need to duplicate
+ the same logic testing for EAGAIN or EINTR in multiple places.
+
2005-02-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* stream.h: Declare new function stream_read_try suitable for use
-1 on error. */
extern int set_nonblocking(int fd);
+/* Does the I/O error indicate that the operation should be retried later? */
+#define ERRNO_IO_RETRY(EN) \
+ (((EN) == EAGAIN) || ((EN) == EWOULDBLOCK) || ((EN) == EINTR))
+
#endif /* _ZEBRA_NETWORK_H */