[PATCH v3 2/2] Return different exit codes when gai_result is > -100
Petr Menšík
pemensik@redhat.com
Thu Oct 16 14:18:23 GMT 2025
Make the result checkable from the command line even without verbose
mode. Keep original exit status 2 for name not found error. But report
other errors by exit status greater than 10.
For too high values make it return 2 as before.
Signed-off-by: Petr Menšík <pemensik@redhat.com>
---
nss/getent.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/nss/getent.c b/nss/getent.c
index 58b08f770a..eb044b54a5 100644
--- a/nss/getent.c
+++ b/nss/getent.c
@@ -368,10 +368,13 @@ ahosts_keys_int (int af, int xflags, int number, char *key[])
if (gai_result != 0)
{
- result = 2;
if (gai_verbose)
fprintf (stderr, _("Host %s failed: %s\n"), key[i],
gai_strerror (gai_result));
+ if (gai_result >= EAI_INPROGRESS && gai_result != EAI_NONAME)
+ result = 10 + abs (gai_result);
+ else
+ result = 2;
}
else
{
--
2.51.0
More information about the Libc-alpha
mailing list