[PATCH] util: Don't spawn pkttyagent when stdin is not a tty

Martin Kletzander mkletzan at redhat.com
Sat Dec 11 13:27:08 UTC 2021


On Sat, Dec 11, 2021 at 02:23:11PM +0100, Martin Kletzander wrote:
>My idea was that running pkttyagent unconditionally, modulo checks that
>pkttyagent itself does to make sure it does not fail, is not going to be an
>issue turned out to be wrong.  Adding back the original check for stdin being a
>tty helps in some testing scenarios as reported by Jim Fehlig and does not
>really cause any issues.  I originally wanted it in because it also made
>pkttyagent auth work with redirected input into virsh (with a connection that
>requires polkit authentication and without a session-wide polkit tty agent,
>basically making pkttyagent necessary to succeed).  But anyone running virsh
>like that is asking for problems already anyway =)
>
>Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
>---

Of course I added a note that this would be a patch that can go in if we
figure out the real root cause, then sent it to a wrong address, then
formatted it again properly, sent it to the right address ad forgot to
add the note again 🤦

> src/util/virpolkit.c | 3 +++
> 1 file changed, 3 insertions(+)
>
>diff --git a/src/util/virpolkit.c b/src/util/virpolkit.c
>index 8970de192fe1..bb68b5a59614 100644
>--- a/src/util/virpolkit.c
>+++ b/src/util/virpolkit.c
>@@ -237,6 +237,9 @@ virPolkitAgentAvailable(void)
>     const char *termid = ctermid(NULL);
>     VIR_AUTOCLOSE fd = -1;
>
>+    if (!isatty(STDIN_FILENO))
>+        return false;
>+
>     if (!virFileIsExecutable(PKTTYAGENT))
>         return false;
>
>-- 
>2.34.1
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20211211/123a0a43/attachment-0001.sig>


More information about the libvir-list mailing list