On 12/24/2016 02:43 PM, G. Schlisio wrote:
>
> Am 24.12.2016 um 08:40 schrieb John Fawcett:
>> On 12/24/2016 01:19 AM, Wietse Venema wrote:
>>> John Fawcett:
>> "On success, *getpwnam_r*() and *getpwuid_r*() return zero, and set
>> /*result/ to /pwd/. If no matching password record was found, these
>> functions return 0 and store NULL in /*result/. In case of error, an
>> error number is returned, and NULL is stored in /*result/. "
>>> A zero result value mans that no error occurred; we know for certain
>>> that the user exists or does not exist.
>>>
>>> That's almost consistent with, for example, the XOPEN standard: \
>>>
>>> The getpwnam_r() function shall return zero on success or if
>>> the requested entry was not found AND NO ERROR HAS OCCURRED.
>>> If an error has occurred, an error number shall be returned to
>>> indicate the error.
>>>
>>> What bugs me is the text that follows later in that same Linux
>>> manpage:
>>>
>>> ERRORS
>>>
>>>0 or ENOENT or ESRCH or EBADF or EPERM or ...
>>> The given name or uid was not found.
>>>
>>> This text makes no sense. It is in conflict with XOPEN, and with
>>> the other quote from the Linux manpage.
>>>
>>> Wietse
>>>
>> Yes, at first I read the text under ERRORS as though it was part of the
>> standard, but then I realized that it is just stating what some
>> implementations do in practice (which is what makes no sense).
>>
>> John
> very interesting ideed. i took it to the arch mailing list [0], maybe we
> dig up there what changed recently with the glibc behaviour.
> atm the mailing list is on chrismas hibernation but that might change at
> some point.
> thank you a lot for your help and information and have a nice christmas!
>
> georg
>
Georg
I don't think there is enough evidence at the moment to say with
certainty that any change in glibc has introduced the problem, since you
were using that for a while now without seeing issues.
I'd still be interested in knowing what output the test program gives on
the affected server.
best wishes to you too.
John