> > Date: Tue, 18 Feb 2014 17:01:24 +0100
> > From: Ingo Schwarze <[email protected]>
> >
> > > So: we need to
> > >  - clear errno in the success and "no match" cases,
> > 
> > This is incorrect and shouldn't be done.
> > When no error occurs, errno has to stay as it is.
> 
> Indeed.  POSIX explicitly says:
> 
>   "No function in this volume of POSIX.1-2008 shall set errno to zero."
> 
> The standard is slightly ambiguous on what getpwnam_r() should do, but
> the way I read it, it should not touch errno at all.  So it should
> save errno at the start of the function, and restore it just before
> return.

That is the only sane approach.

I would like to see a diff in which at least solves the non-YP cases.
The YP cases have other issues in other functions as well, that are
somewhat known..

Reply via email to