Missing servers: xmds wmds mmds mdsx mdsw mdsm hwgamma swgamma hwcursor swcursor cursorgamma coopgamma host remote fb kbd keytrans kkbdrate rat compositor crtc seat dri drag cursorshadow kill focus colour state screensaver Extra servers: kbdbind ratbind gestures dcvs decorator tile stack workspace tray retro-crt kbd2rat multikey iclipboard keystick idrag posmem nest mds Missing commands: reg clip screenshot slay chvt conf Command line interface for reconfiguring servers Missing protocols: drag kkbdrate keytrans multikey rat cursor colour state focus screensaver compositor crtc presentation network decorator workspace embed Embedding windows inside other windows such as a status icon tray Need testing: registry clipboard kkbd kkbd, on a SPARC vt errno is defined as a error_t {typedef of int} on Hurd, use this convention Fast lanes Optimise use of mutexe by replace them with rwlocks Listen for `Command: reregister` Register protocols Make it possible to forbid unauthorised servers for listening, needed for secure password fields I guess we can let servers create their own abstract sockets, report them to mdsinitrc and let mdsinitrc export appropriate environment variables. A facility is needed to lookup available compose sequences to any character, it would be useful in character map programs so one can easier learn the compose sequences for character that one uses often Servers should be stored in LIBEXECDIR. Implement reconnect_to_display() src/libmdsserver/config.h should be sed:ed rather than use #ifndef