From 52b4ed6028204e2a0f319e37490b7545bafd69eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Thu, 14 Oct 2021 21:55:21 +0200 Subject: [PATCH] Errors.h: add ENOTRECOVERABLE and EOWNERDEAD from POSIX MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html Change-Id: I3c0a08d447c897b3caba8d365f8e5dbab7869f18 Reviewed-on: https://review.haiku-os.org/c/haiku/+/4573 Tested-by: Commit checker robot Reviewed-by: Jérôme Duval --- headers/build/os/support/Errors.h | 2 ++ headers/os/support/Errors.h | 2 ++ src/bin/error.c | 7 +++++++ src/system/libroot/posix/string/strerror.c | 4 ++++ 4 files changed, 15 insertions(+) diff --git a/headers/build/os/support/Errors.h b/headers/build/os/support/Errors.h index 0b5306c920..2e8e2c5f1a 100644 --- a/headers/build/os/support/Errors.h +++ b/headers/build/os/support/Errors.h @@ -184,6 +184,8 @@ #define HAIKU_ETIME B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 58) #define HAIKU_ETXTBSY B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 59) #define HAIKU_ENOATTR B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 60) +#define HAIKU_ENOTRECOVERABLE B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 61) +#define HAIKU_EOWNERDEAD B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 62) /* B_NO_MEMORY (0x80000000) can't be negated, so it needs special handling */ #define HAIKU_ENOMEM B_NO_MEMORY diff --git a/headers/os/support/Errors.h b/headers/os/support/Errors.h index 592a5a407c..151c0fbe35 100644 --- a/headers/os/support/Errors.h +++ b/headers/os/support/Errors.h @@ -188,6 +188,8 @@ #define ETIME B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 58) #define ETXTBSY B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 59) #define ENOATTR B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 60) +#define ENOTRECOVERABLE B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 61) +#define EOWNERDEAD B_TO_POSIX_ERROR(B_POSIX_ERROR_BASE + 62) /* B_NO_MEMORY (0x80000000) can't be negated, so it needs special handling */ #ifdef B_USE_POSITIVE_POSIX_ERRORS diff --git a/src/bin/error.c b/src/bin/error.c index 3f268c6948..d0340aaa51 100644 --- a/src/bin/error.c +++ b/src/bin/error.c @@ -287,6 +287,13 @@ struct error_pair { E(ETIMEDOUT), #ifdef ETXTBSY E(ETXTBSY), +#endif + E(ENOATTR), +#ifdef ENOTRECOVERABLE + E(ENOTRECOVERABLE), +#endif +#ifdef EOWNERDEAD + E(EOWNERDEAD), #endif E(EWOULDBLOCK), E(EXDEV), diff --git a/src/system/libroot/posix/string/strerror.c b/src/system/libroot/posix/string/strerror.c index 53cb6735c8..15b4cc8449 100644 --- a/src/system/libroot/posix/string/strerror.c +++ b/src/system/libroot/posix/string/strerror.c @@ -532,6 +532,10 @@ error_description(int error) return "Text file busy"; case ENOATTR: return "No such attribute"; + case ENOTRECOVERABLE: + return "State not recoverable"; + case EOWNERDEAD: + return "Previous owner died"; default: return NULL;