> On 26 Jun 2025, at 22:49, Peter Eisentraut <pe...@eisentraut.org> wrote:
> 
> On 03.04.25 17:51, Daniel Gustafsson wrote:
>>> On 1 Apr 2025, at 22:22, Daniel Gustafsson <dan...@yesql.se> wrote:
>>> 
>>> I took another pass at this one and did a few small tweaks, so I would to 
>>> take
>>> it for another spin across CI before looking at committing it.  There are no
>>> functionality changes, only polish.
>> Committed, after another round of testing and looking.
> 
> A few more observations on this code:

Thanks for review!

> What is the meaning of this:
> 
> +   old_umask = umask(077);
> +   fd = open(conn->sslkeylogfile, O_WRONLY | O_APPEND | O_CREAT, 0600);
> +   umask(old_umask);
> 
> If open() already specifies the file mode, do we still need umask()? Maybe 
> I'm missing something.

No, I think that's a leftover from a previous version which I missed.  I can't
see that being required.

> Also, we usually use symbols for the modes.
> 
> +       libpq_append_conn_error(conn, "could not open ssl keylog file %s: %s",
> +                               conn->sslkeylogfile, pg_strerror(errno));
> 
> pg_strerror() is not thread-safe, so it shouldn't be used here. Actually, 
> pg_strerror() is not meant for direct use at all.  Probably easiest to just 
> use %m.
> 
> Also, I can't actually trigger these errors.  This call just sticks the 
> errors into the connection structure, but if the connection is otherwise 
> successful, nothing will print the error.  Maybe the best we can do is print 
> the error to stderr, like similarly in initialize_SSL().

Thats a good point, a successful connection does not inspect the errormessage.
I'll propose changes for these comments in the morning when coffee has been
had.

--
Daniel Gustafsson



Reply via email to