This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] getgrent.3: Add ENOENT to error list.
- From: "Michael Kerrisk (man-pages)" <mtk dot manpages at gmail dot com>
- To: Carlos O'Donell <carlos at redhat dot com>
- Cc: mtk dot manpages at gmail dot com, "linux-man at vger dot kernel dot org" <linux-man at vger dot kernel dot org>, Simo Sorce <ssorce at redhat dot com>, Jakub Hrozek <jhrozek at redhat dot com>, GNU C Library <libc-alpha at sourceware dot org>
- Date: Sun, 14 Sep 2014 09:09:36 -0700
- Subject: Re: [PATCH] getgrent.3: Add ENOENT to error list.
- Authentication-results: sourceware.org; auth=none
- References: <54105ED1 dot 5020206 at redhat dot com>
Hi Carlos,
On 09/10/2014 07:23 AM, Carlos O'Donell wrote:
> Michael,
>
> It's possible to get ENOENT returned from getgrent
> if the backend, for example say SSSD, isn't configured
> or the daemon isn't running. The same can be said of any
> of the NSS backend.
>
> As POSIX does not list ENOENT, we can list it ourselves
> and define it how we like.
>
> I don't know how you handle errno values that are glibc
> specific, but here is the patch that enhances getgrent
> to make users aware of what ENOENT is intended to mean
> from glibc.
Thanks. I've applied. Are similar fixes also required for,
say, getpwent.3, getspent.3, and perhaps other pages
(e.g., putgrent)?
Cheers,
Michael
> Patch against master. Pleas apply.
>
> diff --git a/man3/getgrent.3 b/man3/getgrent.3
> index f49c746..02f26bd 100644
> --- a/man3/getgrent.3
> +++ b/man3/getgrent.3
> @@ -141,6 +141,11 @@ The calling process already has too many open files.
> .B ENFILE
> Too many open files in the system.
> .TP
> +.\" not in POSIX
> +.B ENOENT
> +A necessary input file cannot be found.
> +For NSS backends in glibc this indicates the backend is not correctly configured.
> +.TP
> .B ENOMEM
> .\" not in POSIX
> Insufficient memory to allocate
> ---
>
> Cheers,
> Carlos.
> .
>
--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/