log: protect errno in log_open()
authorSergey Bugaev <bugaevc@gmail.com>
Mon, 22 Mar 2021 15:31:12 +0000 (18:31 +0300)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 23 Mar 2021 09:13:29 +0000 (10:13 +0100)
commit0d9b74ad25c2def92c8e8139f50087b4e64c8d83
treec09039b6c8cd9091ea27e9a22a159c243d3704df
parent8a43177d80c85e9cb8837544a0ac3132e1461ba6
log: protect errno in log_open()

Commit 0b1f3c768ce1bd1490a5e53f539976dcef8ca765 has introduced log_open()
calls after exec fails post-fork. However, the log_open() call itself could
change the value of errno, which, for me, manifested in:

$ coredumpctl gdb
...
Failed to invoke gdb: Success

Fix this by using PROTECT_ERRNO in log_open().

(cherry picked from commit 0e557eef37c9ebcc8f5c19fc6fc44b6fd617cc5d)
(cherry picked from commit dabf9f2109e5b8cc26d9e0d9188deebff3edf8c2)
src/basic/log.c