From 5a1d30b9a775a7bbac55752abdc10ed5383d209f Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 30 Nov 2021 03:39:35 +0900 Subject: [PATCH] errno-util: introduce ERRNO_IS_TRANSIENT() (cherry picked from commit 7aad83580fccee926d903bdb1a2a6af2c40ef0fc) Related: #2172846 --- src/basic/util.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/basic/util.h b/src/basic/util.h index 195f02cf5f..48beb88bac 100644 --- a/src/basic/util.h +++ b/src/basic/util.h @@ -180,6 +180,14 @@ static inline int negative_errno(void) { return -errno; } + +/* For send()/recv() or read()/write(). */ +static inline bool ERRNO_IS_TRANSIENT(int r) { + return IN_SET(abs(r), + EAGAIN, + EINTR); +} + /* Two different errors for access problems */ static inline bool ERRNO_IS_PRIVILEGE(int r) { return IN_SET(abs(r),