Re: thread-safety: getpwuid_r()

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: Heikki Linnakangas <hlinnaka@iki.fi>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-09-02T07:28:21Z
Lists: pgsql-hackers
On 26.08.24 19:54, Heikki Linnakangas wrote:
> On 26/08/2024 20:38, Peter Eisentraut wrote:
>> On 24.08.24 15:55, Heikki Linnakangas wrote:
>>> Come to think of it, the pg_get_user_name() function is just a thin 
>>> wrapper around getpwuid_r(). It doesn't provide a lot of value. 
>>> Perhaps we should remove pg_get_user_name() and 
>>> pg_get_user_home_dir() altogether and call getpwuid_r() directly.
>>
>> Yeah, that seems better.  These functions are somewhat strangely 
>> designed and as you described have faulty error handling.  By calling 
>> getpwuid_r() directly, we can handle the errors better and the code 
>> becomes more transparent.  (There used to be a lot more interesting 
>> portability complications in that file, but those are long gone.)
> 
> New patch looks good to me, thanks!

committed




Commits

  1. More use of getpwuid_r() directly