Re: git: 77f72c463b90 - 2024Q1 - x11-servers/xwayland-devel: backport recent secfixes
Date: Sat, 06 Apr 2024 10:01:54 UTC
Emmanuel Vadot <manu@bidouilliste.com> writes: > On Thu, 04 Apr 2024 15:48:55 +0200 > Jan Beich <jbeich@FreeBSD.org> wrote: > >> Emmanuel Vadot <manu@bidouilliste.com> writes: >> >> >> but also introduced a number of regressions that >> >> don't exist in my port, all of which were documented in my reviews. >> > >> > What regressions ? I'm using xwayland for more than a year on my >> > desktop instead of -devel and haven't seen a problem. >> >> Try diff xwayland{,-devel}/Makefile: >> - Missing XSECURITY (ssh -X vs. ssh -Y; xorg-server parity per bug 221984) > > I admit that I'm a bit lost on this one, I did some test and here is > what I found : > > - Using sway and xwayland (so without xcsecurity enabled) I can't ssh > -X to a xorg host and run applications (DISPLAY is not set), but I can > ssh -Y fine Works fine here: # Prepare by removing existing permissions $ rm ~/.Xauthority $ ssh test@jail rm \~/.Xauthority # x11-servers/xwayland-devel $ ssh -X test@jail xeyes /usr/local/bin/xauth: file /home/test/.Xauthority does not exist Xlib: extension "XInputExtension" missing on display "localhost:10.0". ^C # x11-servers/xwayland $ ssh -X test@jail xeyes Warning: untrusted X11 forwarding setup failed: xauth key data not generated Error: Can't open display: Alternatively, SECURITY extension can be tested locally: $ xauth generate $DISPLAY . untrusted && xeyes xauth: file /home/jbeich/.Xauthority does not exist Xlib: extension "XInputExtension" missing on display ":0". ^C Curiously, wlroots starts Xwayland without -auth argument unlike others. https://gitlab.gnome.org/GNOME/mutter/-/commit/a8984a81c2e8 https://invent.kde.org/plasma/kwin/-/commit/335d9c41925d > So what I did next was to recompile xorg-server with xcsecurity > set to false. And to my surprise ssh -X from a xorg host to the one > with the modified xorg-server still worked. Did you run the modified xorg-server locally? ssh -X doesn't use xorg-server on the remote host, where sshd server is running. > xcsecurity is disabled by default in xorg-server upstream (in meson) > and I think that we should do the same (granted that XACE works > correctly). From https://gitlab.freedesktop.org/xorg/xserver/-/blob/c93c2e7718bc/Xext/Makefile.am#L58-59 # X-ACE extension: provides hooks for building security policy extensions # like XC-Security, X-SELinux & XTSol X-SELinux is Linux-only. XTSol is Solaris-only. Everyone else is left with the legacy XC-Security (trusted/untrusted) or nothing.