ChanServ changed the topic of #wayland to: https://wayland.freedesktop.org | Discussion about the Wayland protocol and its implementations, plus libinput | register your nick to speak
ppascher has quit [Ping timeout: 480 seconds]
fmuellner has quit [Ping timeout: 480 seconds]
duxsco has quit [Quit: Leaving]
MarcusBritanicus[m] has quit [Ping timeout: 480 seconds]
DrNick has quit [Ping timeout: 480 seconds]
DemiMarieObenour[m] has quit [Ping timeout: 480 seconds]
i509VCB has quit [Ping timeout: 480 seconds]
robertmader[m] has quit [Ping timeout: 480 seconds]
psydroid[m] has quit [Ping timeout: 480 seconds]
pitsch[m] has quit [Ping timeout: 480 seconds]
bluepenquin has quit [Ping timeout: 480 seconds]
nielsdg has quit [Ping timeout: 480 seconds]
ujineli[m] has quit [Ping timeout: 480 seconds]
popeishere[m] has quit [Ping timeout: 480 seconds]
mooff[m] has quit [Ping timeout: 480 seconds]
danburd[m] has quit [Ping timeout: 480 seconds]
aplund[m] has quit [Ping timeout: 480 seconds]
toggleton[m] has quit [Ping timeout: 480 seconds]
flyingketh[m] has quit [Ping timeout: 480 seconds]
idkrn[m] has quit [Ping timeout: 480 seconds]
Eighth_Doctor has quit [Ping timeout: 480 seconds]
go4godvin has quit [Ping timeout: 480 seconds]
inkbottle[m] has quit [Ping timeout: 480 seconds]
doras has quit [Ping timeout: 480 seconds]
GeorgesStavracasfeaneron[m] has quit [Ping timeout: 480 seconds]
ozwald1[m]1 has quit [Ping timeout: 480 seconds]
heftig has quit [Ping timeout: 480 seconds]
deknos82[m] has quit [Ping timeout: 480 seconds]
jryans has quit [Ping timeout: 480 seconds]
anomalous_creator[m] has quit [Ping timeout: 480 seconds]
MatrixTravelerbot[m] has quit [Ping timeout: 480 seconds]
[old]freshgumbubbles[m] has quit [Ping timeout: 480 seconds]
RomanGilg[m] has quit [Ping timeout: 480 seconds]
cmeissl[m] has quit [Ping timeout: 480 seconds]
junglerobba[m] has quit [Ping timeout: 480 seconds]
bdaase[m] has quit [Ping timeout: 480 seconds]
apol[m] has quit [Ping timeout: 480 seconds]
Sumera[m] has quit [Ping timeout: 480 seconds]
feta has quit [Ping timeout: 480 seconds]
hex[m]1 has quit [Ping timeout: 480 seconds]
Levans has quit [Ping timeout: 480 seconds]
varlad[m] has quit [Ping timeout: 480 seconds]
MA[m] has quit [Ping timeout: 480 seconds]
FbioPacheco[m] has quit [Ping timeout: 480 seconds]
japchae[m] has quit [Ping timeout: 480 seconds]
digitalfavshetheyname[m] has quit [Ping timeout: 480 seconds]
ttancos[m] has quit [Ping timeout: 480 seconds]
zaibon[m] has quit [Ping timeout: 480 seconds]
Shimmy[m] has quit [Ping timeout: 480 seconds]
arichardson[m] has quit [Ping timeout: 480 seconds]
Poly[m] has quit [Ping timeout: 480 seconds]
davidre has quit [Ping timeout: 480 seconds]
edrex[m] has quit [Ping timeout: 480 seconds]
botiapa[m] has quit [Ping timeout: 480 seconds]
zamundaaa[m] has quit [Ping timeout: 480 seconds]
gnustomp[m] has quit [Ping timeout: 480 seconds]
YaLTeR[m] has quit [Ping timeout: 480 seconds]
niecoinny[m] has quit [Ping timeout: 480 seconds]
ashketchum[m] has quit [Ping timeout: 480 seconds]
shadowninja55[m] has quit [Ping timeout: 480 seconds]
vchernin[m] has quit [Ping timeout: 480 seconds]
rails[m] has quit [Ping timeout: 480 seconds]
teh1[m] has quit [Ping timeout: 480 seconds]
smasher_tati[m] has quit [Ping timeout: 480 seconds]
Kelseyjgilbert[m] has quit [Ping timeout: 480 seconds]
emilio[m] has quit [Ping timeout: 480 seconds]
ammen99[m] has quit [Ping timeout: 480 seconds]
Mershl[m] has quit [Ping timeout: 480 seconds]
hasebastian[m] has quit [Ping timeout: 480 seconds]
louipcm has quit [Ping timeout: 480 seconds]
Guest40 has quit [Ping timeout: 480 seconds]
halfline[m] has quit [Ping timeout: 480 seconds]
heeen[m] has quit [Ping timeout: 480 seconds]
jmariondev[m] has quit [Ping timeout: 480 seconds]
rubo_[m] has quit [Ping timeout: 480 seconds]
pac85[m] has quit [Ping timeout: 480 seconds]
cousinofthor[m] has quit [Ping timeout: 480 seconds]
unrelentingtech has quit [Ping timeout: 480 seconds]
cb5r[m] has quit [Ping timeout: 480 seconds]
AndrewAylett[m] has quit [Ping timeout: 480 seconds]
d_ed[m] has quit [Ping timeout: 480 seconds]
nazarewk[m] has quit [Ping timeout: 480 seconds]
ongy[m] has quit [Ping timeout: 480 seconds]
JosExpsito[m] has quit [Ping timeout: 480 seconds]
GrahamPerrin[m] has quit [Ping timeout: 480 seconds]
Nico has quit [Ping timeout: 480 seconds]
hergertme has quit []
hergertme has joined #wayland
duxsco has joined #wayland
columbarius has joined #wayland
co1umbarius has quit [Ping timeout: 480 seconds]
MarcusBritanicus[m] has joined #wayland
robertmader[m] has joined #wayland
lxsameer3 has quit [Ping timeout: 480 seconds]
duxsco has quit [Quit: Leaving]
DrNick has joined #wayland
DrNick is now known as Guest449
rasterman has quit [Quit: Gettin' stinky!]
DemiMarieObenour[m] has joined #wayland
Company has quit [Quit: Leaving]
bluepenquin has joined #wayland
bluepenquin is now known as Guest454
Moprius has quit [Ping timeout: 480 seconds]
popeishere[m] has joined #wayland
mooff[m] has joined #wayland
glennk has quit [Ping timeout: 480 seconds]
glennk has joined #wayland
nielsdg has joined #wayland
aplund[m] has joined #wayland
Eighth_Doctor has joined #wayland
idkrn[m] has joined #wayland
danburd[m] has joined #wayland
bindu has joined #wayland
cool110_ has quit [Remote host closed the connection]
cool110 has joined #wayland
ujineli[m] has joined #wayland
flyingketh[m] has joined #wayland
dcz has joined #wayland
junglerobba[m] has joined #wayland
tzimmermann has joined #wayland
caveman has joined #wayland
jgrulich has joined #wayland
mvlad has joined #wayland
toggleton[m] has joined #wayland
hardening has joined #wayland
anarsoul is now known as anarsoul|2
anarsoul|2 is now known as anarsoul
feta has joined #wayland
rv1sr has joined #wayland
dcz has quit [Ping timeout: 480 seconds]
manuel1985 has joined #wayland
[old]freshgumbubbles[m] has joined #wayland
apol[m] has joined #wayland
bdaase[m] has joined #wayland
RomanGilg[m] has joined #wayland
cmeissl[m] has joined #wayland
Sumera[m] has joined #wayland
i509VCB has joined #wayland
caveman has quit [Ping timeout: 480 seconds]
<wlb> wayland-protocols Issue #92 opened by () Todo article: Caveats of sending file descriptors over a security boundary https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/92
<emersion> pq, "Opening a read-only file description and sending that may not be a reliable way to stop the remote side from writing"
<emersion> how is this not reliable?
danvet has joined #wayland
Lucretia-backup has quit []
Lucretia has joined #wayland
jmabr has joined #wayland
jgrulich has quit [Remote host closed the connection]
jgrulich has joined #wayland
dcz has joined #wayland
Sachiel has quit [Ping timeout: 480 seconds]
Sachiel has joined #wayland
hergertme has quit [Ping timeout: 480 seconds]
hergertme has joined #wayland
lxsameer3 has joined #wayland
bittin has joined #wayland
bittin has quit [Remote host closed the connection]
<pq> emersion, ISTR something about opening /proc/<getpid()>/fd/* so I'm not sure a read-only fd is safe.
<pq> since those "symlinks" are actually special and the kernel does magic allowing you to open more than regular files
<pq> or more than files that exist on the file system
<emersion> eh i really hope this doesn't work
<pq> MrCooper, the old parent surface buffer becomes visible, until the new parent surface buffer becomes ready (assuming the compositor does not use a buffer until it's ready).
<pq> emersion, I don't know that it doesn't work, so I'm cautious :-)
<pq> I also don't know if opening such thing from /proc is equivalent to open() or dup()
<pq> MrCooper, the main point of "immediate" is that sub-surface destruction does not pend on a wl_surface.commit on the parent or any other wl_surface.
<pq> MrCooper, it's not literally "immediate", because when a client sends that request, it takes time for the compositor to see thta request.
<pq> MrCooper, I also assume that your "new output frame" means a new composition result, and not a new scanout cycle in display hardware.
<emersion> pq, iirc dup()
<emersion> oh no, i may misremember
pnowack has joined #wayland
<dottedmag> Opening /proc/self/fd/<fd> with O_RDWR indeed works: https://paste.debian.net/1240656
<daniels> heh, beat me to it https://paste.centos.org/view/fc50ef3c
<emersion> damn
<dottedmag> passing fds is another "very cute and useful... minefield", as it turns out
xantoz has joined #wayland
xantoz has quit []
rasterman has joined #wayland
xantoz has joined #wayland
<qyliss> even if the other side doesn't have write access to that file?
<emersion> trying to find out from the sourc code
<qyliss> wow it really does work
<emersion> maybe it helps to zero-chmod?
<emersion> after opening
<emersion> hm
<emersion> but then can't rm the file
<qyliss> oh, wait, i messed up my test somehow
<emersion> there is proc_fd_access_allowed which checks for ptrace permissions
<emersion> gets a task from an inode, checks that the task can be ptrace'd
<qyliss> I tried: rm -f /tmp/test; touch /tmp/test; redirfd -r 3 /tmp/test s6-applyuidgid -u 1000 -g 999 redirfd -w 1 /proc/self/fd/3 echo test
<qyliss> (last command opens /tmp/test for reading on descriptor 3, setuids, then tries opening for writing on descriptor 1)
<qyliss> and got redirfd: fatal: unable to open /proc/self/fd/3: Permission denied
<emersion> maybe chmod after rm if that's possible
<emersion> (fchmod)
enick_58 has joined #wayland
<qyliss> so I think it does check the process's permissions when opening /proc/self/fd/*
<qyliss> (unless fd sharing through ancillary data works any differently, but i'd be very surprised if it did)
<emersion> i'm typing a PoC wayland client
<emersion> to check in real-world scenario
<emersion> also i think flatpak isolates with a uid namespace>
<emersion> ?
shadowninja55[m] has joined #wayland
<emersion> bleh, it does work
smasher_tati[m] has joined #wayland
<pq> boo.
ammen99[m] has joined #wayland
fmuellner has joined #wayland
emilio[m] has joined #wayland
<pq> wonder if forbidding ptrace via e.g. some security module would forbid that too
Kelseyjgilbert[m] has joined #wayland
rails[m] has joined #wayland
<pq> if you don't forbid ptracing the compositor...
MrCooper has quit [Remote host closed the connection]
MrCooper has joined #wayland
<qyliss> emersion: was there a privilege boundary involved, or was it just the typical case of client and compositor running as the same user?
pnowack has quit [Quit: pnowack]
<emersion> it even works in a user namespacxe
<emersion> namespace*
devilhorns has joined #wayland
<pq> I'll pass the next round in that rollercoaster, thanks.
devilhorns has quit [Remote host closed the connection]
<qyliss> I wonder if it works with O_TMPFILE
<emersion> ahah now i've corrupted my session's keymap
* emersion reboots
puck_ has joined #wayland
devilhorns has joined #wayland
flacks has quit [Quit: Quitter]
<daniels> emersion: yeah, this is why we seal the keymap fd
flacks has joined #wayland
<emersion> hm right memfd + seal works in this case
<emersion> doesn't work for the NONBLOCK stuff
<emersion> i guess /proc/self/fd/ does help for the NONBLOCK stuff
<emersion> since the FD flags will be separate
<pq> you mean, instead of using /proc/self/fd/ as an attack vector, you use it to isolate yourself from the fd sender?
<emersion> yea
<pq> haha, I'm not sure if that's clever or too clever
<pq> I mean, one option might be to deny all access to /proc/self/fd at kernel level
<dottedmag> Hmm, can compositor actually do reopen all file descriptors via /proc/self/fd before passing them between the clients?
<pq> but not if you need it for proper operation
<dottedmag> is there anything in protocol that requires synchronized offsets/flags for proper operation?
halfline[m] has joined #wayland
<pq> protocol no, but the code operating on an fd very easily makes assumptions about those
<kennylevinsen> clients have been confused about the keymap fd in wlroots. We share it between processes, and some clients were read()'ing the entire thing
<pq> like that ^
<pq> using read() instead of pread()
<dottedmag> so giving every client a separate copy would help, right?
<emersion> some clients also were checking for RDWR
<pq> yes, and eat memory
<emersion> on the keymap
<emersion> (chromium)
<emersion> but that's fixed now
<pq> or, separate copy of what?
<dottedmag> of file _description_
<pq> sure, if you can make copies
<pq> I think that requires you to have file on the file system that you can open() to create those copies
<emersion> yeah, so that doesn't work with plain pipe(2)
<pq> pipes can't be multi-shared anyway
<pq> memfd though...
jmdaemon has quit [Ping timeout: 480 seconds]
teh1[m] has joined #wayland
jgrulich has quit [Remote host closed the connection]
jgrulich has joined #wayland
MajorBiscuit has joined #wayland
<dottedmag> Reopening pipe works for me (creates an unrelated file description?) https://paste.debian.net/1240672 https://paste.debian.net/1240673
<dottedmag> maybe I'm doing something horribly wrong though
MajorBiscuit has quit [Quit: WeeChat 3.4]
cool110 has quit [Write error: connection closed]
cool110 has joined #wayland
louipcm has joined #wayland
bittin has joined #wayland
vchernin[m] has joined #wayland
hasebastian[m] has joined #wayland
duxsco has joined #wayland
<wlb> weston Issue #614 closed \o/ (Weston does not use scanout for weston-simple-dmabuf-feedback on AMD Gen >= 9 https://gitlab.freedesktop.org/wayland/weston/-/issues/614)
<wlb> weston/main: Robert Mader * backend-drm: Add failure reasons for failing gbm_bo_import https://gitlab.freedesktop.org/wayland/weston/commit/29d480813ad6 libweston/backend-drm/ drm-internal.h fb.c state-propose.c
<wlb> weston/main: Robert Mader * clients/simple-dmabuf-feedback: use time instead of redraws https://gitlab.freedesktop.org/wayland/weston/commit/34f7e01c2bb2 clients/simple-dmabuf-feedback.c
<wlb> weston/main: Robert Mader * libweston/linux-dmabuf: create surface feedback on demand https://gitlab.freedesktop.org/wayland/weston/commit/53a221ccaaaa libweston/ compositor.c linux-dmabuf.c
<wlb> weston Merge request !852 merged \o/ (backend-drm: Add failure reasons for failing gbm_bo_import https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/852)
reillybrogan has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
reillybrogan has joined #wayland
Guest454 is now known as bluepenquin
Company has joined #wayland
Moprius has joined #wayland
Azem has joined #wayland
Mershl[m] has joined #wayland
caveman has joined #wayland
<wlb> weston Merge request !859 opened by () Draft: desktop-shell: Do no leak weston_curtain when destroying the view https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/859
pnowack has joined #wayland
pitsch[m] has joined #wayland
Nico has joined #wayland
<wlb> weston Merge request !860 opened by () noop-renderer: Remove volatile and use compiler attribute https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/860
bittin has quit [Remote host closed the connection]
ppascher has joined #wayland
bittin has joined #wayland
duxsco has quit [Remote host closed the connection]
GrahamPerrin[m] has joined #wayland
caveman has quit [Ping timeout: 480 seconds]
fmuellner_ has joined #wayland
manuel1985 has quit []
c7s has quit [Ping timeout: 480 seconds]
fmuellner has quit [Ping timeout: 480 seconds]
<wlb> weston Merge request !861 opened by () Silence compiler warnings https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/861
psydroid[m] has joined #wayland
Guest513 has joined #wayland
fmuellner has joined #wayland
fmuellner_ has quit [Ping timeout: 480 seconds]
rgallaispou has quit [Quit: Leaving.]
rgallaispou has joined #wayland
duxsco has joined #wayland
heftig has joined #wayland
pnowack has quit [Quit: pnowack]
jekstrand has quit [Remote host closed the connection]
jekstrand has joined #wayland
soreau has quit [Ping timeout: 480 seconds]
ozwald1[m]1 has joined #wayland
PuercoPop has quit [Remote host closed the connection]
___nick___ has joined #wayland
jmabr has quit [Quit: Leaving]
___nick___ has quit []
maxzor has joined #wayland
___nick___ has joined #wayland
rgallaispou has left #wayland [#wayland]
<wlb> wayland Merge request !240 opened by () server: add wl_global_get_version https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/240 [IPC library]
lxsameer3 has quit [Ping timeout: 480 seconds]
reillybrogan_ has joined #wayland
deknos82[m] has joined #wayland
reillybrogan has quit [Ping timeout: 480 seconds]
duxco has joined #wayland
eroc1990 has quit [Ping timeout: 480 seconds]
GeorgesStavracasfeaneron[m] has joined #wayland
duxsco has quit [Ping timeout: 480 seconds]
<wlb> weston Merge request !862 opened by () Draft: clients/simple-dmabuf-*: Use gbm_bo_create_with_modifiers2 https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/862
eroc1990 has joined #wayland
<wlb> wayland Merge request !241 opened by () server: check visibility before sending global/global_remove https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/241 [IPC library]
devilhorns has quit []
jekstrand has quit [Ping timeout: 480 seconds]
jgrulich has quit [Remote host closed the connection]
soreau has joined #wayland
<emersion> found a fix for that /proc/self/fd/ issue https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3548
<qyliss> ah, nice one
<wlb> wayland-protocols Issue #93 opened by () Problems related to the lack of GPU preemption https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/93
inkbottle[m] has joined #wayland
MatrixTravelerbot[m] has joined #wayland
jmabr has joined #wayland
gfb has quit []
<wlb> wayland-protocols Issue #94 opened by () Tray icon protocol https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/94
rasterman has quit [Remote host closed the connection]
rasterman has joined #wayland
duxco has quit [Remote host closed the connection]
duxsco has joined #wayland
fmuellner has quit [Ping timeout: 480 seconds]
lsd|2 has joined #wayland
lsd|2|2 has joined #wayland
lsd|2|2 has quit []
___nick___ has quit []
___nick___ has joined #wayland
jryans has joined #wayland
jekstrand has joined #wayland
jekstrand is now known as Guest534
jekstrand has joined #wayland
Guest534 has quit []
jekstrand has quit []
jekstrand has joined #wayland
lsd|2 has quit []
mvlad has quit [Remote host closed the connection]
ashketchum[m] has joined #wayland
duxsco has quit [Quit: Leaving]
duxsco has joined #wayland
niecoinny[m] has joined #wayland
rasterman has quit [Quit: Gettin' stinky!]
___nick___ has quit [Ping timeout: 480 seconds]
ttancos[m] has joined #wayland
zaibon[m] has joined #wayland
neonking has quit [Remote host closed the connection]
jmabr has quit [Quit: Leaving]
jmabr has joined #wayland
jmabr has quit []
hex[m]1 has joined #wayland
fmuellner has joined #wayland
arichardson[m] has joined #wayland
Shimmy[m] has joined #wayland
botiapa[m] has joined #wayland
edrex[m] has joined #wayland
davidre has joined #wayland
YaLTeR[m] has joined #wayland
doras has joined #wayland
Poly[m] has joined #wayland
rasterman has joined #wayland
danvet has quit [Ping timeout: 480 seconds]
lanodan has quit [Quit: WeeChat 3.4.1]
Moprius_ has joined #wayland
lanodan has joined #wayland
Moprius has quit [Ping timeout: 480 seconds]
rv1sr has quit []
Moprius_ has quit []
anomalous_creator[m] has joined #wayland
dcz_ has joined #wayland
dcz has quit [Read error: Connection reset by peer]
lxsameer3 has joined #wayland
dcz_ has quit [Ping timeout: 480 seconds]
lxsameer3 has quit [Ping timeout: 480 seconds]
hardening has quit [Ping timeout: 480 seconds]
zebrag has joined #wayland
duxsco has quit [Quit: Leaving]
duxsco has joined #wayland
Azem has quit [Ping timeout: 480 seconds]
anarsoul|2 has joined #wayland
anarsoul has quit [Read error: Connection reset by peer]
ongy[m] has joined #wayland
rasterman has quit [Quit: Gettin' stinky!]
anarsoul|2 is now known as anarsoul
duxsco has quit [Quit: Leaving]
duxsco has joined #wayland
tzimmermann_ has joined #wayland