XRDP TODOs - neutrinolabs/xrdp GitHub Wiki

Short term (0.9.2)

  • Enable most features by default (if configure finds the needed dependencies)
  • Provide reasonable PAM files for most distros
  • Recognize and tell the user when a password change is needed
  • Fall back to IPv4 on systems that don't support IPv6

Medium term

  • Use glib or APR as portability/convenience layer
  • Write to console only for fatal errors, log everything that goes to console now
  • Port Kerberos authentication to GSSAPI
  • Deprecate X11rdp, bring all X11rdp features to xorgxrdp
  • Use extensible message passing to communicate to xorgxrdp
  • Only show backends actually runnable by xrdp-sesman

Long term

  • Redesign login screen to allow session selection and multi-factor authentication

RAIL

  • On the client side, when a window is minimized, a minimize command is sent and in xrdp rail.c function rail_process_system_command() gets called with SC_MINIMIZE. In response XUnmapWindow() is called, triggering an UnmapNotify event, which sends a WINDOW_HIDE to the RAIL client in file xf_window.c function xf_ShowWindow(). This causes the window on the client side to be hidden and thereafter inaccessible. The server should send a WINDOW_MINIMIZED message instead. As a workaround this issue is being fixed on the client side, but requires a final fix to be on the server side