From: Zbigniew Jędrzejewski-Szmek Date: Thu, 29 Mar 2018 14:19:33 +0000 (+0200) Subject: tmpfiles: add a new return code for "operational failure" when processing X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=510e07327472a1b781107456df6be8bbf83c5011;p=elogind.git tmpfiles: add a new return code for "operational failure" when processing Things can fail, and we have no control over it: - file system issues (immutable bits, file system errors, MAC refusals, etc) - kernel refusing certain arguments when writing to /proc/sys or /sys Let's add a new code for the case where we parsed configuration but failed to execute it because of external errors. --- diff --git a/src/basic/fd-util.h b/src/basic/fd-util.h index 0f5a950f1..db259e6d1 100644 --- a/src/basic/fd-util.h +++ b/src/basic/fd-util.h @@ -102,6 +102,10 @@ int acquire_data_fd(const void *data, size_t size, unsigned flags); #define ERRNO_IS_DISCONNECT(r) \ IN_SET(r, ENOTCONN, ECONNRESET, ECONNREFUSED, ECONNABORTED, EPIPE, ENETUNREACH) +/* Resource exhaustion, could be our fault or general system trouble */ +#define ERRNO_IS_RESOURCE(r) \ + IN_SET(r, ENOMEM, EMFILE, ENFILE) + int fd_move_above_stdio(int fd); int rearrange_stdio(int original_input_fd, int original_output_fd, int original_error_fd); @@ -117,5 +121,3 @@ static inline int make_null_stdio(void) { (fd) = -1; \ _fd_; \ }) - -int fd_reopen(int fd, int flags);