All of lore.kernel.org
 help / color / mirror / Atom feed
* mpv and kitty terminal emulator on Wayland
@ 2026-07-25  6:35 Russell Coker
  2026-07-25  7:03 ` Dominick Grift
  0 siblings, 1 reply; 2+ messages in thread
From: Russell Coker @ 2026-07-25  6:35 UTC (permalink / raw)
  To: selinux-refpolicy

When a paste operation is triggered (middle click on video window) mpv is 
having it's file handle sent to kitty, presumably by the wayland system (KDE 
in this case).

Denying this access can cause the source of the paste data (kitty in this 
case) to crash.  Here's the logs for kitty:

type=AVC msg=audit(1784959694.829:20780): avc:  denied  { use } for  pid=4712 
comm="kitty" path="pipe:[150412]" dev="pipefs" ino=150412 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fd permissive=0
type=AVC msg=audit(1784959694.861:20787): avc:  denied  { use } for  pid=4282 
comm="QThread" path="pipe:[149316]" dev="pipefs" ino=149316 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fd permissive=0
type=AVC msg=audit(1784959851.794:22406): avc:  denied  { use } for  pid=17365 
comm="kitty" path="pipe:[166960]" dev="pipefs" ino=166960 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fd permissive=0
type=AVC msg=audit(1784959851.822:22409): avc:  denied  { use } for  pid=16312 
comm="WaylandEventThr" path="pipe:[164719]" dev="pipefs" ino=164719 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fd permissive=0
type=AVC msg=audit(1784959876.318:22422): avc:  denied  { use } for  pid=10585 
comm="kitty" path="pipe:[165833]" dev="pipefs" ino=165833 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fd permissive=0

Here's the errors from Kitty:
file descriptor expected, object (52), message send(sh)
[7.945] [glfw error 65544]: Wayland: fatal display error: Invalid argument

Here's the errors from Konsole:
file descriptor expected, object (66), message send(sh)
The Wayland connection experienced a fatal error: Invalid argument

Here's the logs when the fd use is allowed:

type=AVC msg=audit(1784960913.928:24443): avc:  denied  { write } for  
pid=25743 comm="WaylandEventThr" path="pipe:[188207]" dev="pipefs" ino=188207 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fifo_file permissive=0
type=AVC msg=audit(1784960913.964:24444): avc:  denied  { write } for  
pid=24950 comm="QThread" path="pipe:[190614]" dev="pipefs" ino=190614 
scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
s0:c0.c1023 tclass=fifo_file permissive=0

So it looks that for Wayland to work in the expected manner without programs 
crashing all the time we need to allow every Wayland client domain to use a fd 
from every other domain and to have fifo_file rw_inherited_fifo_file_perms 
access.

Would it be possible to have a SE Linux aware clipboard program to mediate 
this?

-- 
My Main Blog         http://etbe.coker.com.au/
My Documents Blog    http://doc.coker.com.au/




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: mpv and kitty terminal emulator on Wayland
  2026-07-25  6:35 mpv and kitty terminal emulator on Wayland Russell Coker
@ 2026-07-25  7:03 ` Dominick Grift
  0 siblings, 0 replies; 2+ messages in thread
From: Dominick Grift @ 2026-07-25  7:03 UTC (permalink / raw)
  To: Russell Coker; +Cc: selinux-refpolicy

Russell Coker <russell@coker.com.au> writes:

> When a paste operation is triggered (middle click on video window) mpv is 
> having it's file handle sent to kitty, presumably by the wayland system (KDE 
> in this case).
>
> Denying this access can cause the source of the paste data (kitty in this 
> case) to crash.  Here's the logs for kitty:
>
> type=AVC msg=audit(1784959694.829:20780): avc:  denied  { use } for  pid=4712 
> comm="kitty" path="pipe:[150412]" dev="pipefs" ino=150412 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fd permissive=0
> type=AVC msg=audit(1784959694.861:20787): avc:  denied  { use } for  pid=4282 
> comm="QThread" path="pipe:[149316]" dev="pipefs" ino=149316 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fd permissive=0
> type=AVC msg=audit(1784959851.794:22406): avc:  denied  { use } for  pid=17365 
> comm="kitty" path="pipe:[166960]" dev="pipefs" ino=166960 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fd permissive=0
> type=AVC msg=audit(1784959851.822:22409): avc:  denied  { use } for  pid=16312 
> comm="WaylandEventThr" path="pipe:[164719]" dev="pipefs" ino=164719 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fd permissive=0
> type=AVC msg=audit(1784959876.318:22422): avc:  denied  { use } for  pid=10585 
> comm="kitty" path="pipe:[165833]" dev="pipefs" ino=165833 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fd permissive=0
>
> Here's the errors from Kitty:
> file descriptor expected, object (52), message send(sh)
> [7.945] [glfw error 65544]: Wayland: fatal display error: Invalid argument
>
> Here's the errors from Konsole:
> file descriptor expected, object (66), message send(sh)
> The Wayland connection experienced a fatal error: Invalid argument
>
> Here's the logs when the fd use is allowed:
>
> type=AVC msg=audit(1784960913.928:24443): avc:  denied  { write } for  
> pid=25743 comm="WaylandEventThr" path="pipe:[188207]" dev="pipefs" ino=188207 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fifo_file permissive=0
> type=AVC msg=audit(1784960913.964:24444): avc:  denied  { write } for  
> pid=24950 comm="QThread" path="pipe:[190614]" dev="pipefs" ino=190614 
> scontext=etbe:user_r:user_t:s0-s0:c0.c1023 tcontext=etbe:user_r:mplayer_t:s0-
> s0:c0.c1023 tclass=fifo_file permissive=0
>
> So it looks that for Wayland to work in the expected manner without programs 
> crashing all the time we need to allow every Wayland client domain to use a fd 
> from every other domain and to have fifo_file rw_inherited_fifo_file_perms 
> access.

According to what I have write_inherited_fifo_file_perms might be
enough:

# sesearch -A -s wlroots.client.typeattr -t wlroots.client.typeattr -ds
allow wlroots.client.typeattr wlroots.client.typeattr:fd use;
allow wlroots.client.typeattr wlroots.client.typeattr:fifo_file { append
getattr ioctl lock write };


>
> Would it be possible to have a SE Linux aware clipboard program to mediate 
> this?

-- 
gpg --auto-key-locate clear,nodefault,wkd --locate-external-keys dominick.grift@defensec.nl
Key fingerprint = FCD2 3660 5D6B 9D27 7FC6  E0FF DA7E 521F 10F6 4098
Dominick Grift
Mastodon: @kcinimod@defensec.nl

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-07-25  7:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-25  6:35 mpv and kitty terminal emulator on Wayland Russell Coker
2026-07-25  7:03 ` Dominick Grift

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.