Ahh news...

2.20.11 Stuff:

- No longer print invalid encoded strings since this can causemaster the user's 
  password to be logged in the syslog if it contains invalid characters
  and if MDM debug is enabled.  Fixes bug #571846.

- Fix call to g_markup_printf_escaped so NULL strings are not passed in.

- Fix the login GUI dialog that asks the user if they want to change their
  default session when the one in the user's .dmrc file is not installed on
  the system.

- Switch buttons "Make Default" and "Just For This Session" for better
  usability.  Fixes bug #597661.

- On Solaris, MDM now configure favors the Xfree Xinerama interfaces over 
  the obsolete Solaris specific interfaces.  This ensures that Xinerama
  works on OpenSolaris where Xfree should be used, and also on Solaris 10
  where the Solaris specific interfaces should be used.  Fixes bug #580060.

2.20.10 Stuff:

- Ensure that gid/egid are set to 0 when running the Init, PostLogin,
  PreSession, and PostSession scripts.  This ensures that all scripts are
  run with consistent permissions.  (Brian Cameron)

- Ensure that the DISPLAY environment variable is never cleared upon changing
  language.  It is important for some PAM modules to have the DISPLAY variable
  available.  (Brian Cameron)

- Improve the way that keycode values are initialized in the keymouselistener
  gesture listener.  Using Xorg 1.5 the keycode initialization code does not
  always work if XKB is not initialized by the time the login GUI starts.
  So the gesture listener now checks if the initialization failed and 
  reinitializes upon keypress if there was a failure.  (Brian Cameron)

- Enhance mdm-ssh-session so that the port value can be specified when doing
  a remote ssh connection.  (Thomas Bechtold)

- Fix double-free issue and provide better error reporting when the command
  specified by mdmdynamic can not be parsed.  (Chris Wilson, Brian Cameron)

- Correct how the host variable is freed in mdm_xdmcp_handle_message so it
  is not freed before it is last used.  (Brian Cameron)

- Make sure that pwent gets set before calling audit_fail_login, otherwise
  failed audit records are not set properly.  (Brian Cameron)

- Avoid printing NULL strings in the slave daemon.  (Brian Cameron)

- Backout Solaris specific code from the Xsession script.  This code was moved
  to /etc/X11/xinit/xinitrc.d scripts, which is a better place to store such
  distro specific code than in the MDM module.  (Takao Fujiwara)

- Set default PRIO values properly on Solaris.  (Brian Cameron)

- Improve Solaris SDTLOGIN logic so that the "/var/dt" directory gets created
  if it is missing.  (Brian Cameron)

- Use g_remove instead of g_unlink when removing directories since it is
  safer.  (Brian Cameron)

- Translation updates (\303\205smund Skj\303\246veland)

2.20.9 Stuff:

- Fix processing of configuration variables in MDM's cleanup function so
  that configuration options aren't checked after they are freed.  (Brian
  Cameron)

- Fix for underquoted strings in comparisons in the Init script.  (Pacho
  Ramos)

- Update docs so that the PamStack configuration option is explained.
  (Brian Cameron)

- Correct processing of CONSOLE and PASSREQ /etc/default/login parameters
  so that they are checked each time a user logs in, and the most recent
  setting is used.  Thus, if the value is changed, MDM honors it immediately.
  (Brian Cameron)

- Trusted Solaris integration now supports multilabel session entires.
  (Stephen Browne)

- Fix so that the mdm_ensure_sanity function is non-functional on Solaris.
  This function sets file permissions on sockets which are inappropriate o
  Solaris.  (Brian Cameron)

- When using the Solaris ZFS filesystem, the ACL's are now properly set
  so that the "mdm" user has access to the sound device, so text-to-speech
  can work.  (Brian Cameron)

- Fix for Solaris fbconsole launching code so that fbconsole is killed when
  the user logs out.  (Brian Cameron)

- Use bourne-shell syntax in config/Xsession.solaris which is more portable.
  (Takao Fujiwara)

- Translation updates (Djihed Afifi, Pema Geyleg, Kenneth Nielsen, Mugurel
  Tudor, Changwoo Ryu)

2.20.8 Stuff:

- Improve mdm_final_cleanup so that the slave daemon exits after
  receiving a shutdown or reboot event, and after completing all
  cleanup.  This further fixes bug #517526. which was causing MDM
  to crash on reboot or shutdown. (Josselin Mouette)

- Fix broken check in configure for TCP wrappers.  Fixes bug #548676.
  (Stanislav Brabec and Brian Cameron)

- Correct memory leak in SELinux code.  (Julien Cristau)

- Use g_strdup when copying strings in mdmchooser to avoid a
  crash.  See bug #544730.  (Matthias Crochner and Brian Cameron)

- Ignore ENXIO when processing ioctl since some distros, such as
  FreeBSD, yields ENXIO for non-IP/non-configured interfaces.
  Fixes bug #544790.  (Volker Stolz)

- Prevent a negative value when processing SVG images in the
  mdmgreeter themes.  (Pascal Brochart)

- Add Kazakh language to locale.alias.

- On Solaris, minor fix to Xsession script so that input methods
  work.

- On Solaris, no longer use ctrun for SMF integration, and instead
  manage SMF so that when the slave daemon is forked, it is spawned
  in a separate service contract.  This ensures that the user session
  all MDM GUI programs, and the PAM interaction all happen in the
  user service contract.  This helps to ensure that if the Xserver
  crashes, it does not cause the MDM service to restart.  (Brian
  Cameron)

- On Solaris fbconsole is called with the "-n" argument to avoid
  race conditions with XMDCP remote sessions.  (Brian Cameron)

- Translation updates (Jorge Gonzalez, Alexander Shopov)

2.20.7 Stuff:

- When MDM checks the XFree86_VT atom, it does not set it if it
  does not already exist.  (Brian Cameron, Simon Zheng)

- Free a pointer array via g_free instead of g_ptr_array_free, avoiding
  an assert on shutdown.  (Frederic Crozat)

- When reading in the BaseXsession configuration value, it now only
  accepts the first word as the script name and ignores the rest.
  Previously if you had any trailing spaces or other arguments, it
  would cause MDM to fail to read any value for the script.  (Brian
  Cameron)

- Use RBAC for Suspend when on Solaris.  (Simon Zheng)

- Translation updates (Theppitak Karoonboonyanan, Priit Laes, Nickolay
  V. Shmyrev, Clytie Siddall)

2.20.6 Stuff:

- Fix two related bugs that were causing MDM to crash regularly on exit.
  Refer to bug #517526.  (Brian Cameron)

- Fix a third bug that was causing the MDM daemon to crash occasionally when
  using mdmsetup.  This fix changes MDM so that when it receives an
  UPDATE_CONFIG command, it only updates the key specified rather than
  re-reading the entire configuration file.  Fixes bug #517526.  (Brian
  Cameron)

- Sync to avoid any XIO errors after session exits.  (Ray Strode)

- Fix so that the XDMCP configuration values are read from the configuration
  file when the XDMCP manager is started rather than initialized.  It seems
  the related fixes implemented in 2.20.2 did not fully resolve this issue.
  (Brian Cameron)

- Fix bug that was causing MDM session desktop file marked as "Hidden=true"
  to show up in the Session dialog.  (Brian Cameron)

- Fix mdmsetup bug that caused users to need to restart MDM in order for
  it to notice changes made in the "Server settings" dialog.  (Brian
  Cameron)

- Fix mdmsetup so it does not save 24HourClock setting as a translated 
  string, which was causing the configuration to get confused.  (Brian
  Cameron)

- If the user's $HOME/.dmrc file does not exist, avoid calling gkeyfile 
  functions.  This avoids useless gkeyfile warning messages about the file
  being NULL.  A previous fix in 2.20.1 minimized this problem by creating
  the file if it did not exist.  However, that does not always work if the
  user's $HOME directory is not writable (e.g. LiveCD).  So this fix avoids
  the warnings.  (Brian Cameron)

- Add default OpenBSD Halt, Reboot and Suspend commands to the configure
  script.  (Jasper Lievisse Adriaanse)

- Remove broken logic in the configure script that was trying to append
  ${prefix}/bin to the DefaultPath and RootPath.  Please use the 
  --with-post-path configure option if you want to add custom directories
  to the end of DefaultPath and RootPath.  (Brian Cameron)

- Fix the way the Xsession script is built so that distros can more easily
  add their own custom logic to the Xsession script.  Some Solaris specific
  code was moved to the Xsession.solaris file so that other distros do not
  get affected by this code.  Remove logic to normalize LC_ variables since
  this was causing problems for some users.  Refer to bug #509141  (Takao
  Fujiwara)
  
2.20.5 Stuff:

- Use GDK functions to get proper screen resolution. (Vincent Untz)

- Move default Welcome/RemoteWelcome strings from mdm.h to
  mdm-daemon-config-keys.h so it isn't defined twice.  (Brian Cameron)

- Translation updates (Takeshi AIHANA, Wouter Bolsterlee, Luca Ferretti,
  Gil Forcada, Jorge Gonzalez, Gabor Kelemen, Petr Kovar, Yuri Kozlov,
  Duarte Loreto, Gintautas Miliauskas, Inaki Larranaga Murgoitio,
  Jovan Naumovski, Claude Paroz, Marcel Telka, Philip Withnall)

2.20.4 Stuff:

- The Custom Widgetry code in mdmgreeter was broken, and would not create
  the /var/lib/$DISPLAY.GreeterInfo file properly.  Due to the move away
  from vicious-extensions and towards GKeyFile, the format of this file
  changed slightly to INI format with the [GreeterInfo] group.  The docs
  were modified to explain this change.

- Now the default local and remote welcome strings ("Welcome" and
  "Welcome to %n") are translated.  (Wouter Bolsterlee, Brian Cameron,
  Frederic Crozat)

- If the user picks the default local welcome string to be used as the
  remote welcome string, or vice versa, then the strings will be
  translated also.  (Brian Cameron, Frederic Crozat)

- Get default locale from LC_MESSAGES rather than from g_get_language_names.
  Fixes bug #517670.  (Ray Strode)

- Honor GTK+ default password character rather than hardcoding to '*'.  The
  docs were modified to explain this change.  Fixes bug #477881.
  (Alexander "weej" Jones)

- Provide better tooltip for entry field in mdmgreeter.  (Roberto
  Sarrionandia)

- Get the environment variable XDG_DATA_DIRS before clearing the 
  environment variables.  This way if the user sets XDG_DATA_DIRS before
  running MDM, this should now be honored.  (Brian Cameron)

- Fix mdmsetup bug that was causing the Welcome (local and remote)
  message to not be saved properly when changed.  (Brian Cameron)

- Fix the setting of the custom command NOTIFY key to avoid crashing when
  changing the label values of a custom command in mdmsetup.  (Brian
  Cameron)

- Add include of "mdm-log.h" to daemon/verify-crypt.c and
  daemon/verify-shadow.c to fix compile issue on some platforms.  (Simon
  Munton)

- Translation updates (Djihed Afifi, Takeshi AIHANA, Arangel Angov, Wouter
  Bolsterlee, Baris Cicek, Pawan Chitrakar, Wadim Dziedzic, Maxim
  Dziumanenko, Luca Ferretti, Leonardo Ferreira Fontenelle, Gil Forcada,
  Jorge Gonzalez, Theppitak Karoonboonyanan, Gabor Kelemen, Peter Kovar,
  Duarte Loreto, Kjartan Maraas, Gintautas Miliauskas, Inaki Larranaga
  Murgoitio, Kenneth Nielsen, Daniel Nylander, Kostas Papadimas, Ankit
  Patel, Ignacio Casal Quinteiro, St\303\251phane Raimbault, Hendrik
  Richter, Changwoo Ryu, \303\205smund Skj\303\246veland, Marcel Telka,
  Mugurel Tudor, Ilkka Tuohela, Philip Withnall)

2.20.3 Stuff:

- Now "Esc" key acts like the "Start Again" button in the greeter
  program.  (Ray Strode)

- Fix regression in MDM 2.20 that caused the daemon to not read
  any [server-foo] sections that were not referenced in the
  [servers] section of the configuration file.  This caused
  problems for mdmsetup when you tried to edit the Xserver
  configuration.  (Brian Cameron)

- Fix regression in MDM 2.20 that caused HaltCommand,
  SuspendCommand, and RebootCommand to not get updated properly
  when modified from mdmsetup.  (Brian Cameron)

- Fix mdmsetup so that it doesn't use gtk_init when run with
  the "--command" option.  This allows the mdmflexiserver --command
  option to be run with setuid/setgid without problems.  This fixes
  bug #438939.  (Brian Cameron)

- Fix counting of open XDMCP sessions.  In some situations this
  problem would cause MDM to think the maximum number of XDMCP
  sessions had been started when this wasn't the case.  This fixes
  bug #495623.  (Andrew Ziem)

- Fix Suspend configuration option so it works.  (Philippe
  Troin)

- Fix so that XDMCP Willing configuration option works.  (George
  Lebl)

- Fixes to avoid compiler warnings.  (Brian Cameron, Larry
  Doolittle, George Lebl)

- Fix mdmsetup so it does not crash if it cannot read any
  displays from the configuration file.  (Brian Cameron)

- Translation updates (Se\303\241n de B\303\272rca, Jakub Friedl)

2.20.2 Stuff:

- Fix bugs that were causing XDMCP to not work properly.  (Robert
  Nelson and Brian Cameron)

- Fix so that XDMCP configuration options are read from the 
  configuration file.  (Andrew Ziem)

- Fix bug with mdmXnestchooser where it wasn't starting Xephyr with
  the correct arguments.  (Andrew Ziem)

- Fix so that MDM allows setting of LC_TYPE without setting LANG.
  (Sjoerd Simons and Takao Fujiwara)

- Icon improvements.  (Luca Ferretti)

- Fix leaks.  (Andrew Ziem)
 
- Translation updates (Nurali Abdurahmonov, Djihed Afifi, Yair
  Hershkovitz, Gintautas Miliauskas)

2.20.1 Stuff:

- Now mdmlogin and mdmgreeter treat Tab like enter if the focus
  is on the entry field.  This addresses usability issues as
  described in bug #433495.  (Lo\357c Minier)

- Fix bug that was causing the user's default language/session choices
  to not get saved properly if they didn't already have a $HOME/.dmrc
  file.  (Brady Anderson)

- Fix bug with XDMCP logic that was causing MDM to get confused 
  about when the maximum number of XDMCP sessions has been reached.
  (Francis Giraldeau)
   
- Fix an issue that was causing the username to be logged as a debug
  message when using MDM configured to use crypt or shadow passwords
  (instead of the default PAM).  This could cause the user's password
  to get saved as a debug message if the user accidently typed their
  password into the username field when using crypt/shadow passwords.
  No longer translate debug messages in general.  (Brian Cameron)

- Set stdout/stderr to DEV_NULL when spawning at_spi_registryd and
  the prefetch program, fixing a hanging problem.  (Huang Peng)

- MDM now always sends the daemon a response before exit to avoid a
  hang.  (Ray Strode)

- Fix mdmXnestchooser and mdmsetup so debug isn't on by default. 
  (Brian Cameron)

- Updated the mdmgreeter themes so that they display correctly 
  on 800x600 displays.  (Dave Fincher)

- Build/configure fixes for Solaris.  (Brian Cameron)

- Translation updates (Sunil Mohan Adapa, Gil Forcada, Duarte Loreto,
  S\303\255lvia Miranda, Ankit Patel, Ignacio Casal Quinteiro,
  Changwoo Ryu)

2.20.0 Stuff:

- Now support --with-atspi-dir so you can specify a non-default
  directory where the at-spi-registryd daemon exists.  (Brian
  Cameron)

- Improve keymouselistener a11y gesture listener so it does not
  fail on Ubuntu, and does a better job freeing memory.  Fix
  dwellmouselistener a11y gesture listener so it doesn't generate
  warnings.  (Gerd Kohlberger)

- Fix bug in IPv6 logic.  Fixes bug #376010. (Jacob Berkman)

- Fix Macedonian language so the language choice also appears in
  the local language (Arangel Angov)

- Translation updates (Vincent van Adrighem, Djihed Afifi, Jamil
  Ahmed, Laurent Dhima, Maxim Dziumanenko, Artur Flinta, Kenneth
  Nielsen, Claude Paroz, Amitakhya Phukan, Nickolay V. Shmyrev,
  Alexander Shopov)

2.19.8 Stuff:

- Fix bug where MDM was not properly executing a custom Xserver
  start script.  This fixes a regression introduced earlier in
  MDM 2.19.  (Brian Cameron)

- Fix bug with ConsoleKit that occurs when the session is going
  to migrate.  Previous code was failing to send the notification
  when the greeter is not TYPE_FLEXI.  (Ian Jackson)

- Set invisible character to '*' for mdmgreeter.  (Sebastien
  Bacher)

- When using mdm_verify_standalone_pam_conv (used by automatic
  login) set echo to FALSE when PAM_PROMPT_ECHO_OFF is handled.

- Make it possible to configure system dependant options by
  setting environment variables before running configure.  Also
  support /usr/X11/bin/Xorg when setting X_PATH, etc.  (Laszlo
  Peter)

- Translation updates (I. Felix, Duarte Loreto, Jovan Naumovski,
  St\303\251phane Raimbault, Pramod Raghavendra, Rajesh Ranjan,
  Clytie Siddall)

2.19.7 Stuff:

- Disable autocompletion in the face browser since it wasn't
  working properly.  (Ray Strode)

- Many corrections to the theme xml files  (Dave Fincher and Brian
  Cameron)

- Fix compile when using a compiler that doesn't like #ifdefs
  in macro calls.  (Jens Granseuer)

- The greeter.dtd file has been updated.  Now the default MDM themes
  validate with this dtd.  (Dave Fincher)

- Translation updates (Jorge Gonzalez, Raphael Higino, Priit Laes,
  Claude Paroz, Pramod Raghavendra, St\303\251phane Raimbault,
  Adam Weinberger)

2.19.6 Stuff:

- Fix mdmflexiserver so when used to start a "Nested Display" (a login
  in a window), it does not pop-up the window showing the user what
  VT's are already logged in.  That window should only show up when
  starting Flexi (VT) displays, not Nested displays.  (Brian Cameron)

- Remove XInput code from the dwellmouselistener accessibility module.
  Bug #457998 reported that this code was not working and causing 
  devices to fail. (Ray Strode)

- Fix bug #461822 which caused entries in the [servers] section of the
  configuration to get ignored if more than one referenced the same
  [server-foo] server.  This was working in 2.18 but got broken during
  the cleanup.  (Brian Cameron)

- Fix mdm_fail function so that it cleans up and exits, so now MDM
  will better handle critical failures.  This was working in 2.18
  but got broken during the cleanup.  (Brian Cameron)

- Now mdmsetup sets "Use 24 Hour Clock" to "yes" when this is its
  value.  (Sebastien Bacher)

- Fixes for utmpx processing so it now works with utmp and also on
  FreeBSD.  (Brian Cameron, Joe Marcus Clarke)

- Fix IPv6 check when starting VT so that if IPv6 reports that the
  network is not reachable, it falls back to IPv4.  (Brian Cameron)

- Fix string translation issues.  (Lukasz Zalewski)

- Translation updates (Takeshi AIHANA, \305\275ygimantas Beru\304\215ka,
  Runa Bhattacharjee, Theppitak Karoonboonyanan, Gabor Kelemen, Kjartan
  Maraas, Inaki Larranaga Murgoitio, Danishka Navin, Daniel Nylander,
  Ankit Patel, Ani Peter, Pramod Raghavendra, Hendrik Richter, Ilkka
  Tuohela)

2.19.5 Stuff:

- Fix for CVE-2007-3381, a denial of service attack where the
  user can crash the MDM daemon with a carefully crafted 
  MDM sockets command and cause MDM to stop managing future
  displays.  MDM now is much better about safeguarding against
  NULL values returned from g_strsplit calls.  Credit given
  to "JLANTHEA".  (Brian Cameron)

- Fix range check for custom commands.  (Lukasz Zalewski)

- Fix string translation issues for bug #460407.
  (Lukasz Zalewski) 

- Fix issues with icons not showing up properly in the 
  mdmgreeter menu.  (Michael Terry)

- Fix memory handling of the dialog which asks if you want
  to restart the greeter in a different language.  (Takao
  Fujiwara)

- Autodetect the path to the nologin binary to fix MDM so it
  works on FreeBSD where nologin is in a different location.
  Also fix compile issues for FreeBSD.  (Lo\357c Minier)

- Fix some build issues and code cleanup.  (Brian Cameron)

- Translation updates (Subhransu Behera, Runa Bhattacharjee,
  I. Felix, Theppitak Karoonboonyanan, Gabor Kelemen, Priit
  Laes, Ankit Patel, Changwoo Ryu, Ilkka Tuohela)

2.19.4 Stuff:

- Now MDM manages utmp/wtmp processing directly rather than
  using the X server sessreg program.  (Brian Cameron, Ray
  Strode)

- Now MDM supports new configuration options to specify how the
  utmp/wtmp ut_line value is set.  Refer to the UtmpLineAttached,
  UtmpLineRemote, UtmpPseudoDevice configuration options and the
  fact that the [servers] section now supports specifying a 
  device via device="/dev/foo" syntax.

- Fix mdmchooser so it will start the at_spi_registryd so that
  AT programs work when you run it.  (Brian Cameron)

- Now icons are installed to the hicolor theme and use the 
  correct GTK calls to grab application icons from the theme, not
  pixmaps.  (Michael Terry)

- Now the mdmgreeter sports icons in the F10 menu.  (Brian
  Cameron, Michael Terry)

- Fix focus handling in mdmlogin so that the Tab key can move
  focus into the button widgets.  Also fix sensitivity of the
  "OK" button so it is insensitive when no characters are in
  the entry field.  (Brian Cameron)

- Remove logic that sets the default locale selection to en_US
  since this locale is not guaranteed to always be available.  Now
  just let the system default to C without special code in MDM.
  (Lo\357c Minier)

- Now MDM checks to ensure that a theme file is readable and
  reports better error messages if not. (Lukasz Zalewski)

- Enhanced Solaris utmp, PAM_TTY, Sun Audit, and logindevperm
  code to work with Virtual Terminals which will be available
  in Solaris Nevada in the next few months.  Fix logindevperm
  code so it only is used when the user logs in and logs out.
  Now setfacl calls are made to allow the MDM user to have
  access to the sound device on Solaris.  (Brian Cameron)

- Initialize lang variable to avoid accessing a unitialized memory.
  (Juerg Billeter)

- Fix many warnings.  (Lo\357c Minier)

- Translation updates (I. Felix, Pema Geyleg, Jorge Gonzalez,
  Priit Laes, Kjartan Maraas, Nguy\341\273\205n Th\303\241i
  Ng\341\273\215c, Daniel Nylander, St\303\251phane Raimbault,
  Clytie Siddall)

2.19.3 Stuff:

- Ensure non-null size is set by default for pango font
  description (Frederic Crozat) 

- Now set WINDOWPATH so that AT programs such as braille
  displays can work better with Xnest and sessions started
  via VT.  (Samuel Thibault)

- Now support VT on Solaris where available (Brian Cameron)

- No longer call logindevperm logic when logging into XNEST 
  sessions since we do not want to change device permissions
  on Solaris for XNEST sessions, only for the real console
  session.  (Brian Cameron)

- Doc and string improvements.  (Brian Cameron)

- Translation updates (Pema Geyleg, Priit Laes, Alexander
  Shopov)

2.19.2 Stuff:

Interface Changes:

- The location of the .mdm_socket file has been moved from /tmp to 
  /var/run.  This interface change has been coordinated with 
  cinnamon-session, gnome-panel, and the Fast-User-Switch Applet (FUSA).
  This is a more sensible place for MDM to store its sockets file.
  (Lo\357c Minier)

- Now MDM desktop files are installed to /usr/share/mdm/applications and
  MDM appends this directory to XDG_DATA_DIR.  This way MDM programs only
  show up in the menus if MDM is actually being used as the login program.
  This prevents the menu items from showing up if the user switches to
  another login program.  (Brian Cameron)

- The greeter programs no longer accept the Tab key as Enter so that now
  the GUI's are now more navigable for a11y users.  (Patrick Wade)

New features, improvements, and bug fixes:

- Now support Linux auditing if configure detects libaudit on the system.
  See enhancement request #349835.  (Ray Strode)

- Now MDM greeters only display languages that are installed on the system. 
  (Ray Strode)

- The Face Browser now prunes out users if their shell is /sbin/nologin,
  /bin/true, or /bin/false.  (Ray Strode)

- Improve custom command logic so that you can specify a widget in the
  mdmgreeter theme with the following sort of tag:
  <show modes="console" type=custom_cmdX/>.  (Lukasz Zalewski)

- Now the greeter invisible character is set explicitely to '*' if
  the configuration file doesn't specify to use invisible or circles.
  (Sebastien Bacher)

- MDM documentation make logic has been updated so it works better and we
  now generate documentation for more languages.  Now mdash and percnt
  entities have definitions so they no longer generate warnings.
  (Brian Cameron)

- Translation updates (Djihed Afifi, Theppitak Karoonboonyanan,
  Priit Laes, David Lodge, Kjartan Maraas, Christophe Merlet,
  Daniel Nylander, Ignacio Casal Quinteiro, St\303\251phane Raimbault,
  Funda Wang)

2.19.1 Stuff:

- Now MDM desktop files support the optional X-Mdm-XserverArgs extension to
  the desktop files installed to /usr/share/xsessions.  This allows a desktop
  session file to specify additional Xserver flags to be used with the
  session.  This could be useful to turn on special extensions needed for
  certain accessibility features, or to use sessions that require special
  Xserver flags or extensions, etc.  Note that sessions that use this
  feature cause MDM to restart the Xserver after authentication.
  (Ron Yorston)

- Now mdmgreeter themes support a "background=[true|false]" element to be 
  specified for any item tag.  Items which have this tag set to true will
  be mapped to the root window after authentication.  This way the 
  background image to be displayed can be specified for the interim 
  between authentication and when the session starts.  (Frederic Crozat)

- Fix mdm_daemon_check_permissions so it resets the permissions of the
  ServAuthDir rather than LogDir.  This bug was introduced into 2.19.0.
  (Brian Cameron)

- Correct handling of AlwaysLoginCurrentSession and DoubleLoginWarning so they
  work more sensibly.  Previously they caused a silent login failure for
  non-migratable sessions (e.g. Xnest and XDMCP) if both were set to true.
  (Brian Cameron)

- When using PAM, if it receives a PAM_AUTHINFO_UNAVAIL message, it will
  display the default "authentication failed" message.  This ensures that
  the error message is the same for invalid user and incorrect password,
  making it harder to tell whether an account is a valid one or not. 
  (Lo\357c Minier)

- Avoid starting timed login timer if a username has already been entered.
  (Lo\357c Minier)

- Check for existance of a mdmgreeter theme before selecting a random 
  theme.  Skip over themes that don't exist on the system.  (Lo\357c Minier)

- Fix a bug that was causing mdmflexiserver commands SET_LOGOUT_ACTION and
  SET_SAFE_LOGOUT action to not work.  Also fix a bug that was causing the
  mdmflexiserver command UPDATE_CONFIG to return an incorrect return code.
  These issues were introduced in MDM 2.19.0.  (Brian Cameron) 

- Now used an unsigned character buffer in mdm_fdgetc because the MDM GUI
  sends the username/password data as utf8 and the daemon will interpret
  any character sent with its high bit set as EOF unless we use an unsigned
  buffer.  This should improve support of usernames and passwords which 
  contain non-ASCII characters.  (Lo\357c Minier)

- This change should only affect Solaris users.  Add support for ctrun, so
  that when running MDM as a svc service via svcadm(1M), subprocesses are run
  in a separate contract.  This ensures that when programs in the user session
  crash, it doesn't cause a MDM restart.  (Brian Cameron)

- Remove unused failsafe logic from the MDM Xsession script.  For
  some time MDM has called failsafe directly from the daemon slave,
  so this code hasn't been used for some time.  (Brian Cameron)

- Improvements to how MDM sets umask.  (Peter Baumann)

- No longer unset MAIL when starting a user session, and set PWD before 
  starting a user session.  This fixes problems when the user's $HOME
  directory is a symlink.  (Lo\357c Minier)

- Fix detection of Xserver so that it should work on Solaris, Debian and
  Ubuntu without needing to patch the code.  (Brian Cameron, Lo\357c Minier)

- Documentation and manpage improvements (Brian Cameron, Lo\357c Minier)

- Several build fixes (Saleem Abdulrasool, Ed Catmur, Jens Granseuer).

- Translation updates (David Lodge, Kjartan Maraas, Christophe Merlet)

2.19.0 Stuff:

Interface Changes:

- Now the MDM PidFile is now specified as /var/run/mdm.pid and the
  MDM configuration key PidFile has been deprecated.  The location
  of the PidFile can be configured with the configure --with-pid-file
  option.  (Brian Cameron, William Jon McCann)

- The MDM AlwaysRestartServer configuration option is deprecated and
  MDM will now always restart the Xserver between users.  This makes
  MDM work more reliably since reusing the Xserver can expose memory
  leaks and instabilities in the Xserver code.  (Brian Cameron,
  William Jon McCann)

- Now the MDM LogDir is set to /var/log/mdm rather than /var/lib/log/mdm
  by default.  Users can configure this with the configure
  --with-log-file option.  (Brian Cameron)

- Remove logic to call whack_clients when closing the session.  This
  code was written to address bug #126071, to ensure that all clients
  are killed on session exit.  However, this approach does not work 
  well and causes MDM to fail badly when you kill the Xserver via
  control-al-backspace on some environments.  If there is still a need
  to kill clients on session exit, a better approach will need to be
  designed.  (Cesare Tirabassi)

- Now MDM supports Xephyr as the Nested Xserver command.  MDM will use
  Xephyr by default if it is on the system, and fallback to Xnest.  Xephyr
  works much better than Xnest.  (Brian Cameron)

- Now mdmgreeter will not display the Face Browser is the MDM configuration
  option Browser is false.  Now mdmsetup supports a "Themed with face
  browser" option to support selecting this.  (Brian Cameron and Lukasz
  Zalewski)

- Comment in MDM System Defaults configuration file now shows "true"
  for ConfigAvailable since this value has been defaulting to true for
  some time and the comment in the System Defaults configuration file
  was incorrect.  (Brian Cameron)

- Now mdmphotosetup.desktop specifies NotShowIn=GNOME since the About-Me
  capplet is a better place for configuring the user's face image in GNOME.

New interfaces:

- Add min-screen-height tag to mdmgreeter parser logic so that certain
  elements in the theme will only display if the screen is large 
  enough.  (Ray Strode).

- New configuration option SystemCommandsInMenu to configure which
  system commands (reboot, shutdown, suspend, etc.) appear in the MDM
  greeter system menu.   New configuration option AllowLogoutActions
  to specify which system commands are supported by the QUERY_LOGOUT_ACTION,
  SET_LOGOUT_ACTION, and SET_SAFE_LOGOUT action mdmflexiserver commands.
  This allows MDM to be configured to support shutdown, reboot, suspend
  from the user session, but no from the login screen directly, if 
  desired.  In situations where you want the user to authenticate before
  being able to shutdown or reboot the machine, this feature would be
  useful.  (Brian Cameron)

- MDM Now supports RBAC (Role Based Access Control) for specifying
  which actions (reboot, shutdown, suspend, etc.) are supported on a per-user
  basis.  This feature is only available if MDM is compiled with RBAC support
  enabled.  The new configuration option RBACSystemCommandKeys allows an RBAC
  key to be specified for each system command.  Only users who have RBAC
  authority will be able to query or set the logout action.  The MDM GUI will
  only display actions for which the "mdm" user has RBAC authority.  MDM will
  assume that all users have authority for actions which do not have an RBAC
  key associated with them.  (Brian Cameron)

- Now support XnestUnscaledFontPath configuration option, which allows MDM
  to work with Xnest.  Xorg 7.2 XGetFontPath function now returns fontpath
  with the ":unscaled" prefix, which Xsun Xnest cannot handle.  Setting
  XnestUnscaledFontPath=false, will strip the ":unscaled" prefix from the
  fontpath so that it can work.  (Brian Cameron)

New features, improvements, and bug fixes:

- MDM had a bug that would happen after the user asked to run the
  "Configure MDM" menu choice.  If the user typed the wrong password,
  it would ask up to 3 times.  If the user typed the correct password
  on the 2nd or 3rd try, it would start a root user session rather
  than running mdmsetup.  This problem would only happen if using PAM
  for authenticating passwords.  Now MDM only asks for the root
  passwords once, and only runs mdmsetup if the password is correct.
  This bug was introduced into MDM 2.18.0 when Ludwig Nussel made some
  improvements to make the PAM logic more generic (Brian Cameron)

- Much cleanup work in the MDM code, which now makes more use of 
  GObjects (e.g. XDMCP code).   Configuration logic rewritten to no 
  longer use vicious-extensions and now uses GKeyFile.  (William Jon
  McCann)

- Now when a user changes the language choice in MDM, it will ask if
  the user wants to restart the MDM GUI in the selected language. 
  (Takao Fujiwara, Brian Cameron)

- Many improvements supporting languages.  Now all LC_* settings are 
  normalized to LANG, and input methods (IIIM->XIM) are started.  
  (Hidetoshi Tajima, Chookij Vanatham)

- Fix check in mdmgreeter so that the language combo style selection
  works.  (Simon)

- Add ATK label for the entry field in mdmgreeter for better 
  accessibility support.  (David Zeuthen)

- In mdmsetup, only show tar and compressed tar files in the file chooser
  for selecting mdmgreeter themes to install.  (Kristof Vansant)

- Now the "Configure MDM" option is not displayed when accessibility is
  enabled in MDM.  This is because mdmsetup currently hangs when the
  user tries to run mdmsetup from the greeter program.  Not really a 
  fix, but prevents the user from getting into a situation that causes
  a system hang.  (Brian Cameron)

- Now Face Browser displays non-utf8 characters as '?' rather than
  crashing when trying to display such characters.  (Ray Strode)

- Improve MDM messages, correcting spelling and grammar mistakes
  (Brian Cameron)

- Fix detection of user specified in flexi command.  (William Jon 
  McCann)

- mdmflexiserver now properly initializes GTK+.  (William Jon McCann)

- Call "xrdb -merge /etc/X11/Xresources" in the Init script so that the
  MDM GUI is properly configured with Xft rsources.  Fixes bug #301826.
  (Ray Strode)

- Now desktop categories for all MDM related desktop files should be
  correct.  (Brian Cameron)

- Fix mdm startup script so it works with Solaris /bin/sh.  (Brian
  Cameron)

- Fix a strcpy call in gui/mdmlanguages.c so source and destination do
  not overlap.  (Ray Strode) 

- Remove gnome glade references since GNOME does not use libglade anymore.
  (Kristof Vansant)

- Many improvements to MDM docs.  (Brian Cameron, William Jon McCann)

- Translation updates (Djihed Afifi, Takeshi AIHANA, Leonardo
  Ferreira Fontenelle, Jakub Friedl, Pema Geyleg, Priit Laes, Duarte
  Loreto, Kjartan Maraas, Daniel Nylander, Kostas Papadimas, Ignacio
  Casal Quinteiro, Hendrik Richter, Funda Wang)

2.18.4 Stuff:

- Fix for CVE-2007-3381, a denial of service attack where the
  user can crash the MDM daemon with a carefully crafted
  MDM sockets command and cause MDM to stop managing future
  displays.  MDM now is much better about safeguarding against
  NULL values returned from g_strsplit calls.  (Brian Cameron)

- Remove setting hints.ai_family != AF_INET6 to fix bug #455190.
  (Brian Cameron)

- Translation updates (Priit Laes)

2.18.3 Stuff:

- Fix crashing issue with XDMCP logic.  Fixes bug #436725.  (Brian
  Cameron)

- Translation updates (Priit Laes)

2.18.2 Stuff:

- Fix handling of AlwaysLoginCurrentSession and DoubleLoginWarning so
  it works for the non-migratable case (for Xnest, XDMCP, etc.).  Fixes
  bug #172600.  (Brian Cameron)

- Use an unsigned char buffer in mdm_fdgetc.  (Brian Cameron)

- Just display the default "authentication failed" message when we
  receive PAM_AUTHINFO_UNAVAIL.  (Lo\357c Minier)

- Fix for bug #428630.  (Brian Cameron)

- Translation updates (Peter Bach, Funda Wang, Pema Geyleg, Christophe Merlet,
  St\351phane Raimbault, Priit Laes)

2.18.1 Stuff:

- The MDM configuration option daemon/PidFile is now deprecated and
  MDM now always uses /var/run/mdm.pid.  The location can be configured
  at compile time with the configure --with-pid-file option.  This
  fixes bug #162849.  (William Jon McCann)

- Now MDM supports Xephyr as the Nested Xserver command.  MDM will use
  Xephyr by default if it is on the system, and fallback to Xnest.  Xephyr
  works much better than Xnest.  (Brian Cameron)

- MDM application desktop files now use the correct categories, so the
  menu choices should appear in the correct place in the menu.  (Brian
  Cameron)

- Remove the userlist from the circles and happygnome themes since this
  was causing problems for some users.  This change will go into 2.20
  where we are fixing the problem better by fixing mdmsetup to support
  setting the configuration so that mdmlogin and mdmgreeter work the
  same way with the Browser key.  (Brian Cameron)

- Now mdmgreeter has an ATK label for the entry field.  (David Zeuthen)

- Fix check so language combo style works.  Fixes bug #423063.  (Simon)

- Now "Configure MDM" menu choice is not available when accessibility is
  turned on since running mdmsetup in this configuration causes MDM to
  hang.  Until the hanging bug is fixed, it's better to not allow the
  user to get into this situation.  (Brian Cameron)

- Now support XnestUnscaledFontPath configuration option, which allows MDM
  to work with Xnest.  Xorg 7.2 XGetFontPath function now returns fontpath
  with the ":unscaled" prefix, which Xsun Xnest cannot handle.  Setting
  XnestUnscaledFontPath=false, will strip the ":unscaled" prefix from the
  fontpath so that it can work.  (Brian Cameron)

- MDM daemon no longer links with D-Bus if ConsoleKit is not enabled.
  (William Jon McCann)

- Remove gnome glade references since GNOME does not use libglade anymore.
  (Kristof Vansant)

- Translation updates (Takeshi AIHANA, Jakub Friedl, Leonardo Ferreira
  Fontenelle, Pema Geyleg, Priit Laes, Kjartan Maraas, Inaki Larranaga
  Murgoitio, Kostas Papadimas, Ignacio Casal Quinteiro, Hendrik Richter,
  Changwoo Ryu, Claudio Saavedra)

2.18.0 Stuff:

- Fix mdmchooser so the Cancel button works.  (Brian Cameron)

- Fix desktop files so they include "GNOME" and "GTK" and remove "Application".
  Fixes bug #417350.  Now mdmsetup uses the full path in Exec, not just
  TryExec, so that if mdmsetup isn't in the user's PATH it will still work.
  (Brian Cameron)

- Update of ConsoleKit parameter names.  Fixes enhancement request #415181.
  (William Jon McCann)

- Fix memory leaks.  (Brian Cameron)

- Translation updates (Djihed Afifi, Josep Puigdemont i Casamaj\303\263,
  Maxim Dziumanenko, Artur Flinta, Leonardo Ferreira Fontenelle, Leonid
  Kanter, Theppitak Karoonboonyanan, Gabor Kelemen, David Lodge, Gintautas
  Miliauskas, Duarte Loreto, Daniel Nylander, Ankit Patel, Ani Peter,
  Thierry Randrianiriana, St\303\251phane Raimbault, Hendrik Richter,
  Erdal Ronahi, Changwoo Ryu, Alexander Shopov, Ilkka Tuohela, Funda Wang)

2.17.8 Stuff:

- In mdmlogin, change "Session" mnemonic to "e" instead of "s"
  so it doesn't conflict with the "Start Again" button.
- Now AlwaysLoginCurrentSession is set to true by default.

- Fix spacing in mdmsetup so it uses less vertical space.  (Lukasz
  Zalewski)

- Fix mdmchooser so it builds with HURD.  (Brian Cameron)

- Fix comparison with string literal in mdmdynamic.  (Hans Petter
  Jansson)

- On Solaris, gnome.session script calls /usr/dt/config/Xsession.jds
  instead of gnome.session since Xsession.jds starts D-Bus daemons
  needed for GNOME to run properly.  (Brian Cameron)

- Translation updates (Takeshi AIHANA, Josep Puigdemont i Casamaj\303\263,
  Nguy\341\273\205n Th\303\241i Ng\341\273\215c Duy, Artur Flinta,
  Leonardo Ferreira Fontenelle, Leonid Kanter, Gabor Kelemen, Priit Laes,
  David Lodge, Kjartan Maraas, Daniel Nylander, Hendrik Richter,
  Changwoo Ryu, Thomas Thurman, Ilkka Tuohela)

2.17.7 Stuff:

- New sockets command FLEXI_XNEST_USER and FLEXI_XSERVER_USER.  This is
  used to start login procedure by programs like gnome-screensaver and the
  Fast User Switch applet.  (Matthias Clasen)

- Improvements to PAM logic so that it works more generically with PAM
  modules.  (Ludwig Nussel)

- Better fix for not showing the face browser if the userlist is empty.
  This avoids a needless selection "changed" signal from getting generated.
  (Ludwig Nussel)

- Fix so ConsoleKit logic does not use dbus-glib bindings to using the
  lower level API instead.  Fixes bug #400793.  (William Jon McCann)

- Fixes for compiler warnings and for c99 compile issues.  (Ludwig Nussel
  and Jens Granseuer)

- Avoid catching sigchld when trying to call XOpenDisplay.  This corrects
  an issue where MDM catches a second SIGCHLD when trying to restart.  
  This causes the slave to freeze even though the Xserver and the session
  are killed, causing the display to no longer manage. 
  (Roberto Tam)

- Improvements to PAM documentation in MDM docs.  (Brian Cameron and
  Gary Winiger)

- Translation updates (Djihed Afifi, Theppitak Karoonboonyanan, Priit Laes,
  David Lodge, Duarte Loreto, Daniel Nylander, St\303\251phane Raimbault,
  Hendrik Richter, Alexander Shopov)

2.17.6 Stuff:

- More verbose error messages from MDM daemon and mdmsetup when custom.config
  file is missing.  Now MDM will not start mdmsetup if the custom.config file
  is missing, but instead display a pop-up dialog with an error message.
  (Lucasz Zalewski)

- Remove redundant GenericName from mdmsetup.desktop.  (Brian Cameron)

- Fixes so code compiles with c99 compilers.  (Jens Granseuer)

- Translation updates (Djihed Afifi, Clytie Siddall)

2.17.5 Stuff:

- No longer close file descriptors in forked process which
  shows dialog boxes since this causes the dialogs to not
  display any text.  (Brian Cameron)

- Now MDM will recognize when the system default language
  has changed and will display new GUI's with the new
  default language.  By default the /var/sysconfig/i18n
  file is assumed to have the language defined in LANG=foo
  format.  The --with-lang-file configure option may be
  needed to specify a different system language configuration
  file.  On Solaris, for example, it would be
  /etc/default/init.  (Ray Strode and Takao Fujiwara)

- Remove filter_watch after it is called for the first time.
  This filter is used to start the at_spi_registryd, but
  after it is started there is no need to listen to the
  propery any more.  (Li Yuan)

- Further improvements to mdmsetup to improve usability.
  (Lukasz Zalewski)

- No longer hardcode invisible_char property in glade files,
  instead realy on GTK+ default.  (Vitaliy Ischenko)

- Fix so that the userlist is hidden properly when there
  are no users.  (Brian Cameron)
  
- Fixes for compiling with gcc 2.95. (Jens Granseuer)

- Translation updates (Djihed Afifi, Raivis Dejus,
  Theppitak Karoonboonyanan, Gabor Kelemen, David Lodge,
  Jovan Naumovski, Amitakhya Phukan, Danilo \305\240egan,
  Francisco Javier F. Serrador, Ilkka Tuohela, Matic Zgur)

2.17.4 Stuff:

- Fix for a recently reported security issue that has ID
  CVE-2006-6105.  This fixes a problem where a user can 
  enter strings like "%08x" into the mdmchooser entry and
  press the "Add" host button to print out memory contents.
  This issue was introduced into MDM 2.13.0.
  (Brian Cameron)

- Improvements to mdmsetup, which now supports many new
  features.  Fixes feature request #334186 and bugs
  #343206 and #347101.  (Lukasz Zalewski)

- No longer set XDG_SESSION_COOKIE if there is no cookie.
  Fixes #383866.  (William Jon McCann)

- Now the key and dwell gestures start Orca instead of
  Gnopernicus.  Must use Orca v2.17.4 or later to work 
  with MDM.  (Brian Cameron)

- Translation updates (Kjartan Maraas, Daniel Nylander, 
  Francisco Javier F. Serrador, Ilkka Tuohela)

2.17.3 Stuff:

- Now all MDM GUI's are run as the mdm user.  This change ensures
  that all MDM GUI's can talk to the at-spi-registryd that is 
  running.  This change involved making the forked slave talk
  to the the MDM daemon so that the dialogs can be displayed.  
  The response from the dialog can be returned to the slave.
  There are reports that this bug triggers GDK bug #376315 on
  Linux when a11y is turned off.  This will need to be fixed
  before the next MDM stable release.  Workaround is to turn
  on a11y until this bug is fixed.  (Leena Gunda and Srirama
  Sharma)

- mdmsetup has a new tooltip suggestion.  (Calum Benson)

- Now "Default System Session" is renamed to "Run Xclient
  script" which is more accurately what this does.  Use xterm
  as fallback instead of xsm, since xsm is not available on all
  Linux.  Now zenity pop-up message is displayed when Xclient
  script is not found.  (Brian Cameron)

- Fix for TryExec check in mdmsession to make sure that any
  arguments are not passed to g_find_program_in_path since 
  this causes the function to say it is not executable.
  (Brian Cameron)

- Rename Panjabi to Punjabi.  (Brian Cameron)

- Translation updates (Josep Puigdemont i Casamaj\303\263,
  Daniel Nylander)

2.17.2 Stuff:

- Add ConsoleKit support.  This is a new feature and not tested.  If you
  find that MDM does not allow you to log in, try using the configure 
  option --with-console-kit=no to turn this feature off.  This feature
  turns on MDM notification of session open, close and lock events via
  D-Bus.  (William Jon McCann)
  
- Added warnings when no themes are selected in "Random Theme Mode".
  Disable the delete button on Random theme mode for the theme that
  is selected in "single theme mode". (Lukasz Zalewski)

- Fix custom lists so that focus does not leave the username/password
  entry field.  (Brian Cameron)

- Add new languages to the locale list.  (Peter Nugent)

- Translation updates (Priit Laes, Christophe Merlet, Francisco Javier
  F. Serrador, Alexander Shopov, Ilkka Tuohela)

2.17.1 Stuff:

- No longer crash if at-spi-registryd cannot be started.  
  (Ariel Rios)

- Now support customcommands in MDM configuration so that sysadmins
  can specify custom commands to appear in the MDM GUI (in addition
  to reboot/shutdown/etc.).  Refer to the comments in the MDM
  configuration file and documentation for details.  Also support
  new QUERY_CUSTOM_CMD_LABELS and QUERY_CUSTOM_CMD_NO_RESTART_STATUS
  mdmflexiserver commands.  (Lukasz Zalewski)
  
- Now support for "combo" style lists, and id values of "session"
  and "language" are supported for displaying the session/language
  lists as drop-down combos.  (Brian Cameron).  For example:

  <item type="list" id="language" combo="true">
     <pos  x="25" y="10" height="40" width="300"/>
  </item>
  <item type="list" id="session" combo="true">
    <pos x="50" y="10" height="40" width="300"/>
  </item>

- Now OK/Start Again buttons are sensitive/insensitive in a more
  sensible way for both mdmlogin and mdmgreeter (if GTK style buttons
  are used in mdmgreeter).  (Brian Cameron)

- Face Browser widget and background rectangle (for mdmgreeter)
  is not shown if there are no users to display.  (Brian Cameron)

- Help button now enabled in mdmphotosetup.  (Matthias Clasen)

- Fix so that if timed user script returns an invalid user that
  timed login is not turned on.  (Andrew)

- Fix bug that was causing %t to be expanded improperly when
  used in the timed login label.  (Brian Cameron)

- Set authdir to NULL after freeing to avoid accessing an invalid
  pointer.  Fixes bug #359831.  (Amnon Aaronsohn)

- Introduce altfile[n] property to cater for alternative image file
  definition in mdmgreeter themes.  (Erwann Chenede)

- Leaks fixed.  (Kjartan Maraas)

- Documentation improvements.  (Malcolm Parsons)

- Build improvements.  (Brian Cameron)

- Translation updates (Dwayne Bailey, Luca Ferretti, Satoru SATOH, Jens Seidel,
  Ilkka Tuohela)

2.17.0 Stuff:

- Now when MDM_ADD_MODULES is set, MDM will launch at-spi-registryd.
  (Ariel Rios)

- New SupportAutomount option which, when turned on, changes the
  way that MDM accesses the user's $HOME/.dmrc file so that 
  automounted $HOME directories can be configured to work even
  when the automounter is not started with the --ghost option. 
  (Jerzy Borkowski)

- Fix so that if timed login script returns an invalid user,
  timed login is not turned on.   Fix for bug #340148.
  (Andrew - andrewz@springsrescuemission.org).

- Fix for bug #352838, avoid crashing by moving call to get
  MDM_KEY_SYSTEM_MENU until after authentication check.
  (Frederic Crozat)

- Use g_markup_printf_escaped so mdmsetup better handles
  description strings that contains things similar to a tag
  like an email address.  Fixes bug #357998.  (Matthias
  Clasen)

- Fix mdmsetup so that the window manager close button works
  as the Close button in the dialog.  (Matthias Clasen)

- Add g_type_init() to mdmflexiserver since this is needed
  for -a (authentication) code to work.  (Brian Cameron)

- Set authdir to NULL after freeing to avoid accessing an
  invalid pointer.  Fix for bug #359831.  (Amnon Aaronsohn)

- Memory leaks fixed.  (Kjartan Maraas)

- Translation updates (Abel Cheung, Yair Hershkovitz,
  Raphael Higino, Priit Laes, \303\205smund Skj\303\246veland,
  Ivar Smolin)

2.16.7 Stuff:

- Fix for CVE-2007-3381, a denial of service attack where the
  user can crash the MDM daemon with a carefully crafted
  MDM sockets command and cause MDM to stop managing future
  displays.  MDM now is much better about safeguarding against
  NULL values returned from g_strsplit calls.  (Brian Cameron)

- Translation updates (Christophe Merlet, Amitakhya Phukan,
  Ignacio Casal Quinteiro)

2.16.6 Stuff:

- The MDM configuration option daemon/PidFile is now deprecated and
  MDM now always uses /var/run/mdm.pid.  The location can be configured
  at compile time with the configure --with-pid-file option.  This
  fixes bug #162849.  (William Jon McCann)

- Now "Configure MDM" menu choice is not available when accessibility is
  turned on since running mdmsetup in this configuration causes MDM to
  hang.  Until the hanging bug is fixed, it's better to not allow the
  user to get into this situation.  (Brian Cameron)

- Fix so will compile with HURD.  (Brian Cameron)

- Better fix for not showing the face browser if the userlist is empty.
  (Ludwig Nussel)

- Add ATK label for mdmgreeter entry field.  (David Zeuthen)

- Fix XDMCP send forward query so it works for IPv6.
  (Ludwig Nussel)

- Fix check so language combo style works.  (Simon)

- Fix strcpy so source and destination do not overlap.  Fixes bug
  #424299.  (Ray Strode)

- Remove gnome glade references since GNOME does not use libglade anymore.
  (Kristof Vansant)

- Fix comparison with string literal in mdmdynamic.  (Hans Petter Jansson)

- Translation updates (Amitakhya Phukan, Ignacio Casal Quinteiro,
  Hendrik Richter)

2.16.5 Stuff:

- Fix so we only hide userlist if there is one.

- Translation updates (Subhransu Behera, Gabor Kelemen,
  Ani Peter, Amitakhya Phukan, Danilo \305\240egan,
  Tyronne Wickramaratne, Matic Zgur)

2.16.4 Stuff:

- Fix for a recently reported security issue that has ID
  CVE-2006-6105.  This fixes a problem where a user can 
  enter strings like "%08x" into the mdmchooser entry and
  press the "Add" host button to print out memory contents.
  This issue was introduced into MDM 2.13.0.

- Fix for TryExec check in mdmsession to make sure that any
  arguments are not passed to g_find_program_in_path since
  this causes the function to say it is not executable.
  (Brian Cameron)

- Translation updates (Runa Bhattacharjee, Josep Puigdemont
  i Casamaj\303\263, Laurent Dhima, I. Felix, David Lodge,
  Ani Peter, Rajesh Ranjan, Clytie Siddall, Vincent van
  Adrighem)

2.16.3 Stuff:

- Now support altfile[n] propery to cater for alternative
  image file definition.  (Erwann Chenede)

- Fix custom lists so that focus does not ever leave the
  username/password entry field.  (Brian Cameron)

- Update to make casting more clear in PAM logic.  This fixes a
  bug where the Kerberos PAM module was sending multiple error
  messages and MDM was not processing them properly.
  (Brian Cameron)

- Add X_EXTRA_LIBS and X_LIBS to utils/Makefile when building
  mdm-dmx-reconnect-proxy to fix bug #368808.

- Translation updates (Djihed Afifi, Wouter Bolsterlee, Luca
  Ferretti, Pema Geyleg, Priit Laes, Duarte Loreto, Christophe
  Merlet, Jovan Naumovski, Daniel Nylander, Ankit Patel, Ignacio
  Casal Quinteiro, Satoru SATOH, Francisco Javier F. Serrador,
  Alexander Shopov, Ilkka Tuohela)

2.16.2 Stuff:

- Now support for "combo" style lists, and id values of "session"
  and "language" are supported for displaying the session/language
  lists as drop-down combos.  (Brian Cameron).  For example:

  <item type="list" id="language" combo="true">
     <pos  x="25" y="10" height="40" width="300"/>
  </item>
  <item type="list" id="session" combo="true">
    <pos x="50" y="10" height="40" width="300"/>
  </item>

- Now OK/Start Again buttons are sensitive/insensitive in a more
  sensible way for both mdmlogin and mdmgreeter (if GTK style buttons
  are used in mdmgreeter).  (Brian Cameron)

- Face Browser widget and background rectangle (for mdmgreeter)
  is not shown if there are no users to display.  (Brian Cameron)

- Help button now enabled in mdmphotosetup.  (Matthias Clasen)

- Fix so that if timed user script returns an invalid user that
  timed login is not turned on.  (Andrew)

- Fix bug that was causing %t to be expanded improperly when
  used in the timed login label.  (Brian Cameron)

- Set authdir to NULL after freeing to avoid accessing an invalid
  pointer.  Fixes bug #359831.  (Amnon Aaronsohn)

- Leaks fixed.  (Kjartan Maraas)

- Translation updates (Abel Cheung, Priit Laes, Daniel Nylander)

2.16.1 Stuff:

- Use g_markup_printf_escaped so mdmsetup better handles
  description strings that contains things similar to a tag
  like an email address.  Fixes bug #357998.  (Matthias
  Clasen)

- Fix mdmsetup so that the window manager close button works
  as the Close button in the dialog.  (Matthias Clasen)

- Fix for bug #352838, avoid crashing by moving call to get
  MDM_KEY_SYSTEM_MENU until after authentication check.
  (Frederic Crozat)

- Add g_type_init() to mdmflexiserver since this is needed
  for -a (authentication) code to work.  (Brian Cameron)

- Translation updates (Rahul Bhalerao, Runa Bhattacharjee,
  Alessio Frusciante, Priit Laes, David Lodge,
  \303\205smund Skj\303\246veland)

2.16.0 Stuff:

- Minor improvements to SDTLOGIN logic, used on Solaris to drop the
  Xserver to user permissions for added security.

- Translation updates (Subhransu Behera, \305\275ygimantas Beru\304\215ka,
  Runa Bhattacharjee, Stanislav Brabec, Abel Cheung, Theppitak
  Karoonboonyanan, Gabor Kelemen, Duarte Loreto, Jordi Mallach, Jovan
  Naumovski, Roozbeh Pournader, Josep Puigdemont i Casamaj\303\263,
  Rajesh Ranjan, Hendrik Richter, Danilo \305\240egan, Mugurel Tudor,
  Funda Wang, Matic \305\275gur)

- Highlights from the 2.15 release cycle.  MDM was enhanced to use
  giochannel for communication between the daemon and slaves and goption 
  instead of popt.  mdmsetup startup performance improved, and the
  "Options" button usability has been further improved.  The following
  bugs were fixed.
  327530 - Ensure login window always has focus.
  341619 - No longer save "Failsafe" sessions as user's default login.

2.15.10 Stuff:

- Now mdmlogin centers cursor in the GUI to ensure that the login
  window always has focus.  Fixes bug 327530.

- Translation updates (Subhransu Behera, Rahul Bhalerao, Wouter
  Bolsterlee, Maxim Dziumanenko, Artur Flinta, Leonid Kanter,
  Gabor Kelemen, Priit Laes, Ani Peter, Hendrik Richter, Satoru
  SATOH, Funda Wang

2.15.9 Stuff:

- The iochannel fix in 2.15.8 broke the face browser when using
  mdmgreeter.  Now fixed.  (Ray Strode)

- Fix so that focus never leaves the user/password entry when using
  the mdmgreeter Options button.  The previous fixes for this didn't
  take into account the situation where the user pops up the menu,
  but doesn't select an option.  (Brian Cameron)

- Fix error message that gets printed when you try to run MDM 
  daemon as a non-root user.  (Brian Cameron)

- The configure script now supports the Xserver installed in
  /usr/bin/Xorg.  (Ray Strode)

- Remove calls to syslog/malloc that are called from inside signal 
  handlers, since they are not safe.  (Ray Strode)

- Improved commands in MDM configuration files.  (Brian Cameron)

- Translation updates (Subhransu Behera, Rahul Bhalerao, Inaki Larranaga,
  Jovan Naumovski, Ankit Patel, Ani Peter)

2.15.8 Stuff:

- Fix to bugs causing mdmchooser to core dump when started.
  (Brian Cameron)

- Translation updates (Pawan Chitrakar, Christophe Merlet,
  Francisco Javier F. Serrador)

2.15.7 Stuff:

- Now MDM does not save Failsafe GNOME or Failsafe Xterm as the
  user's default session, so the user does not lose their 
  default setting when using Failsafe (bug #341619).  
  (Brian Cameron)

- Updated MDM's slave/daemon message handling so it uses 
  giochannel internal buffering.  This should prevent messages
  from getting lost.  (Ray Strode)

- Performance improvements to mdmsetup start-up.  (Ray Strode)

- Fix for compiling with GCC 2.95.  (Jens Granseuer)

- Translation updates (Beno\303\256t Dejean, Christophe Merlet,
  Lukas Novotny, Ahmad Riza H Nst, Kostas Papadimas, Hendrik
  Richter)

2.15.6 Stuff:

- Timed Login message fixed so it works when TimedLogin is set to a
  piped script.

- Fix decoding of suspend command so it works.

- Make sure that focus is returned to entry after dialogs are launched
  from the new Options button.

- NoHost icon updated to use official GNOME logo.  New default face
  image with a facelift.

- Scrolling regions in mdmsetup User tab are now scrollable
  vertically, improving UI experience.  mdmsetup now generates a 
  proper error message and fails when it can't find the custom
  configuration file.

- Translation updates (Runa Bhattacharjee, Raivis Dejus, I. Felix,
  Yair Hershkovitz, Inaki Larranaga, Chao-Hsiung Liao, Dukas Novotny,
  Daniel Nylander, Rajesh Ranjan, Hendrick Richter, Ilkka Tuohela)

2.15.5 Stuff:

- Correction to autologin PAM service name so automatic login works.
  (Brian Cameron)

- Fix compiler warnings that were causing core dumping issues on
  some platforms (Brian Cameron)

- Translation updates (Josep Puigdemont Casamaj\303\263,
  Changwoo Ryu)

2.15.4 Stuff:

- Correction for serious security issue where the user can enter the
  MDM configuration GUI with a user password when the Face Browser
  is enabled.  Refer to bugzilla.gnome.org bug #343476 (Brian
  Cameron)  This issue impacts all versions of MDM 2.8.0.0-2.8.0.7,
  2.14.0-2.14.7, and 2.15.0-2.15.3.  This issue was reported to
  vendor-sec one week ago and has ID #CVE-2006-2452.

- Fixed bug where when the "Include All" button is modified in the
  Users tab, the Automatic/Timed login dropdown lists update
  properly.  (Brian Cameron)

- Now mdmflexiserver calls mdmcomm_check with FALSE so it will not
  pop up a dialog.  mdmflexiserver can be run with the --command
  option which can be used when the user does not have permission to
  a DISPLAY, so trying to show a dialog was causing mdmflexiserver
  to core dump when the check failed.   (Brian Cameron)

- Added gestures to the AccessKeyMouseEvents configuration file
  so that users can access more accessibility features using
  dwell gestures.  (Brian Cameron)

- Now Welcome message is saved in the configuration file in 
  UTF-8 format for better readability.  (Frederic Peters)

- The MDM daemon once again supports the -nodaemon option.
  (Ray Strode)

- Improvements to Face Browser.  Now do not ask the user to
  re-enter username on password failure.  The cancel button
  must now be used to unselect a user.  (Brian Cameron)

- Now when GTK+ style buttons are used in mdmgreeter themes, 
  focus always returns to the entry field after clicking on
  a button.  (Brian Cameron)

- Now per-display configuration works for greeter/SystemMenu
  and greeter/ChooserButton keys.  (Brian Cameron)

- "make install" no longer fails if chown fails.  (Brian
   Cameron)

- If authdir is the fallback dir.  If not, and MDM cannot 
  access the user's $HOME directory, then try and use the
  fallback directory.  (Arjan Timmerman)

- Translation updates (Pema Geyleg, Theppitak Karoonboonyanan,
  Gabor Kelemen, Priit Laes, Kjartan Maraas, Ankit Patel,
  Ignacio Casal Quinteiro, Francisco Javier F. Serrador,
  Clytie Siddall, Alexander Shopov, Vincent van Adrighem)

2.15.3 Stuff:

- No longer use popt in favor of glib's GOption command line parsing.
  Note that this removes the single-dash options MDM used to support
  (such as the mdm -nodaemon option which is now --nodaemon) which
  were originally supported so MDM would be more like XDM.  Users who
  depend on the single dash options will need to change to use the
  non-deprecated double-dash options.  (Christian Kirbach)

- Fix bug that was causing ShowGnomeFailsafeSession and 
  ShowGnomeXtermSession configuration values to not work. (Brian
  Cameron)

- Now add mdm-ssh-session to distribution tarball, and fix the
  ssh-session.desktop file so that it sets the right TryExec
  value even if --libexecdir isn't passed into configure.
  (Brian Cameron)

- Use ngettext in gui/mdmcommon.c for building the Timed Login
  message.  (Benoit Dejean)

- Translation updates (Chao-Hsiung Liao, Gora Mohanty, Ankit Patel)

2.15.2 Stuff:

- Correct build to include translation files.

- Fix layout of new buttons in mdmgreeter themes.

- Translation updates (Alexander Shopov)

2.15.1 Stuff:

- Correct double free that was causing a core dump in the last release.
  (Joe Marcus Clark)

- Improvements to signal handling, fixing problem where MDM slave can
  hang on read.  Fixes bug #336549.  (Ed Catmur, Brian Cameron)

- "Start Over" string changed to "Start Again" after another round of
   UI review (Brian Cameron, Calum Benson)

- Better configure support for FreeBSD.  Now the default configuration
  should be better integrated with kernel/system interfaces.  (Joe
  Marcus Clark)

- Fix security/AllowRemoteAutoLogin and fix SuspendCommand configuration
  so it honors SystemMenu.  (Brian Cameron)

- Correct installation of mdm-ssh-session and now the desktop file is
  translated.  (Brian Cameron)

- Correct invocation of PreFetch, when enabled, so it only executes
  once.  (Brian Cameron)

- Translation updates (Josep Puigdemont Casamaj\303\263, Beno\303\256t
  Dejean, Pema Geyleg, Inaki Larranaga, Daniel Nylander, Ignacio Casal
  Quinteiro, Francisco Javier F. Serrador, Alexander Shopov, Ilkka
  Tuohela, Funda Wang)

2.15.1 stuff:

- Explicitly adjust the effective GID before running the child session
  program to avoid remaining with high privileges.  Fixes bug #340347.
  (Julio M. Merino Vidal)

- Now allow the PAM Stack to be specified in the MDM configuration instead
  of being hardcoded to "mdm".  (Brian Cameron)

- Per-display configuration is now supported.  The user may create 
  /etc/mdm/custom.conf:<dispnum> files (/etc/mdm/custom.conf:0 for display :0)
  and GUI related configuration settings in the per-display file will override
  for that display.  (Brian Cameron)

- Greeter themes now support real GTK+ button types, making mdmgreeter
  better support a11y and allow GTK themeable buttons.  (Brian Cameron)

- New pam-error-logo greeter type to allow an image to be displayed only
  when the PAM error message label is showing a message.  (Brian Cameron)

- Updated config/gettextfoo.h to reflect current strings for translation.
  Fixes bug #340017.  (Brian Cameron)

- Updated comments in MDM configuration files (Brian Cameron)

- MDM now uses the string "Start Over" instead of "Cancel" in the GUI.
  (Brian Cameron)

- Many updates to documentation.  Explain gtk-theme greeter tag, new button and
  pam-error-icon, and startover greeter types, and better info about PAM.
  (Brian Cameron)

2.14.13 stuff:

- Fix for CVE-2007-3381, a denial of service attack where the
  user can crash the MDM daemon with a carefully crafted
  MDM sockets command and cause MDM to stop managing future
  displays.  MDM now is much better about safeguarding against
  NULL values returned from g_strsplit calls.  (Brian Cameron)

- Translation updates (Christophe Merlet)

2.14.12 stuff:

- The MDM configuration option daemon/PidFile is now deprecated and
  MDM now always uses /var/run/mdm.pid.  The location can be configured
  at compile time with the configure --with-pid-file option.  This
  fixes bug #162849.  (William Jon McCann)

- Fix strcpy so source and destination do not overlap.  Fixes bug
  #424299.  (Ray Strode)

- Remove gnome glade references since GNOME does not use libglade anymore.
  (Kristof Vansant)

- Fix comparison with string literal in mdmdynamic.  (Hans Petter Jansson)

2.14.11 stuff:

- Fix for a recently reported security issue that has ID
  CVE-2006-6105.  This fixes a problem where a user can 
  enter strings like "%08x" into the mdmchooser entry and
  press the "Add" host button to print out memory contents.
  This issue was introduced into MDM 2.13.0.

- Set authdir to NULL after freeing to avoid accessing an invalid
  pointer.  Fixes bug #359831.  (Amnon Aaronsohn)

- Fix custom lists so that focus does not ever leave the
  username/password entry field.  (Brian Cameron)

- Remove calls to syslog/malloc that are called from inside signal
  handlers, since they are not safe.  (Ray Strode)

- The configure script now supports the Xserver installed in
  /usr/bin/Xorg.  (Ray Strode)

- Fix error message that gets printed when you run MDM
  as non-root user. (Brian Cameron)

2.14.10 stuff:

- Fix so that MDM does not save the Failsafe GNOME or Xterm
  session as the user's default.  (Brian Cameron)

- Fix mdmchooser crash issue.  (Brian Cameron)

- Performance tunings for mdmsetup startup. (Ray Strode)

- Fix decoding of suspend message in the daemon so the suspend
  command works.  (Philippe Troin)

- Fix timed login message so it works when TimedLogin is set to use
  a piped script (Brian Cameron)

- Make sure focus is returned to the entry field when using the
  "Options" button.  (Brian Cameron)

- Fix issue causes mdmsetup to fail improperly when the custom
  configuration file cannot be found.  (Brian Cameron)

- The nohost icon has been updated to use official GNOME logo,
  nobody icon has been given a facelist. (Diana Fong)

- Translation updates (\305\275ygimantas Beru\304\215ka,
  Josep Puigdemont Casamaj\303\263, Raivis Dejus, Yair
  Hershkovitz, Christophe Merlet, Lukas Novotny, Hendrik
  Richter)

2.14.9 stuff:

- Correction to autologin PAM service name so automatic login works.
  (Brian Cameron)

- Fix compiler warnings that were causing core dumping issues on
  some platforms (Brian Cameron)

- Translation updates (Josep Puigdemont Casamaj\303\263)

2.14.8 stuff:

- Correction for serious security issue where the user can enter the
  MDM configuration GUI with a user password when the Face Browser
  is enabled.  Refer to bugzilla.gnome.org bug #343476 and
  CVE-2006-2452.  (Brian Cameron)

- Fixed bug where when the "Include All" button is modified in the
  Users tab, the Automatic/Timed login dropdown lists update
  properly.  (Brian Cameron)

- Now mdmflexiserver calls mdmcomm_check with FALSE so it will not
  pop up a dialog.  mdmflexiserver can be run with the --command
  option which can be used when the user does not have permission to
  a DISPLAY, so trying to show a dialog was causing mdmflexiserver
  to core dump when the check failed.   (Brian Cameron)

- Added gestures to the AccessKeyMouseEvents configuration file
  so that users can access more accessibility features using
  dwell gestures.  (Brian Cameron)

- Translation updates (Laurent Dhima, Pema Geyleg, Theppitak
  Karoonboonyanan, Gabor Kelemen, Ahmad Riza H Nst, Vincent
  van Adrighem)

2.14.7 stuff:

- Correct build/install issues with mdm-ssh-session and the desktop
  file.  (Brian Cameron)

- Fix bug that was causing the greeter/ShowGnomeFailsafeSession and
  ShowGnomeXtermSession configuration values to not work.  (Brian
  Cameron)

- Fix mdmgreeter so the entry field always has focus after a button
  press when using real GTK+ buttons in the theme.  (Brian Cameron)

- Now per-display configuration works with the greeter/SystemMenu and
  greeter/ChooserButton keys.  (Brian Cameron)

- Corrected a problem with MDM not using the fallback directory when
  it cannot access the user's $HOME directory.  (Arjan Timmerman)

- "make install" no longer fails if user cannot run chown.
  (Brian Cameron)

- Translation updates (Takeshi AIHANA, Rhys Jones, Priit Laes,
  Chao-Hsiung Liao, Gora Mohanty, Daniel Nylander, Kostas
  Papadimas, Ankit Patel, Ignacio Casal Quinteiro, Francisco
  Javier F. Serrador, Alexander Shopov, Clytie Siddall, Ilkka
  Tuohela, Vincent van Adrighem, Funda Wang)

2.14.6 stuff:

- Backporting some useful features from 2.15 to 2.14.   Per-display
  configuration and new mdmgreeter theming options (real GTK+ buttons,
  pam-error-logo, and "startagain" stock label is displayed as "Cancel".
  Note that the default themes shipped with MDM 2.14 do not use these
  features, but this patch means newer themes made with 2.15 should now
  work with this version of 2.14 and above. No strings were changed due
  to this change.  (Brian Cameron, Erwann Chenede)

- Improvements to signal handling, fixing problem where MDM slave can
  hang on read.  Fixes bug #336549.  (Ed Catmur, Brian Cameron)

- Better configure support for FreeBSD.  Now the default configuration
  should be better integrated with kernel/system interfaces.  (Joe
  Marcus Clark)

- Fix security/AllowRemoteAutoLogin and fix SuspendCommand configuration
  so it honors SystemMenu.  (Brian Cameron)

- Correct installation of mdm-ssh-session and now the desktop file is
  translated.  (Brian Cameron)

- Correct invocation of PreFetch, when enabled, so it only executes
  once.  (Brian Cameron)

- Translation updates (Josep Puigdemont Casamaj\303\263, Beno\303\256t
  Dejean, Pema Geyleg, Inaki Larranaga, Daniel Nylander, Ignacio Casal
  Quinteiro, Francisco Javier F. Serrador, Alexander Shopov, Ilkka
  Tuohela, Funda Wang)

2.14.5 stuff:

- Explicitely adjust the effective GID before running the child session
  program to avoid remaining with high privileges.  Fixes bug #340347.
  (Julio M. Merino Vidal)

- Updated config/gettextfoo.h to reflect current strings for translation.
  Fixes bug #340017.  (Brian Cameron)

- Updated comments in MDM configuration files (Brian Cameron)

- Translation updates (Takeshi AIHANA, Josep Puigdemont Casamaj\303\263,
   Artur Flinta, Priit Laes, Chao-Hsiung Liao, Lukas Novotny, Daniel
   Nylander, Ignacio Casal Quinteiro, Francisco Javier F. Serrador,
   Alexander Shopov, Funda Wang)

2.14.4 stuff:

- Backing out LINGUAS change which is only for the 2.15 release.

- Translation updates (Josep Puigdemont Casamaj\303\263, Daniel Nylander,
  Ignacio Casal Quinteiro, Alexander Shopov)

2.14.3 stuff:

- Fixed bug where mdmchooser was ignoring hosts passed in on the command line.
  Now mdmchooser works properly when BROADCAST is set to false.  (Brian
  Cameron, Tiago Vignatti)

- Marked strings as translatable and fix mdmsetup.desktop file so it is
  translated.  (Vincent Fretin)

- Fix to conform to C89 compilers.  (Jens Granseuer)

- Translation updates (Josep Puigdemont Casamaj\303\263, Artur Flinta,
  Chao-Hsiung Liao, Kjartan Maraas, Ignacio Casal Quinteiro, Francisco Javier
  F. Serrador,  Funda Wang)

2.14.2 stuff:

- Now include gui/mdmthemetester.in in the distribution.  It being missing
  was causing the module to fail to compile.  (Brian Cameron)

- Fix to the BROADCAST key in mdmchooser so it should now work.  (Brian
  Cameron, kudos to Tiago Vignatti)

- Further cleanups to Addresses CVE-2006-1057.  (Hans Petter Jansson,
  Ray Strode)

- Path and RootPath now do not contain /usr/bin or /bin more than once.
  (Brian Cameron)

- Translation updates (Takeshi AIHANA, \305\275ygimantas Beru\304\215ka,
  Laurent Dhima, Pema Geyleg, Lukas Novotny)

2.14.1 stuff:

- The sockets connection between the slaves and the MDM daemon is now
  better managed to better ensure that sockets are never left open.
  This work also makes mdmsetup start faster.  (Brian Cameron)

- Corrected bug that causes a core dump when you click on mdmgreeter
  fields that have an id.  (Brian Cameron)

- Add new MdmXserverTimeout configuration setting so that the length of
  time MDM waits for the Xserver to start can be tuned, so MDM better
  works with Xservers that require more than 10 seconds to start.
  (Emilie)

- The happygnome and happygnome-list mdmgreeter themes now use the
  official logo.  (Brian Cameron)

- Now MDM configure supports --with-sysconfsubdir so that MDM's 
  configuration directory can be configured to not have "/mdm" appended
  to the end.  (Julio M. Merino Vidal)

- Fix for ensuring .ICEauthority file has proper ownership/permissions.
  Addresses CVE-2006-1057.  (Hans Petter Jansson)

- Fix "Show Actions Menu" section in mdmsetup so it appears when both
  "Plain" and "Themed" style is chosen.  (Brian Cameron, Dennis
  Cranston)

- Now use LINGUAS procedure for defining languages.  (Michiel Sikkes)

- Now Xsession script uses "$@" instead of "$1" so it is possible to
  pass arguments with the command to run.  (Brian Cameron)

- Add Trusted Solaris support.  (Niall Power)

- One line fix to Solaris auditing logic that fixes a bug causing
  authentication to fail when auditing is turned on.  (Brian Cameron)

- Fixes to compile with C99 and fixes to compile under NetBSD.
  Remove EXPANDED_* variables from the configure.  (Julio M. Merino
  Vidal)

- Translation updates (\305\275ygimantas Beru\304\215ka, Beno\303\256t
  Dejean, Laurent Dhima, Maxim Dziumanenko, Alessio Frusciante, Rhys
  Jones, Raphael Higino, Theppitak Karoonboonyanan, Gabor Kelmen,
  Priit Laes, Jordi Mallach, Kjartan Maraas, Daniel Nylander, Kostas
  Papadimas, Guilherme de S. Pastore, Ankit Patel, Ignacio Casal
  Quinteiro, Hendrik Richter, Jens Seidel, Francisco Javier F. Serrador,
  Alexander Shopov, Clytie Siddall, Ilkka Tuohela, Vincent van Adrighem,
  Tommi Vainikaninen)

2.14.0 stuff:

- Now MDM will update the actual custom configuration file used by
  the daemon, so if mdm.conf is being used by the daemon, it will
  also be edited by mdmsetup.

- Now the Options menu will appear below the button if there is room,
  and above the button otherwise.  Previously it always appeared above,
  even if there was no room.

- Fix sound-on-login-success and sound-on-login-failure configuration
  options so they are honored.  Previously the sounds were playing even
  if set to false.

- Translation updates (Stanislav Brabec, Beno\303\256t Dejean,
  Laurent Dhima, Priit Laes, Ole Laursen, Lukas Novotny, Daniel
  Nylander, Rajest Ranjan, Alexander Shopov, Mugurel Tudor, Ilkka
  Tuohela, Tommi Vainikainen, Vincent van Adrighem)

2.13.0.10 stuff:

- Now MDM will use the mdm.conf file if it exists as the custom.conf
  file, so if the user has an old configuration file it will continue
  to use that.  (Brian Cameron)

- Translation updates (Gabor Kelemen, Alexander Shopov)

2.13.0.9 stuff:

- New "gtk-theme" property can be used with the <greeter> tag in
  mdmgreeter themes to specify a theme to control the appearance
  of the F10/Options menu, the entry field, and other GTK+
  widget appearance.  (Brian Cameron)

- Core dumping problem with mdmgreeter should be fixed.  (Brian
  Cameron)

- Some fixes to memory management.  Memory leak issues resolved.
  (Brian Cameron)

- Correct error message that is printed when ServAuthDir isn't
  owned by root:mdm.  THis doesn't affect localization since
  the string didn't change, just the value placed into the %s
  sequence.  (Brian Cameron)

- Some C-99 compile issues resolved.  (Jans Granseuer)

- Translation updates (Takeshi AIHANA, \305\275ygimantas
  Beru\304\215ka, Raphael Higino, Inaki Larranaga, Rhys Jones,
  Leonid Kanter, Priit Laes, Chao-Hsiung Liao, Duarte Loreto,
  Kjartan Maraas, Kostas Papadimas, Satoru SATOH, Clytie
  Siddall, Slobodan D. Sredojevic)

2.13.0.8 stuff:

- Because the main mdm.conf file is now read-only, contains distro
  defaults and is not to be edited by the user, the file has been
  moved to ${datadir}/mdm/defaults.conf (also factory-mdm.conf is
  now %{datadir}/mdm/factory-defaults.conf).  Users can use the
  --with-defaults-conf to specify the location of this file.
  Note that this means that distributions who want to preserve MDM 
  configuration set by those using older versions of MDM should use
  preinstall/postinstall scripts to move the /etc/mdm/mdm.conf file
  to /etc/mdm/mdm.conf-custom if the file has been edited (compare
  against /etc/mdm/factory-mdm.conf to see if it has been modified).
  "make install" for MDM does this if building from source.  MDM
  docs updated to reflect this change.

- Lots of performance issues with the MDM sockets connection improved.
  Now the code deals much better with failures, and better debug is
  printed to the log.

- Improved debug logic in MDM slaves so they use common functions.

- Fix mdmdynamic so it supports up to hundreds of displays rather than
  just a dozen or so.  Now mdmdynamic backs off on sending sockets
  commands to the server if it is being flooded with requests.  Added
  new "SERVER_BUSY" sockets command to support this feature and new
  -t and -s command line options so the back-off behavior can be 
  tuned, if needed.

- The config logic for the slaves will now return the compiled in
  value if it fails to connect to the server for better behavior.

- mdm-restart, mdm-safe-restart, mdm-stop, and mdm.spec now use
  mdmflexiserver to get config data rather than trying to grep and 
  awk the config file directly.  

- Fix Xsession script so zenity calls work.

- Lots of improvements to the MDM docs.  Added section about "PAM" in
  Security.  Add comment that +xkb is needed for keyboard gesture
  listeners (accessibility) to work.  Also updated README and 
  README.install and moved some information that was in these files
  to the docs.

- Bump MAX_CONNECTIONS from 10 to 15 so that the daemon will accept
  more connections from slaves.  This improves performance when the
  daemon is flooded with requests.

- Fix include statement in daemon/mdmconfig.c to fix compile problem
  on LFS.

- Translation updates (Raphael Higino, Theppitak Karoonboonyanan,
  Priit Laes, Kjartan Maraas, Lukas Novotny, Ankit Patel,
  Josep Puigdemont i Casamaj\303\263, Ignacio Casal Quinteiro,
  Hendrik Richter, Francisco Javier F. Serrador, Clytie Siddall,
  Slobodan D. Sredojevic, Ilkka Tuohela, Vincent van Adrighem,
  Funda Wang, Adam Weinberger)

2.13.0.7 stuff:

- Turns out the core dumping issue that was supposed to be fixed in 2.13.0.6
  wasn't really fixed.  Now it is.  (Sebastien Bacher)

- New "options_button" available for mdmgreeter themes.  This pops up 
  the F10 menu which has all the choices found in the Disconnect, System,
  Sessions, and Language buttons so that themes can have a cleaner 
  1-button look.  The default circles, happygnome, and happygnome-list
  themes now use this style.  (Sebastien Bacher, Brian Cameron)

- Fix bugs that were causing User24HourClock=auto to not work properly.
  Now MDM should properly grab the system time format when auto is set.
  (Christopher Aillon)

- Fix bug in PreSession script that was causing it to not properly set the
  background color before starting user session.  (Brian Cameron)

- MDM docs now has a troubleshooting section.  (Brian Cameron)

- Make sure /usr/openwin/bin is in PATH on Solaris, since this is needed
  for PreSession/PostSession scripts to find sessreg and other needed
  X programs.  (Brian Cameron)

- String change of "XDMCP Chooser" to "Remote Login via XDMCP".
  (Brian Cameron)

- Minor tweaks to default/example mdmprefetchlist file so it works 
  better for GNOME 2.14 out of the box.  (Brian Cameron)

- Translation updates (Stanislav Brabec, Theppitak Karoonboonyanan,
  Chao-Hsiung Liao, Kjartan Maraas, Lasse Bang Mikkelsen, Kostas Papadimas,
  Ankit Patel, Ignacio Casal Quinteiro, Alexander Shopov, Clytie Siddall,
  Slobodan D. Sredojevic, Ilkka Tuohela, Vincent van Adrighem,
  Adam Weinberger, Funda Wang)

2.13.0.6 stuff:

- The core dumping issue mentioned in the previous release note has been 
  corrected.  IncludeAll and the Face Browser should no longer core dump.
  (Sebastien Bacher)

- Using "restart" instead of "reboot" in messages.  (Brian Cameron)

- Docs added for "Secure Remote" feature added in last release.  (Dominique
  Hazael-Massieux)

- Translation updates (Kjartan Maraas, Lasse Bang Mikkelsen, Ankit Patel,
  Ignacia Casal Quinteiro, Clytie Siddall, Ilkka Tuohela)

2.13.0.5 stuff:

Note: Some users have been complaining that MDM 2.13.0.4 core dumps when the
      IncludeAll feature is turned on, and the face browser is also being used.
      I can not recreate this problem on my machine, so this issue may still
      exist on some platforms.

- MDM now supports secure remote login which can be enabled by using
  --enable-securelogin at configure time.  (Dominique Hazael-Massieux)
  
- Fixed mdmsetup so the Logo/Background file chooser does not generate assert
  warnings and no longer will reset your logo/background to NULL.  I think this
  problem was causing occasional core dumping issues.  Also cleaned up memory
  management in mdmsetup a bit.  (Brian Cameron)

- Now SELinux initialization logic does not use setexeccon if 
  is_selinux_enabled returns -1.  (Dan Walsh)

- The prefetch logic that is enabled by using --with-prefetch was improved
  and MDM will now install a default librarylist if the feature is enabled.
  Now MDM will only launch the mdm_prefetch program the first time that a
  greeter is displayed.  Since this behavior is very specific to the needs
  of prefetching libraries, the mdm.conf key changed from PostDisplayProgram
  to PreFetchProgram.  (Padraig O'Briain/Brian Cameron)

- MDM no longer requires libgnome or libgnomeui at all.  This should improve
  MDM performance and make MDM more lightweight.  (Jani Monoses)

- MDM Daemon now uses the GDK_DISPLAY_XDISPLAY macro instead of the 
  GDK_DISPLAY macro since the GDK_DISPLAY macro causes the MDM daemon to
  require the libgdk-x11 library to always be loaded into memory.  Now it can
  lazyload this library only when needed (when MDM daemon displays error GUI's
  which only happens when MDM can't start up properly).  This should improve
  performance and make MDM more lightweight for the normal case where MDM does
  start up.  (Brian Cameron)

- Minor cleanup of mdmsetup.  (Dennis Cranston)

- Caps lock and Shut down messages changed to be more consistent between
  mdmlogin and mdmgreeter.  Error message provided when session file is 
  invalid now tells you the name of the offending file.  (Brian Cameron)

- MDM docs given some attention, new "Security" and "Performance" sections and
  a good bit of information added to the "Introduction" and "Accessibility"
  sections.  (Brian Cameron)

- Translation updates (Takeshi AIHANA, Chao-Hsiung Liao,
  Theppitak Karoonboonyanan, Kjartan Maraas, Ankit Patel, Josep Puigdemont,
  Ignacio Casal Quinteiro, Francisco Javier F. Serrador, Clytie Siddall,
  Alexander Sopov, Slobodan D. Sredojevic, Ilkka Tuohela, Vincent van Adrighem,
  Adam Weinberger)

2.13.0.4 stuff:

Interface Changes:

- This version of MDM handles its configuration files slighly differently.
  Now users are not recommended to modify the installed mdm.conf file and
  are instead encouraged to make changes to mdm.conf-custom.  The mdmsetup
  program now saves user configuration changes to the mdm.conf-custom file.
  Configuration options specified in mdm.conf-custom file override the values
  in the main mdm.conf file.  

  This allows distributions to overwrite the mdm.conf file without worry
  that the file contains any user customizations.  When running "make install"
  MDM now compares the already installed mdm.conf with the already installed
  factory-mdm.conf file and if they both exist and are not the same, then
  mdm.conf file is moved to mdm.conf-custom to preserve user changes.  If the
  mdm.conf-custom file already exists it is renamed to mdm.conf.org.
  Distributions should do the same when upgrading MDM.

  Note that this change is backwards compatible.  MDM will still work as
  it did before even if no mdm.conf-custom file exists on the system.
  (Brian Cameron)

- mdmconfig no longer supports the --config command line option since it
  now accesses the configuration data over the sockets protocol rather
  than reading the configuration files directly.  Note the MDM daemon still
  supports the --config command line option.

- Added PostDisplayProgram and the --with-prefetch configuration option
  to support MDM running a prefetch script to preload libraries when it
  firsts starts the greeter program, which has been shown to improve first
  time login time.  (Padraig O'Briain, Brian Cameron)

- Add new priority configuration option for servers defined in the 
  [server-foo] section of the configuration files.  This can be set from
  -20 to +20 in order to specify the priority value given to the Xserver
  on startup.  (Philip Prindeville)

Other Changes:

- This release completes the internal redesign of MDM's configuration
  system.  Now all configuration information is read by the daemon and
  accessed via the MDM sockets protocol.  The GET_SERVER_LIST and
  GET_SERVER_DETAILS sockets commands were added to support accessing the
  [server-foo] sections of the configuration file via the sockets protocol.
  (Brian Cameron)

- Merged code for parsing character sequences in mdmgreeter labels and
  the Welcome/RemoteWelcome keys, so now they are handled the same by both
  mdmlogin and mdmgreeter.  Now %d is used for display number and %s is the
  system name (uname.sysname).  The previously undocumented sequences are now
  explained in the documentation.  (Brian Cameron)

- Fixed bug that caused TimedLogin/AutomaticLogin to be turned on if it had a
  username value but TimedLoginEnable/AutomaticLoginEnable had a "false" 
  value.  (Brian Cameron)

- Fixed bug that caused the TimedLogin user to be logged in if the user
  hit the "ENTER" key without entering a password.  Mention in the MDM
  documentation that if the user does not enter a username but just hits
  the ENTER key while the login program is requesting the username, then 
  MDM will just login as the timed user.  (Brian Cameron)

- Removed libgnome as a MDM dependency and removed most libgnomeui 
  dependencies.  Redesigning MDM's configuration allowed MDM to stop using
  deprecated gnome_config interfaces, for example.  (Brian Cameron)

- Fixed a bug with keeping the sockets protocol open for multiple commands
  that was included in the last release, and fixed memory handling issues
  that was causing core dumping with mdmsetup in the previous release.
  (Brian Cameron)

- Fixed bug with the --with-configdir configure option.  (Brian Cameron)

- Now use glib stdio functions like g_chmod instead of chmod. 
  (Brian Cameron)

- Corrected typos and grammar (Brian Cameron, Asmund Skjaeveland, Adam
  Weinberger)

- Translation updates (Takeshi AIHANA, \305\275ygimantas Beru\304\215ka,
  Theppitak Karoonboonyanan, Kostas Papadimas, Ankit Patel, Ignacio Casal
  Quinteiro, Francisco Javier F. Serrador, Clytie Siddall, Marcel Telka, Ilkka
  tuohela, Funda Wang, Adam Weinberger)

2.13.0.3 stuff:

- Minor UI improvements to mdmsetup (Dennis Cranston, Calum Benson)

- Removed libgnome dependencies for all MDM programs except mdmflexiserver and
  mdmsetup.  These should be fixed for the next release.  (Jani Monoses, Brian
  Cameron)

- Now communications protocol used by client does not shut down after each
  call, improves performance.  (Brian Cameron)

- More clear stability information about mdm.conf file in README (Brian
  Cameron)

- Translation updates (Takeshi AIHANA, \305\275ygimantas Beru\304\215ka,
  Theppitak Karoonboonyanan, Kjartan Maraas, Christophe Merlet, Francisco
  Javier F. Serrador, \303\205smund Skj\303\246veland, Alexander Shopov, Marcel
  Telka, Miloslav Trmac, Ignacio Casal Quinteiro, Adam Weinberger)

2.13.0.2 stuff:

- Further redesign of configuration parsing logic.  Now all MDM slaves (except
  mdmsetup) use the GET_CONFIG socket command to access configuration data.
  This means all configuration parsing is now handled in one place, the daemon.
  Improvements to the daemon configuration parsing so it correctly parses and
  validates all parameters used by the slave programs.  Also fix some compile
  issues that were causing problems with certain configurations.  (Brian
  Cameron)

- Improved the GET_CONFIG command so that you don't have to include the default
  value (you can use "greeter/IncludeAll" instead of having to use
  "greeter/IncludeAll=false".   Also you can access keys that contain
  translatable strings (e.g. "greeter/Welcome[cs]") via the GET_CONFIG command.
  (Brian Cameron)
  
- Changes to peeking VT freeness in 2.13.0.1 broke virtual terminal support on
  BSD.  This release corrects this problem.  (Brian Cameron)

- Correct Linux get VT logic so it returns the correct VT.  (Frederic Crozat)

- Now mdmlogin always uses GDK_RGB_DITHER_MAX when painting the background to
  ensure a nice background regardless of X configuration (e.g. X in 16bpp
  mode).  (Frederic Crozat)

- Now check for Xserver in prefix /usr.  (J\303\274rg Billeter)

- Fix configure for Darwin. (dmacks@netspace.org)

- Fix compiler warnings. (Frederic Crozat, dmacks@netspace.org, Brian Cameron)

- Ensure gnome.desktop and default.desktop have 644 perms.  (Andrew Benton)

- Translation updates (Takeshi AIHANA, \305\275ygimantas Beru\304\215ka,
  Theppitak Karoonboonyanan, Priit Laes, Ignacio Casal Quinteiro, Alexander
  Shopov, Francisco Javier F.  Serrador, Marcel Telka, Funda Wang,
  Adam Weinberger)

2.13.0.1 stuff:

- Complete redesign of mdmsetup so it follows usability recommendation mockups
  by Calum Benson.  (Dennis Cranston, Calum Benson)

- mdmsetup now supports drag-and-drop for new themes.  (Dennis Cranston)

- The chooser GUI has been HIGified. (Dennis Cranston)

- Redesign of configuration parsing logic in the MDM daemon which simplifies
  how the UPDATE_CONFIG and GET_CONFIG commands work, better encapsulates the
  vicious-extensions logic, and cleans up the code.  (Brian Cameron)

- If slave does not respond to a SIGTERM, try a SIGKILL the second time.  This
  resolves a problem where MDM sometimes stops managing a display because it
  just keeps waiting for the slave to die.  See bug #113902.  (Vaclav Smilauer)

- MDM now uses VT_GETSTATE for peeking VT freeness (Samuel Thibault)

- Now MDM warns correctly about caps lock if an alternate keymap is enabled.
  kbGetState is used instead of XkbGetIndicator State. (Sebastien Bacher)

- Fixed race condition where a variable used by the signal handlers was not
  being set until after the signal handlers were setup.  Now it is set before
  avoiding a race.  (Simon Bowden/Brian Cameron)

- Now check for X server in prefix /usr.  (J\303\274rg Billeter)   

- Check for XInput fixed in configure and add a check for libgen.h to avoid
  compiler warnings.  (Brian Cameron)

- Updated check in configure for socklen_t so it includes sys/socket.h to
  better support BSD platforms that define socklen_t there.
  (dmacks@netspace.org)

- Kurdish added to ALL_LINGUAS. (Erdal Ronahi)

- Translation updates (Takeshi AIHANA, Dan Damian, Theppitak Karoonboonyanan,
  Priit Laes, Chao-Hsiung Liao, Roozbeh Pournader, Erdal Ronahi, Francisco
  Javier F. Serrador, Marcel Telka, Funda Wang, Adam Weinberger)

2.13.0.0 stuff:

- Fix problem with PostSession script not always being executed when user kills
  the Xserver with ctrl-alt-backspace.  Fixes bug #152906. (Jerry G. DeLapp)

- No longer set tooltips for menu items in mdmlogin.  These do not work with
  accessibility and no GNOME programs use menu tooltips, it is not recommended.
  (Brian Cameron)

- Change the way the "OK" and "Cancel" buttons work so they are consistent.
  Now the "Cancel" button in mdmlogin is active when the Username is requested
  and just clears the field.  This makes mdmlogin work like mdmgreeter.  Now
  make the buttons insensitive when the ok/enter/tab is pressed and make them
  sensitive again when the greeter wants entry.  This fixes a bug where the
  greeter's memory could get corrupted by pressing "Cancel" after
  authentication (which would only happen if the PostLogin script caused a long
  enough delay to allow this to happen or perhaps on a really slow machine).
  (Brian Cameron)

- Correct reading of config file in mdmflexiserver.  (Christiaan Welvaart)

- GNOME HIG fixes for the Language, Session, and Message dialogs.  (Dennis
  Cranston)

- Define SoundProgram to be /usr/bin/audioplay instead of /usr/bin/play on
  Solaris.  /usr/bin/play does not exist on Solaris.

- Better /etc/default/login support on Solaris.  Previously it supported only
  PASSREQ.  Now it supports PATH, SUPATH and CONSOLE (the same ones CDE login
  supports).  Added new PasswordRequired mdm.conf setting so that PASSREQ can
  be controlled via mdm.conf as well.

- Memory leaks fixed.  (Steve Grubb/Brian Cameron)

- Improvements to strings and docs (Adam Weinberger, Brian Cameron)

- Translation updates (Takeshi AIHANA, Runa Bhattacharjee, Priit Laes,
  Chao-Hsiung Liao, Ignacio Casal Quinteiro, Vincent van Adrighem, Funda Wang,
  Adam Weinberger)

2.8.0.8 stuff:

- Correction for serious security issue where the user can enter the
  MDM configuration GUI with a user password when the Face Browser
  is enabled.  Refer to bugzilla.gnome.org bug #343476 and
  CVE-2006-2452. (Brian Cameron)

- Translation updates (Stanislav Brabec, Josep Puigdemont i
  Casamaj\303\263, Abel Cheung, Priit Laes, Christophe Merlet, Clytie
  Siddall, \303\205smund Skj\303\246veland, Tommi Vainikainen)

2.8.0.7 stuff:

- Changes to peeking VT freeness in 2.13.0.1 broke virtual terminal support on
  BSD.  This release corrects this problem.  (Brian Cameron)

- Correct Linux get VT logic so it returns the correct VT.  (Frederic Crozat)

- Now mdmlogin always uses GDK_RGB_DITHER_MAX when painting the background to
  ensure a nice background regardless of X configuration (e.g. X in 16bpp
  mode).  (Frederic Crozat)

- Now check for Xserver in prefix /usr.  (J\303\274rg Billeter)

- Fix configure for Darwin.  (dmacks@netspace.org)

- Fix compiler warnings. (Frederic Crozat, dmacks@netspace.org, Brian Cameron)

- Ensure gnome.desktop and default.desktop have 644 perms.  (Andrew Benton)

- Translation updates (Takeshi AIHANA, Runa Bhattacharjee, Dan Damian,
  Theppitak Karoonboonyanan, Inaki Larranaga, Priit Laes, Roozbeh Pournader,
  Alexander Shopov, Marcel Telka, Miloslav Trmac)

2.8.0.6 stuff:

- Fix problem with PostSession script not always getting executed when user
  kills the Xserver with ctrl-alt-backspace.  This is caused because an
  xioerror is generated when the clients are killed and this needs to be
  ignored for the PostSession script to be processed.  This problem tended not
  to manifest in MDM 2.6 since the call to kill the clients was made earlier.
  However, it was still a race condition in 2.6 and this fix ensures that the
  slave will never exit too early.  (Jerry G. DeLapp)

- The "OK" and "Cancel" buttons in mdmlogin and mdmgreeter now work
  consistently.  Now the mdmlogin "Cancel" button is active when the Username
  is requested and pressing it just clears the field, so it works like
  mdmgreeter.  Also fixed a bug in mdmgreeter where a user could corrupt
  mdmgreeter's memory by hitting cancel after authentication, which could only
  happen if the PostLogin script caused a long enough delay to allow this to
  happen.  (Brian Cameron)

- No longer set tooltips for menu items in mdmlogin.  They are distracting and
  do not work with accessibility.  No GNOME programs use menu tooltips and it
  is not recommend.  (Brian Cameron)

- If slave does not respond to a SIGTERM, try a SIGKILL the second time.  This
  resolves a problem where MDM sometimes stops managing a display because it
  just keeps waiting for the slave to die.  See bug #113902.  (Vaclav Smilauer)

- MDM now uses VT_GETSTATE for peeking VT freeness

- Now MDM warns correctly about caps lock if an alternate keymap is enabled.
  kbGetState is used instead of XkbGetIndicator State.  (Sebastien Bacher)

- Now set cursor and watch as soon as GTK+ is initialized and the configure
  file read, which shortens the amount of time the backgrounds is Xserver
  default grey.  Cleaned up the code so that all programs use a common
  function to set the background.  (Brian Cameron)

- Fix reading of config file in mdmflexiserver so it properly reads in the
  available servers.  (Christiaan Welvaart)

- Fixed race condition where a variable used by the signal handlers was not
  being set until after the signal handlers were setup.  Now it is set before
  avoiding a race.  (Simon Bowden/Brian Cameron)

- Define SoundProgram to be /usr/bin/autoplay on Solaris instead of
  /usr/bin/play, since /usr/bin/autoplay doesn't exist on Solaris.

- Check for XInput fixed in configure and add a check for libgen.h to avoid
  compiler warnings.  (Brian Cameron)

- Updated check in configure for socklen_t so it includes sys/socket.h to
  better support BSD platforms that define socklen_t there.
  (dmacks@netspace.org)

- No longer link vicious-extensions with the gesture listeners, since they
  do not use vicious-extensions.

- Translation updates (Takeshi AIHANA, Runa Bhattacharjee, Dan Damian, Maxim
  Dziumanenko, Laurent Dhima, Theppitak Karoonboonyanan, Priit Laes, Inaki
  Larranaga, Roozbeh Pournader, Ignacio Casal Quinteiro, Christian Rose, Ivar
  Smolin, Marcel Telka, Ilkka Tuohela, Miloslav Trmac)

2.8.0.5 stuff:

- mdmflexiserver supports --startnew option so that mdmflexiserver can be told
  to not pop-up the dialog asking if the user wants to start a current session.
  With this option it just always starts a new session.  This allows running
  mdmflexiserver from the screensaver, where the pop-up can't be interacted
  with due to the nature of the screensaver.  (Brian Cameron)

- Now mdmflexiserver supports gnome-screensaver if available, then defaults to
  xscreensaver. (William Jon McCann)

- Bug corrected in dwellmouselistener which caused it to always fail to
  recognize gestures.  (Brian Cameron)

- Added warning message if mdmgreeter theme supports face browser but does not
  have pam-message defined.  (Brian Cameron)

- mdmsetup and mdmphotosetup now only map right/left mouse buttons to button1
  when running under MDM.  When running as user, honor user defaults.  (Brian
  Cameron)

- XdmcpFill() failure is now logged as debug, since this happens when the
  client disconnects from the XDMCP server before the session was setup.
  (Bastien Nocera)

- mdmsetup fixed so when user modifies Include/Exclude list, the
  automatic/timed dropdown lists are updated immediately instead of having to
  stop and restart mdmsetup to see the users in the list. (Brian Cameron)

- Correct illegal reference to build directory in installed .la files.
  (Stanislav Brabec)

- Removed test that causes needless syslog() message on Solaris when auditing
  is turned off.  New docs explaining how to setup autologin on Solaris.
  (Brian Cameron)

- Translation updates (Gabor Kelemen, Priit Laes, Kjartan Maraas, Ankit Patel,
  Ignacio Casal Quinteiro, Hendrick Richter, Erdal Ronahi, Satoru SATOH,
  Francisco Javier F.  Serrador, Alexander Shopov, Clytie Siddall, Tommi
  Vainikainen, Funda Wang, Vincent van Adrighem, Adam Weinberger)

2.8.0.4 stuff:

- Corrected syslog debugging so it works better.  (Brian Cameron)

- Minor fix for clean 64 bit compilation.  (Brian Cameron)
	
- Fix address of website in README (Tommi Vainikainen)

- Translation updates (\305\275ygimantas Beru\304\215ka, Hendrik Brandt, Baris
  Cicek, Maxim Dziumanenko, Artur Flinta, Raphael Higino, Gabor Kelemen, Priit
  Laes, Chao-Hsiung Liao, Duarte Loreto, Jordi Mallach, Christophe Merlet,
  Ankit Patel, Changwoo Ryu, Francisco Javier F. Serrador, Nickolay V. Shmyrev,
  Clytie Siddall, Slobodan D. Sredojevic, Mugurel Tudor, Miloslav Trmac,
  Vincent van Adrighem)

2.8.0.3 stuff:

- The MDM website has moved to a new location and the MDM mail alias has moved from
  mdm@sunsite.dk to mdm-list@gnome.org.  README, and MDM docs updated with the
  new information and corrected broken link to the MDM Theme section at
  http://art.gnome.org/ (Brian Cameron)

- Installation location of mdmphotosetup.desktop has moved from the deprecated
  /usr/share/gnome/capplets to /usr/share/applications (Mark McLoughlin, Brian
  Cameron)

- Honor default session when logging in via autologin.  (Hans Petter Jansson)

- Removed spaces in locale name since it caused MDM to discard the locales.
  (Frederic Crozat)

- Added missing tooltips (Rodrigo Moya)

- Corrected reading of configuration file in mdmflexiserver so it works.  Fixes
  corrupted Session selection dialog presented to user.  (Brian Cameron)

- Correct use-after-free with the dynamic session in the sessions list,
  corrects tooltip corruption.  (Joe Marcus Clarke)

- Translation updates (Laurent Dhima, Raphael Higino, Rhys Jones, Gabor
  Kelemen, Priit Laes, Kjartan Maraas, Kostas Papadimas, Ignacio Casal
  Quinteiro, Francisco Javier F. Serrador, Alexander Shopov, Terance Sola,
  Marcel Telka, Mugurel Tudor, Funda Wang 

2.8.0.2 stuff:

- MDM now supports more dynamic configuration.  The mdm daemon supports the
  --config option which allows an alternative configuration file to be
  supported. The --with-configdir configure option may also be used to specify
  a system-wide configuration location so the mdm.conf file can be located on a
  mounted directory.  To support machine-specific configuration, an existing
  %sysconfdir/mdm configuration file will override a system-wide configuration
  file.  Refer to the MDM documentation for more information.  (Brian Cameron)

- New configuration option AlwaysLoginCurrentSession which will automatically
  switch the user to their previous session without asking.  This feature is
  turned off by default. (William Jon McCann)

- Now Use24Clock setting support "auto" which will use the system default for
  date/time formatting.  (Tommi Vainikainen)

- Better backwards compatibility support for Welcome and RemoteWelcome.  If
  using an old mdm.conf (older than 2.8.0.0) file that does not have settings
  for DefaultWelcome and/or DefaultRemoteWelcome, MDM will now continue to work
  as it did before 2.8.0.0.  (Brian Cameron)

- Usability improvements to mdmsetup.  "Face Browser" tab renamed to "User".
  Now tabs no longer have mnemonics, since this violates HIG.  Fixed broken
  sensitivity on the "Users" tab.  Improved labels.  (Brian Cameron)

- Support HIG style button layout in mdmlogin.  (William Jon McCann)

- Use GTK+ themed icon stock_person before falling back to the DefaultFace.
  (William Jon McCann)

- Usability improvements to the face browser when using mdmgreeter, now the
  background behind the userlist translucent.  (William Jon McCann)

- Usability improvements to mdmphotosetup, and now better follows HIG.
  (William Jon McCann)

- New selection of face browser images.  (William Jon McCann) 

- No longer stat or read face images from remote home directories.  (William
  Jon McCann)

- New mdmflexiserver command "GET_CONFIG_FILE" which will return the location
  of the configuration file being used by the daemon.  (Brian Cameron)

- Now mdmflexiserver command "GET_CONFIG" works.  Previously it only returned a
  value if the value was set in the mdm.conf file.  Now it returns compiled-in
  default values if mdm.conf has no setting.  (Brian Cameron)

- Support DragonFly VT. (Joerg Sonnenberger)

- MDM configure script now Supports TCP Wrappers on Solaris.  (Brian Cameron)

- Many string/grammar improvements. (Tommi Vainikainen, Brian Cameron)

- Better C89 compiler support.  (Jens Granseuer)

- Translation updates (Hendrik Brandt, Nikos Charonitakis, Pawan Chitrakar,
  Laurent Dhima, Raphael Higino, Theppitak Karoonboonyanan, Gabor Kelemen,
  Priit Laes, Chao-Hsiung Liao, Kjartan Maraas, William Jon McCann, Ankit
  Patel, Hendrik Richter, Francisco Javier F. Serrador, Alexander Shopov,
  Clytie Siddall, Terance Sola, Marcel Telka, Miloslav Trmac, Tommi
  Vainikainen, Funda Wang, Adam Weinberger, \305\275ygimantas Beru\304\215ka 

2.8.0.1 stuff:

- This release fixes a nasty bug which was causing the /etc/mdm/Xsession file
  to always use /bin/ksh.  This caused problems on Linux, where it should be
  /bin/sh.  It now is only /bin/ksh on Solaris builds.  (Brian Cameron)

- seteuid/setegid logic in the MDM slave logic has been made more sane.  This
  was causing problems running MDM2 on NetBSD (refer to bug #301821).  (Julio
  M. Merino Vidal)

- Correct "Delete Theme" button sensitivity in mdmsetup.  (Andrew Case)

- Minor correction to Solaris audit logic.  (Gary Winiger)

- Updated autogen.sh so it now works with automake > 1.4.

- No longer use C99 features that do not work with gcc 2.95, specifically do
  not declare variables except at the beginning of a block.  (Jens Granseuer)

- Corrected configure script so it works with pkgconfig 0.17.2.  The new
  pkgconfig broke the build on Solaris since it no longer allows the linker to
  pull in libraries that are implicitely included.  Now all libraries are
  explicit.

- References to libgnome removed from vicious-extensions, so it no longer
  depends on libgnome.  It now depends directly on i18n libraries.  (Andrew
  Case)

- The gesture listeners now log debug messages to syslog instead of stdout, and
  debug can now be turned on by setting the MDM_DEBUG_GESTURES environment
  variable rather than needing to recompile with debug.  This makes it much
  easier to debug issues.  (Brian Cameron)

- Leaks fixed (Kjartan Maraas)

- Corrections to docs (Andrew Case, Martin Petersen)

- Translation updates (Kjartan Maraas, Miloslav Trmac, Ignacio Casal Quinteiro,
  Vincent van Adrighem, Francisco Javier F. Serrador, Gabor Kelemen, Theppitak
  Karoonboonyanan, Martin Willemoes Hansen, Priit Laes, Adam Awinberger, Clytie
  Siddall, Abel Cheung

2.8.0.0 stuff:

Interface Changes:

- Now mdm, mdm-binary, mdmsetup are installed to /sbin and mdmchooser,
  mdmgreeter, mdmlogin are installed to /libexec.  This better conforms to UNIX
  recommend installation locations.  The mdmconfig and mdmXnest symlinks have
  been removed since they were redundant.  Distributions will need to modify
  the way MDM programs are launched to reflect these changes.  (Brian Cameron)

- mdm.conf and MdmSetup now use the DefaultWelcome and DefaultRemoteWelcome
  keys to specify if the default message should be used.  Now the Welcome and
  RemoteWelcome keys are empty by default.  This is to avoid putting strings
  that are translated in the mdm.conf file.  Users that want to use a
  non-default welcome string will need to ensure that DefaultWelcome and/or
  DefaultRemoteWelcome are set to false.  (Brian Cameron)

- Now users to be included in the face browser need to be identified using the
  mdm.conf "Include" configure option or the "Face Browser" tab in mdmsetup.
  Previously, MDM parsed the system's password file for a complete list of
  users and excluded userid's listed in the mdm.conf "Exclude" configure
  option.  This behavior did not work well on systems that use NIS for storing
  passwords.  This previous behavior may be turned back on by setting the
  mdm.conf "IncludeAll" configure option to "true".  (Brian Cameron)

- xevie Xserver extension is now turned on by default on Linux for better a11y
  support.

- /bin/ksh is used in the MDM2 Xsession script on Solaris.  Since this script
  sources the user's $HOME/.profile, ksh works better if the profile has
  bash/ksh style syntax.  (Brian Cameron)

Other Changes:

- Fix so MDM works better on BSD and MacOS.  Upon getting EOF on
  socket/pipe/etc. G_IO_IN is always set and G_IO_HUP may not be set.
  Therefore, if a length <= 0 is returned from read(), the socket is closed.
  This prevents mdm2 from causing high CPU-load after logout.  (Joe Marcus
  Clarke)

- Now support "session migration" using DMX.  Refer to docs.  (Mark McLoughlin)

- Now support "Dynamic Xservers".  Refer to docs.  (Bob Terek)

- The background colors used in mdmgreeter's Face Browser in can now be themed
  using the <color iconcolor="" "labelcolor=""> syntax.  The Face Browser now
  shrinks so it is the same size as the treeview so extra white space isn't
  shown.  (Brian Cameron)

- To better conform to the Usability Guide, mdmlogin and mdmgreeter now
  supports an "OK" button which functions the same as hitting <Return> and a
  Cancel button which allows the user to go back to the "Username" prompt
  without having to enter an invalid password.  (Brian Cameron)
  
- The Face Browser usability has been improved.  Now the user can select a
  different face without having to enter an invalid password.  Single-clicking
  on the face takes the user to Password entry.  The cancel button can be used
  to get back to "Username" entry.  (Brian Cameron)

- MDM now ships with a collection of default faces installed to
  datadir/pixmaps/faces.  (Jaap A. Haitsma)

- Support for ratio scaling of SVG images.  (Vincent Untz)

- Better left-handed support.  Now right and left mouse buttons can be used in
  all MDM windows/dialogs/etc.  (Brian Cameron)

- Now can use XDMCP from Xnest session.  (Leena Gunda)

- Now login success/failure sounds can be selected in mdm.conf or in the
  Accessibility tab of mdmsetup.  (Andrew Case, Mark McLoughlin)

- Now "random theme" can be selected in the mdm.conf file or mdmsetup to allow
  a different theme to be used for each login.  (Andrew Case)

- Now support background programs that are started after a timedelay and can be
  restarted after a delay.  Useful for running a screensaver at login time.
  (Laurent Birtz)

- mdmphotosetup has been improved so it now scales the face image to MDM's max
  icon size before saving it.  By default it looks in datadir/pixmaps/faces to
  find face images.  (Brian Cameron)
  
- <Control>-U may now be used to clear the entry field.  Now <Tab> works like
  <Enter> in the login screen.  (Brian Cameron)

- mdmflexiserver now supports the GET_CONFIG command, so that other programs
  can access the MDM configuration data in a stable fashion.  This is useful
  for other programs that might want to know what the system
  suspend/halt/reboot command is or what the max icon size for creating mdm2
  face images, etc.  (Brian Cameron)

- Flexiserver commands are now sent as a single call to mdm_connection_write or
  mdm_connection_printf rather than building commands and sending them in
  pieces.  Fixes bug #158799.  (Brian Cameron)

- Now gesture listener configuration files specify AT programs by full PATH
  (default EXPANDED_BINDIR).  This can be overridden via the --with-at-bindir
  configure option.  Since AT programs are launched as user mdm2, it is more
  secure to not depend on PATH.  (Brian Cameron)

- Now use more sensible arguments for starting magnifier.  (Bill Haneman)

- mdmsetup Now has a separate tab for configuring the Face Browser, and for
  configuring the Xserver.  Now the checkboxes for turning on the Face Browser
  and XDMCP are on the Security tab.  The Face Browser and XDMCP tabs are
  insensitive if they are not enabled.  Now users can turn on/off Theme menu
  choice for mdmlogin in the Accessibility tab.  Can turn on/off debug in the
  Security tab.  RemoteWelcome is insensitive if XDMCP is not enabled.  Better
  mnemonics.  (Brian Cameron, Andrew Case)

- MDM now no longer uses deprecated widgets.  The new file selection widget is
  used (which no longer core dumps if you click on the sidebars).  GtkComboBox
  and GtkComboBoxEntry are used instead of GtkEntry and GtkOptionMenu (Brian
  Cameron)

- mdmthemetester now uses mdmwhich instead of which, so it works better on
  Solaris.  (Brian Cameron)

- Timed login message is displayed in a separate label on mdmlogin which avoids
  problems caused because different things were trying to use the same label
  for status messages.  Reorganized mdmlogin screen so it no longer should
  resize as it is being used.  (Brian Cameron)

- The max size of the username/password entry is now set to PAM_MAX_RESP_SIZE
  to allow long username/password entry.  If PAM is not set, it is defaulted to
  256.  (Brian Cameron, Ali Akcaagac)

- Now dialogs that ask the user if they want to change their default
  language/session have a Cancel button so the user can return to the login
  screen.  (Brian Cameron)

- Theme save remembers where the last theme was installed and opens to that
  location.  Also fixed bug which was causing *.tar theme files to not install
  properly.  (Brian Cameron)

- No longer rely on Xserver physical screen geometry which sometimes causes
  text to be too big or too small.  Now use gdk/pango functions to get root
  window resources.  (Ray Strode)

- Better sorting of session names in the Session menu.  (Ray Strode)

- Remove mdm_debug from signal handlers since they aren't safe in signal
  handlers (Mark McLoughlin)

- Many strings, docs, README's have been improved.  Better wording, better
  grammar.  (Brian Cameron, Seb Wills, Adam Weinberger, Abel Cheung, Kjartan
  Maraas, Danilo \305\240egan, Nicholas Skehin)

- Many translation improvements.  Entries in the language list now show their
  encoding so you no longer see what appear to be identical entries in the
  language list.  (Nikos Charonitakis, Theppitak Karoonboonyanan, Priit Laes,
  David Lodge, Jordi Mallach, Kjartan Maraas, Gareth Owen, Ahmad Riza H Nst,
  Kostas Papadimas, Francisco Javier F. Serrador, Danilo \305\240egan,
  Alexander Shopov, \303\205smund Skj\303\246veland, Clytie Siddall, Miloslav
  Trmac, Tommi Vainikainen, Funda Wang, Adam Weinberger)

- gi18n.h is used instead of libgnome header files.  (Christian - Manny
  Calavera - Neumair)

- Some cleanup (Brian Cameron, Mark McLoughlin)

2.6.0.9 stuff:

- Fix HaltCommand setting so it works again.

- Change HaltCommand from "init 0" to "init 5" on Solaris.

- Translation updates (Takeshi AIHANA, Adi Attar, Abel Cheung,
  Pawan Chitrakar, Baris Cicek, Martin Willemoes Hansen,
  Gabor Kelemen, Steve Murphy, Ahmad Riza H Nst, Christian Rose,
  Francisco Javier F. Serrador, Miloslav Trmac, Vincent van
  Adrighem, Adam Weinberger)

2.6.0.8 stuff:

- Enhanced a11y gesture listeners so they support XInput events
  for better a11y support.  (Bill Haneman).

- Add STRUTS support to mdm2's window manager for better a11y
  support (Bill Haneman).

- Improved the way the user's default PATH is set up by configure
  so it is set more sanely without redundant PATH's, and is more
  careful about not putting symlinked X11 directories in the PATH.
  Now can configure user's default directory via the --with-post-path
  argument.  (Brian Cameron).

- New configuration option to disallow visible feedback in password
  entry.  (John Martinsson).

- Fix width of "user name entry" to shrink to fit parent widget so
  text does not run out-of-bounds.  (Chookij Vanatham)

- Restart slave process if XDMCP chooser is selected from flexi 
  server.  (Leena Gunda)

- Make default face obey the MaxIconWidth and MaxIconHeight 
  configuration settings.  (Diego Gonzalez)

- mdm2 slave now sources /etc/environment if it exists. (Vicent Berger)

- Correct mdmsetup's tooltip to conform to GNOME HIG. (Sebastien Bacher)

- Use ngettext for translation.  (Christian Rose)

- Set default font size to "Sans 12".  (Erwann Chenede)

- Set name of password entry for more friendly a11y (Erwann Chenede)

- Mark "Remove Theme" for translation.  (Balamurali Viswanathan)

- Remove <span> tags from language display since they were causing
  formatting issues for some users.  (Glynn Foster)

- Ensure LC_MESSAGES is set so the user's default language can be
  displayed (Hidetoshi Tajima).

- Specify font for username/password entry for mdm2 supplied themes.
  (Alexander Kirillov)

- Add Kinyarwanda and Armenian to language list.  (Steve Murphy and
  petrosyan@gmail.com)

- Correct IPv6 logic so that it supports an IPv4 XDMCP request when
  IPv6 is enabled.  Fixed configure help for --enable-ipv6.
  (Brian Cameron)

- Set more sane Reboot/Halt/Shutdown commands on Solaris.  (Brian
  Cameron).

- Correct the usage of IFS in the Init/PreSession/PostSession/Xsession
  scripts so it works on Solaris.  (Leena Gunda)

- Support logindevperm on Solaris for automatic/timed login.  
  (Brian Cameron)

- Swap Alt and Meta keys on Solaris.  (Leena Gunda)

- Correct IPv6 identification for Solaris.  (Leena Gunda)

- Cleanup.  (Mark McLoughlin and Kjartan Marass)

- Translation updates (Takeshi AIHANA, \305\275ygimantas
  Beru\304\215ka, Abel Cheung, Baris Cicek, Dan Damian,
  Laurent Dhima, Laszlo Dvornik, Maxim Dziumanenko,
  Artur Flinta, Martin Willemoes Hansen, Raphael Higino,
  Leonid Kanter, Theppitak Karoonboonyanan, Priit Laes,
  David Lodge, Duarte Loreto, Jordi Mallach, Kjartan Maraas,
  Christophe Merlet, Kostas Papadimas, Ankit Patel,
  Hendrik Richter, Christian Rose, Changwoo Ryu, Danilo
  \305\240egan, Francisco Javier F. Serrador, Alexander Shopov,
  Marcel Telka, Miloslav Trmac, Ilkka Tuohela, Tommi Vainikainen,
  Vincent van Adrighem, Adam Weinberger)

2.6.0.7 stuff:

- Now using CVS head of vicious-extensions, left out of previous
  release due to schedule freeze.

- Do not init the wm twice if mdm_wm_init is called twice. (George)

- Always destroy dialog widget in greeter to fix non-fatal error
  dialogs from hanging around. (George)

- Leak corrected in daemon/verify-pam.c. (George)

- Corrected g_strconcat call in gui/mdmsetup.c. (meissner@suse.de)

- Added Afrikaans, Northern Sotho, South African English, and Zulu.
  to language translations. (Dwayne Baily)

- Updated build files so it can be built and distributed with new
  buildtools than 1.4.   makedist fixes, etc.

- Dwayne Bailey, \305\275ygimantas Beru\304\215ka, Mohammad DAMT,
  Laurent Dhima, Laszlo Dvornik, Artur Flinta, Martin Willemoes
  Hansen, Raphael Higino, Priit Laes, David Lodge, Duarte Loreto,
  Jordi Mallach, Kjartan Maraas, Kostas Papadimas, Hendrik Richter,
  Christian Rose, Francisco Javier F. Serrador, Alexander Shopov,
  Marcel Telka, Miloslav Trmac, Tommi Vainikainen, Vincent van
  Adrighem, Funda Wang, Adam Weinberger, Simos Xenitellis,
  Meelad Zakaria

2.6.0.6 stuff:

- Allow flexi x servers to be launched from the fifo script with
  "echo FLEXI_XSERVER > <ServAuthDir>/.mdmfifo" (Tuukka Hastrup, me)

- Autologin works on the first handled display not just first local
  display

- There is a global cookie for the SUP protocol in <ServAuthDir>/.cookie

- Xnest is set up properly on Solaris (Brian)

- Fixup comments in the config file (Brian, me)

- Fix language selection (Ray Strode)

- Set the MDM_XSERVER_LOCATION env var on the session so that the
  user can find out what they can do.

- Fix logindevperm stuff to allow a11y access to sound (Brian Cameron)

- Solaris build fixes for Solaris 9 and earlier (Brian Cameron)

- Translation updates (Kjartan Maraas, Christophe Merlet, Changwoo Ryu,
  Laszlo Dvornik, Adam Weinberger, Zygimantas Berucka, Alessio Frusciante,
  Francesco Marletta)

2.6.0.5 stuff:

- Doc update (Brian Cameron)

- Solaris fix (don't call logindevperm if not on the console) (Brian Cameron)

- Translation updates (Akagic Amila, Jesus Bravo Alvarez,
  Theppitak Karoonboonyanan, Laszlo Dvornik, Supranee Thirawatthanasuk,
  Hendrik Richter, Dafydd Harries, Francisco Javier F. Serrador,
  Tommi Vainikainen, David Lodge, Marius Andreiana, Misu Moldovan,
  Baris Cicek, Vincent van Adrighem, Tino Meinen, Nikos Charonitakis,
  Arafat Medini, Asmund Skjaeveland, Hasbullah Bin Pit, Ryoichi INAGAKI,
  Changwoo Ryu, Jordi Mallach, Danilo Segan, Laurent Dhima,
  Maxim Dziumanenko, Christian Rose)

2.6.0.4 stuff:

- Allow not checking directory owners with CheckDirOwner key,
  (Andreas Schubert)

- FreeBSD support for VTAllocation stuff (Alexander Nedousukov)

- Add de_AT, de_CH, fr_BE, fr_CH, hy_AM to language list (#148349, #139454)

- Add more native versions of language names and fix up existing ones,
  #148373, #148486, 148356, #148350, #88777, #150293

- Add support for Solaris logindevperm and auditing (Brian Cameron)

- Fix some strings, fixes #144076, #144077, #147800

- On sun we automatically make the default config add -nobanner to
  the X server flags (Arvind)

- Fix doubleclicking on the user browser in the standard greeter

- Fix #144007 where bad .profile could screw up a session start

- Fix #148042 by making GETTEXT_PACKAGE just mdm

- Fix #147940 by properly checking if shutdown/reboot/suspend commands exist
  in the graphical greeter

- Fix #143707 by using Exclude key for the user dropdown lists in mdmsetup

- Fix some compiler warnings for new gcc

- .dmrc is created with umask 077 for maximum anality

- Translation updates (Kjartan Maraas, Laszlo Dvornik, Laurent Dhima,
  Martin Willemoes Hansen, Marie Lund, Metin Amiroff, Francisco Javier F.
  Serrador, Duarte Loreto, Tommi Vainikainen, Leonid Kanter, Changwoo Ryu,
  Funda Wang, Artur Flinta, GNOME PL Team, Miloslav Trmac, Adam Weinberger,
  Estevao Samuel Procopio, Tommi Vainikainen, Danilo Segan, Guntupalli
  Karunakar, Lucas Vieites, Christian Neumair, Nikos Charonitakis,
  Gustavo Maciel Dias Vieira, Afonso Celso Medina, Sebastien Bacher,
  Ole Laursen, Ivan Stojmirov, Andras Timar)

2.6.0.3 stuff:

- Fix cpu/bandwidth eating on idle displays by not blinking the cursor
  after 20 seconds of inactivity on anything other then :0, fixes #135764

- In the face greeter cut after a comma in the gecos field if there are
  at least two commas since then it's probably some login arguments and
  not the name of the user, "fixes" #142274

- Apply patch to make the language dialog at most 600 pixels so that it
  doesn't look too bad on large displays, #142175 (Leonard Michlmayr)

- Fix last_x_failed possible infinite loop on slow machines, #141497

- Fix multihead code in the *mouselistener modules, this confused the
  moronic bonobo DISPLAY logic

- Don't use certain languages on the console.  Controlled by the
  daemon/ConsoleCannotHandle config key, but that's a hack.  Oh well,
  better then displaying garbage in cjk and similar.  "fixes" #135387

- Ensure proper ~/.ICEauthority permissions to fix broken cases such
  as cinnamon-session vs. suid root apps that create root owned ~/.ICEauthority,
  "fixes" #137345

- We no longer use `which' command which is horribly broken on some horribly
  broken systems and use a private shell version, #133245 (Brian Cameron, me)

- Solaris fixes, #137600 (build), #133245 (chown arguments)  (Brian Cameron,
  Ivan Noris)

- Support system-config-display as X setup for FC2

- Further shell quoting paranoia in mdmsetup

- Many minor fixes

- Add some new new icons (James M. Cape)

- Translation updates (Francisco Javier F. Serrador, Alexander Shopov,
  Rostislav Raykov, Dinesh Nadarajah, Asmund Skjaeveland)

2.6.0.2 stuff:

- Fix PAM braindamage in #119853 and #126984 (Frederic Crozat, me)

- Fix the flexiserver protocol (mdmflexiserver should no longer hang)

- Disable IPv6 by default, it's still kind of problematic, you have
  to explicitly enable it now with --enable-ipv6=yes

- Fix some IPv6 issues, #133246

- Fix message weirdness in the greeters, #123958 (Frederic Crozat, me)

- Set font correctly on theming, #125070 (Muktha, me)

- Translation updates (John C Barstow, Vincent van Adrighem, Christophe Merlet,
  Changwoo Ryu)

2.6.0.1 stuff:

- Also ensure that /tmp/.X11-unix exists as well as /tmp/.ICE-unix, and
  do this in a way to avoid self races

- Main daemon now ignores SIGPIPE which it can get which would cause
  a crash (Jerry Wall)

- Fix a file descriptor leak when closing slaves (Jerry Wall)

- Fixed IPv6 authorization setting in .Xauthority (Vijaykumar Patwari)

- Some typos fixed

- Translation updates (Guntupalli Karunakar, Christian Rose, Gareth Owen,
  Andras Timar, Gujarati Team, Christophe Merlet, Inaki Larranaga,
  Changwoo Ryu, Samuel Jon Gunnarsson, Helgi, Pormar Porbjornsson,
  Zuza Software Foundation, Ole Laursen, Jaswinder Singh Phulewala,
  Asmund Skjaeveland, Robert Sedak, Takeshi Aihana, Mugurel Tudor,
  Misu Moldovan, Abel Cheung, Kevin Kee, Baris Cicek, Telsa Gwynne,
  Sayamindu Dasgupta, Indranil Dasgupta, Francisco Javier F. Serrador,
  Arafat Medini, Indictrans team, Leonid Kanter, Dafydd Harries,
  Alession Frusciante, Francesco Marletta)

2.6.0.0 stuff:

- DisplayLastLogin defaults to false since '/usr/bin/last' is stupidly
  unlocalized

- Add translated (de, es, fr, it, ja, ko, sv, zh_CN, zh_HK and zh_TW)
  documentation (Glynn, Sun translation team)

- Translation updates (Christophe Merlet, Christian Neumair, Maxim Dziumanenko,
  Telsa Gwynne, Stanislav Visnovsky, Gustavo Maciel Dias Vieira,
  Alastair McKinstry, Alexander Winston, Sanlig Badral, Vincent van Adrighem,
  Michiel Sikkes, Funda Wang, Ales Nyakhaychyk, Metin Amiroff, Takeshi AIHANA,
  Alessio Frusciante, Francesco Marletta)

2.5.90.2 stuff:

- Support for GTK+ theming (accessibility) and ability to change current
  theme in the standard login, fixes #125070 (Muktha, me)

- Hindi was written wrong in the language menu fixes #134372
  (Guntupalli Karunakar)

- When restarting a server by whacking it and starting it again, wait
  for 1 sec to allow things to "settle", plus be a lot milder on X
  server's lock files / sockets to avoid whacking ones currently in use

- Make language dialog in the graphical greeter come up quicker and init
  the languages lazily

- Fix #135232 by using code@mod for the translation matrix (me), and added
  Serbian variants there (Danilo Segan)

- Fix #135053 by adding canadian english (Adam Weinberger, Danilo Segan)

- Fix sourcing of environment on AIX, #135401 (Vincent Berger)

- Fix displaying of ~/.xsession-errors file

- Attempt to handle out of user diskspace more gracefully by whacking old
  .xsession-errors in case we fail.

- Translation updates (Nikos Charonitakis, Jordi Mallach, Funda Wang,
  Tommi Vainikainen, Kostas Papadimas, Kjartan Maraas, Miloslav Trmac,
  Laurent Dhima, Zygimantas Berucka, Christian Rose, Changwoo Ryu,
  Yukihiro Nakai, Duarte Loreto, Christophe Merlet,
  Francisco Javier F. Serrador, Artur Flinta, Alastair McKinstry,
  Guntupalli Karunakar, Takeshi AIHANA, Paisa Seeluangsawat,
  Surichat Sumrit, Supranee Thirawatthanasuk, Chanchai Junlouchai,
  Adam Weinberger, Christian Neumair, Hasbullah Bin Pit,
  Pauli Virtanen, Ole Laursen, Asmund Skjaeveland, Metin Amiroff,
  Vincent van Adrighem, Tino Meinen, GNOME PL Team)

2.5.90.1 stuff:

- Login field was not cleared when x server / slave crashed (#131389)

- Change the 12 hour format to be less confusing (#133189)

- Re-fix the aix ADMCHG bug #123766 (Vincent Berger)

- keymouselistener fixes (Brian Cameron)

- Compilation fixes #131042, #130963

- Build fixes (Tomasz Kloczko)

- Other fixes and cleanups (among others #133181 by Mariano Suarez-Alvarez)

- Translation update (Andras Timar, Francisco Javier F. Serrador, Lucas Vieites,
  Maxim Dziumanenko, Robert Sedak, Metin Amiroff, Laurent Dhima, Changwoo Ryu,
  Kjartan Maraas, Miloslav Trmac, Asmund Skjaeveland, Sanlig Badral, 
  Zygimantas Berucka, Kostas Papadimas, Christian Neumair, Artur Flinta,
  GNOME PL Team, Gustavo Maciel Dias Vieira, Joao Emanuel, Danilo Segan, 
  Vincent van Adrighem, Tino Meinen, Fernando Herrera, Arafat Medini)

2.5.90.0 stuff:

- Add accessibility setting to mdmsetup and allow setting an arbitrary
  sound for the "ready for login" sound.  (#125487)

- mdmflexiserver now lists running sessions if there are some and allow
  the users to easily switch. (#127038)

- Display last login when the user enters their name (can be turned
  off) (#128940)

- Inactive flexiservers are reaped by default after 5 minutes.

- Accessibility modules set the busy cursor for 2 secs to show that
  an action was started (#125153)

- Doubleclicking on a language in graphical greeter selects it
  (Kirk Mitchener, #123199)

- Optional info message on login (sort of like motd) (Anton Altaparmakov,
  #125219)

- New SUP (socket protocol) commands to request shutdown/reboot after
  session ends or after all users log out.  Also new SUP commands for
  querying and setting the VT on Linux.

- A --wait-for-go option that will start one X server and then wait until
  GO is sent through the fifo before going further.

- IPv6 support (Archana Shah)

- Built in sessions are out of /etc/X11/dm/Sessions and moved to
  <datadir>/mdm/BuiltInSessions

- Fix chooser communication vs. accessibility stuff (#125064)

- Fix RetryDelay and make it default to 1 and not 3 (Leena Gunda, me, #128507)

- On AIX without PAM, password expiration is done (Vincent Berger, me, #123766)

- On crypt/shadow the double login warning was too early, now done after
  authentication as in the PAM setup.

- Clients are now forcibly whacked at session stop, should "fix" #126071

- Use GtkFileChooser in mdmsetup (Jan Arne Petersen, #128668)

- Paranoia: Check ownership of the socket before using it

- Fix xdmcp session counting (#126465)

- Warn the user when they want to set root as autologin (RH #97716)

- StandardXServer can now have arguments

- Default color is now #000000 and the PreSession script tries
  to use the default mdm color to fix #128220 

- Fix assert failure when starting Xnest (#127780)

- Indent the chooser and config toggles in the setup (#120639)

- Lots of cleanup and fixes and adding to the general paranoia in the
  code.  (me, Ray Strode, Brian Cameron)

- Translation updates (Miloslav Trmac, Andras Timar, David O'Callaghan,
  Paul Duffy, Danilo Segan, Vincent van Adrighem, Kostas Papadimas, 
  Jordi Mallach, Ole Laursen, Dmitry G. Mastrukov, Russian team,
  Sanlig Badral, Francisco Javier F. Serrador, Lucas Vieites,
  Laurent Dhima, Asmund Skjaeveland, Artur Flinta, Duarte Loreto,
  Robert Sedak, Christophe Merlet, Christian Neumair, Zygimantas Berucka)

2.4.4.5 stuff:

- Brown paper security bag: ~/.Xauthority could be left readable
  after logout

- gecos info (face browser user name) didn't get through if non-utf8
  (Frederic Crozat) (fixes mandrake #5309)

- Translation updates (another brown paper bag, these went in over
  the last month) (Kjartan Maraas, Andras Timar, Danilo Segan,
  Ales Nyakhaychyk, Asmund Skjaeveland, Gustavo Maciel Dias Vieira,
  Augusta Marques da Silva, Richard Allen)

2.4.4.4 stuff:

- SECURITY: Fixed CAN-2003-0793, a local DoS, the socket connection
  is now non-blocking and limitted to the number of commands

- SECURITY: Fixed CAN-2003-0794, a local DoS, the line length is limitted
  to 4096 bytes (note, this was not a buffer overrun).

  (Thanks to Jarno Gassenbauer for pointing out the above two problems)

- Avoid possible DoS by using "-audit 0" for the X server command line

- When cookies are in the fallback dir touch them every
  12 hours to avoid tmpwatch from removing them

- Add config key NeverPlaceCookiesOnNFS to allow
  cookie files on NFS or similar filesystems

- Graphical greeter now graphically complains if it can't
  load a theme rather then plainly failing.

- Go shell quoting crazy (fixes among others rh #105858,
  but none of the issues were actually security problems,
  "annoying" on really weird configs at most)

- Some more anality with touching user owned files

- Fixed the graphical greeter line breaking to not upset
  pango and generally work with marked up strings

- Fix an underlining bug in the graphical greeter when the underlined letter
  is the last letter. (discussed in rh #106189)

- Minor other fixes (among others #123958, #124680)

2.4.4.3 stuff:

- The graphical greeter now wraps text correctly (and
  all text).  Plus you can insert \n in the welcome text
  now too (it worked for mdmlogin before) Fixes #123017

- The entry type in the graphical greeter listens to
  font and color from the normal state (it only has
  the normal state) (Anton Altaparmakov, me)

- Tweak fontsizes in the default themes to be smaller.  For
  some reason they very suddenly very huge.

- Further memory savings in the graphical greeter (though
  it may be offset by the new wrapping code which is quite
  large :)

- Another security audit, but no new security holes found,
  on the other hand lots of code changed to being
  super-anal (which is never bad in something running as
  root)

- Lots of random fixes again

2.4.4.2 stuff:

- Fix the session setup to be both back-compatible and
  fully KDM (kde 3.2) compatible, among others:
  - SessionDesktopDir is now a path
  - Change 'Default' to 'default'
  - Honor TryExec correctly
  - Other then 'default', the gnome and CDE sessions are
    now installed in /usr/share/xsessions (if prefix==/usr)

- Support SELinux

- Fix the 'switchdesk' mode and mention 'switchdesk'
  only if it's actually installed (rh #104287)

- Use the a11y modules for the chooser as well as the
  error dialogs

- Lots of dwellmouselistener and keymouselistener a11y
  modules fixing, as in they actually work now,
  among other fixes are #122944, #122658, #122616

- Default gestures for gok (David Bolter, me)

- Lots of small fixes

- Error dialogs are now crashing theme/module tolerant

- Load ~/.face.icon for kde 3.2 interoperability

- Clean up the random stuff again a bit (we get more entropy
  for less work, yay!)

- Documentation updates

- Translation updates (Alessio Frusciante, Francesco Marletta,
  Changwoo Ryu)

2.4.4.1 stuff:

- Update the manual a bit

- Some internal cleanup

- Be ultra anal with creating the user protocol socket

- Don't fall back to 'nobody' if the mdm user is not found
  (that is a horrible behaviour)

- Support and write KDM style .dmrc (KDM will use this in
  the next version).  Still KDM will use /etc/X11/sessions,
  and we're using /etc/X11/dm/Sessions, oh well, life can't
  be perfect, next time ...

- Translation updates (Andras Timar, Pablo Saratxaga, Vincent van Adrighem,
  Guntupalli Karunakar, Pablo Gonzalo del Campo, Francisco Javier F. Serrador,
  Mugurel Tudor, Misu Moldovan, KAMAGASAKO Masatoshi, Gustavo Noronha Silva,
  Hasbullah Bin Pit, Christian Neumair)

Major changes in 2.4.4.x since 2.4.1.x:

- Full reference documentation!
- Facebrowser support in the graphical greeter
- Better HIG support
- Many security improvements
- Performance and memory usage improvements
- XDMCP much more robust
- Better support for running XDMCP-only servers
- Session setup is reworked into a new common standard
  to be implemented in KDM soon
- "Proper" support for PAM making things like
  smartcard modules possible
- XDMCP chooser may be run directly from the local
  login dialog (or you can have the chooser be default)
- A PostLogin script for finer grained login setup
- Many MANY bugfixes and build fixes
- Lots of new translations
- And lots of other new features, improvements,
  and bugfixes, see individual news entries since
  2.4.1.4

2.4.4.0 stuff (since 2.4.2.102):

- Updated the documentation quite a bit again.

- Make the .spec file work again

- Run pam_close_session and the delete cred AFTER the
  PostSession script and all those places where we touch
  the home dir so that pam_mount works properly

- Fix error output to point to the right places

- Create log file correctly during "make install"

- Translation updates (Dafydd Harries, Alessio Frusciante, Jordi Mallach,
  Vincent van Adrighem, Ole Laursen, Stanislav Visnovsky, Abel Cheung,
  Pablo Gonzalo del Campo, Lucas 'Basurero' Vieites, Danilo Segan, 
  Laurent Dhima, Christian Neumair)

2.4.2.102 stuff:

- Update the manual

- Fix error where MDM would take up 100% cpu in case
  the Xsession file redirect .xsession-errors output
  itself (which is really a bug IMO) (#120580)

- Fallback to an alternative file in the /tmp dir
  if we can't create .xsession-errors (or if the home
  dir is unsafe or it's a failsafe session)

- Fix sensitivity with respect to action menu toggle in
  the security tab in mdmsetup (#120639)

- A whole bunch of fixes to how the xauth files
  are set up

- Remove .Xauthority if it would be empty.

- Added --version command line option (#120409)

- The mdmsetup.desktop now has System in the
  categories (#120360)

- Filenames are built properly without double '/'
  everywhere (#118040)

- There is a simple mdm(1) man page

- Many minor fixes

- The AUTHORS file is updated

- Translation updates (Artur Flinta, Duarte Loreto,
  Metin Amiroff, Tõivo Leedjärv, Changwoo Ryu,
  Kjartan Maraas)

2.4.2.101 stuff:

- Memory profiling of the graphical greeter by not keeping
  around info (pixmaps) which we won't need.  On the circles
  theme this saves about 6megs on the circles theme.
  Also cache pixmaps in the graphical greeter which reduces
  the disk rattling we need to do to start up.  Plus a bit
  of just performance profiling should reduce CPU usage of
  the graphical greeter quite a bit too.

- Update the manual, especially the theme section

- The UserAuthDir now works in a much saner way.  If the
  directory is not tilde expanded, then we treat it just
  like /tmp and use random filenames.

- Prevent a minor DoS attack (apps being coerced to fill
  up the home dir) by intercepting the output from the
  session and only writing to the ~/.xsession-errors
  file a maximum of 80*2500 bytes.

- The user lists in the face browsers and the mdmsetup are
  now capped at a higher number, but we also cap the time
  that is spent gathering the info at 5 seconds.

- Deal with hypothetical main daemon crashes semi decently
  in the slave.

- Try /dev/fd if /proc/self/fd isn't there for checking
  which FDs are open, should make this work on more platforms
  (in particular FreeBSD)

- Run fbconsole on startup if found, this is a solaris
  thing to prevent console output to corrupt your display
  (Brian Cameron)

- Use the 66 code from session to indicate failure that
  need not display the .xsession-errors file

- Actually read the "active" state for text items

- Break all pam messages (not just the error) at 50
  columns.  This is kind of a hack, we need to support
  proper linebreaking in the theme.

- Respect negative coordinates with "-0" in the
  theme

- Display help from the setup program if not running
  from within mdm itself

- The standard config file now has most keys commented out
  so that the internal defaults are used and so that we can
  change those defaults in the future without the user having
  to update the config file.

- Improvements in the cookie generation.  Doesn't use
  up all the system entropy but just uses the 16 bytes it
  actually needs (since we just need a 16 byte cookie).
  Plus improve randomness on systems without /dev/random
  and friends.

- Correctly handle out of diskspace on auth handling and
  on the PID file thing.

- Fix the runlevel reading

- Fix possible crash on auth purge

- Fix possible chooser crash

- Fix lots of minor bugs

- Some optimization to save a nanosecond or two

- Translation updates (Wang Jian, Funda Wang, Christian Rose, Jordi Mallach,
  Danilo Segan, Artur Flinta, Miloslav Trmac, Duarte Loreto, Kostas Papadimas,
  Ales Nyakhaychyk, Laurent Dhima, Christophe Merlet,
  Evandro Fernandes Giovanini, Metin Amiroff, Pauli Virtanen, Dafydd Harries)

2.4.2.100 SECURITY ADDENDUM:
  Was not part of the original release notes to give distributors a chance
  to update.

- SECURITY: Fixed CAN-2003-0547 which allows any user to read any
  root readable text file on the system by making a symlink from
  ~/.xsession-errors

- SECURITY: Fixed CAN-2003-0548, a crash when chosen host expires.
  DoS only for XDMCP (XDMCP should however be confined to a 'trusted'
  network anyway)

- SECURITY: Fixed CAN-2003-0549, a crash if authorization key name
  is shorter then 18 bytes (that is, not MIT-MAGIC-COOKIE-1)
  DoS only for XDMCP (XDMCP should however be confined to a 'trusted'
  network anyway)

2.4.2.100 stuff:

- Fix #118878 by actually ensuring /tmp/.ICE-unix

- More doc updates

- Fix up rlimit use and handle cases where we ourself
  hit SIGXCPU and SIGXFSZ.  Also handle SIGABRT cleanly
  in the main daemon.

- The error gui uses the same theme as the greeters

- The pam config files don't include the /lib/security
  prefix as apparently it's more kosher to let pam
  find the modules itself

- Fix some crashes in main daemon, fix debug output in places

- A whole pile of minor XDMCP updates

- Fix solaris build (Brian Cameron)

- Limit users in face browsers above 100 not 50

- Remove any mentions of SessionMaxFile as it isn't used anymore

- Some typos fixed (Jordi Mallach)

- Translation updates (Jordi Mallach, Artur Flinta, Christian Rose,
  Miloslav Trmac, Kostas Papadimas, Duarte Loreto, Ole Laursen,
  Danilo Segan, Christian Neumair)

2.4.2.99 stuff:

- Updated docs a bit

- When no local servers are defined we assume we have no console
  and don't use the console to print messages with mdmopen and
  dialog.  Also --no-console now forces this (forces ignoring
  [servers] section).  Fixes debian #194613

- Changed required permissions on ServAuthDir to be: root.mdm 1770.
  These are now enforced and MDM will try to set them if they're
  not that way already.

- Fix PostLogin to behave like PostSession with respect to the return
  value.

- Use /var/log/mdm by default as logdir rather then the ServAuthDir

- The face browsers all display at most 50 users.  This should fix
  very large systems where this may hang for a long time and more
  then 50 users in a facebrowser is useless anyway.

- Reworked the server reinit to use SIGUSR1 as it should, should
  fix some weird crashes which left X behind before.

- A lot of race hunting again.

- No more pam session_close and delete of credits if the user
  has not yet logged in.

- SIGTERM should kill things at any point properly without hanging

- Faster shutdown in case there are lots of XDMCP sessions
  open

- Fix hang on systems where maximum number of open file descriptors
  is very very high.  Use /proc/self/fd/ if available.

- Use sched_yield in places where we know the other process
  really has stuff to do, so that we speed things along.

- Remove some deprecated function use (Steve Chaplin #118361)

- Don't build with tcp wrappers if we don't build XDMCP

- Don't include programmer references in translatable strings,
  this time should really be fixed (#56654)

- Redo the user selector setup in pam.  Now completely restart
  pam when user is selected.

- In the face browsers the username is bold to separate it from
  the user info

- An X bell is sounded when the username prompt comes on.  Useful
  for the blind.

- On exit from an XDMCP display whack all the clients with windows
  to support the more broken displays.

- mdmchooser handles HUP gracefully and rereads config

- mdmthemetester improved

- Some build fixes

- Fix some C99 isms

- Many other fixes

- Translation updates (Christian Neumair, Dafydd Harries, Kostas Papadimas,
  Artur Flinta, Duarte Loreto, Christophe Merlet, Kjartan Maraas, 
  Miloslav Trmac, Gil "Dolfin" Osher, Christian Rose, Kang Jeong-Hee,
  Vincent van Adrighem, Pablo Gonzalo del Campo, Lucas 'Basurero' Vieites,
  Jordi Mallach)

2.4.2.98 stuff:

- DOCUMENTATION!  We have documentation!  I've updated the
  xml docs and they're installed so you can use the GNOME
  help browser to browse them under GNOME|System.  Or you
  can view the HTML versions on the webpage
  (www.jirka.org/mdm.html)

- Whack the MdmGreeterThemeManual.txt as it is now part
  of the xml documentation

- Add mnemonics/keynav to a bunch of things and generally try to
  fix issues from the HIG bugs filed in bugzilla (partially
  fixes #117776, #117784, #117504

- Add "listitem" tag to the graphical themes.  This allows
  custom list widgets in the theme and then you can get
  the info in a PreSession script or whatnot.

- The graphical greeter now scales down fonts on screens
  800x600 and less, and scales down fonts even more
  on screens 640x480 and less.

- Remove the iconification of Standard greeter feature,
  it was broken and I didn't want to fix it, and it was
  weird anyway.

- Internal messaging is now faster as we use an internal pipe
  instead of the FIFO file.  Also reduces the damage mdm user
  can do

- Don't XOpenDisplay so many times to make things run along
  a lot faster, and use XSetAuthority instead of XAUTHORITY
  env var internally.

- The server reinit is now safer, doesn't fork an extra process
  and it's quite a bit faster

- Justification of text in the graphical greeter is based on
  the anchor of the text

- We're very careful about the log directory as well as the
  ServAuthDir

- Fix a bunch of errors (mostly portability stuff) by looking at the
  FreeBSD cvs repository

- The server authfile is now unreadable by the mdm user during
  a user sessions for security

- Fixed #109331, by catching term/int/hup signals properly when inside
  the hanging gethostbyaddr/name

- The name resolution stuff now caches the last result for 60
  seconds

- Get the name of the root user instead of assuming it's "root"
  (fixes #117527)

- Fix hangs with the signal stuff by fixing the in_signal flag
  undercounts and redoing the waitpid mess in the slave by using
  a select call, and not doing that many things in the signal
  handlers.  Also fixes a long delay when restarting the greeter

- Fix configuration with --with-xinerama=no (#117895)

- The standard greeter clock will now look much better with
  some themes.

- An empty return will once again log you into the timed user
  as it did before I broke it

- The Xsession now displays $0 in output (Steve Chaplin, #117898)

- There is now a mdmtranslate libexec proggie that does what
  the gettext command does, so we get translations from scripts
  even on user systems (ones without developer kind of packages)

- Fix mdmaskpass internationalization

- Lots of random minor fixes

- Translation updates (Artur Flinta, Vincent van Adrighem,
  Duarte Loreto, Pablo Gonzalo del Campo, Francisco Javier Fernandez,
  Hasbullah Bin Pit, Noor Azurah Anuar, Christian Neumair, 
  Miloslav Trmac, Danilo Segan, Serbian team, Kang Jeong-Hee)

2.4.2.97 stuff:

- HIGify almost all the alert boxes.

- Fix install of the sessions setup by creating the /etc/X11/dm
  dir fixes #116836

- Fix DNS lookup stuff in XDMCP for places without DNS.  Also cache
  last result of DNS lookup to cut down traffic during session setup.

- daemon, mdmgreeter, mdmlogin and mdmchooser don't link against
  libgnome and friends (mdmgreeter still uses canvas).  This
  reduces number of libs linked by daemon from 46 to 26, for
  mdmgreeter this goes from 56 to 32 and for mdmlogin this goes
  from 52 to 22, and mdmchooser is down to 27

- If a greeter crashes within 10 seconds of display start, try
  running a different greeter (and telling the user that)

- Fix the chooser so that it actually chooses the host that
  you clicked on and not some random one.  This also changes
  the chooser to use GtkTreeView

- Fix #97774 by resetting the rlimits back after we fork the
  user session.  Also make AlwaysRestartServer default to false
  again since it was a workaround for this bug.

- Checking for free display numbers was only taking into account
  servers listening on tcp.

- The .desktop files include correct Terminal and StartupNotify
  entries (Jordi Mallach)

- Fallback for home is now ServAuthDir for mdm processes
  instead of / and for shell we use /bin/sh consistently
  (rather then /bin/bash)

- The full error dialog is now run as the mdm user for security
  (no more gtk code run as root)  Also uses GtkTextView,
  looks nicer and converts encoding correctly.

- Be very careful when opening files just about everywhere,
  so this prevents some possible damage someone could do if
  they do manage to get the mdm user privs.

- If X server crashes or doesn't otherwise whack its lockfile,
  help it along, should fix #114003 and redhat #90014

- No translatable message contains unnecessary markup now
  (fixes #101794 and #101795)

- mdmsetup .desktop file is now in the SystemSetup category
  and so goes into System Setup in the menu (#116977)

- The bits that parse X output now understand v4 XFree86 output
  correctly

- mdmopen now sets up TERM to "linux" on linux to make sure
  that fonts come out all ok

- Use ve-config (from vicious-extensions) everywhere in the daemon

- Fix RH #84247 by checking for gettext binary before using it

- The standard themes now don't include the translated labels
  since they weren't used anyway and this improves load times
  and memory usage.

- Updated the theme document a bit, and the dtd is now in the
  tarball in gui/greeter/

- Random other minor fixes

- Translation updates (Danilo Segan, Serbian team, Metin Amiroff,
  Christian Rose, Kjartan Maraas, Artur Flinta, Vincent van Adrighem,
  Valek Filippov, Laurent Dhima, Christophe Merlet, Mohammad DAMT,
  Dafydd Harries, Kang Jeong-Hee, Simos Xenitellis, Miloslav Trmac,
  Artur Flinta)

2.4.2.96 stuff:

- When you log in twice on a different server, mdm warns you and if
  both logins are console logins on linux, then you can have mdm switch
  consoles for you instead of logging on.

- Errorgui (failsafe) dialogs now run mostly under the mdm user and not as root

- In the .desktop files we now refer to MDM as Login Screen and not MDM,
  fixes #85543

- Add ALL_SERVERS to the socket protocol which returns all the displays

- DESKTOP_SESSION is set in addition to MDMSESSION.  Also these are unset
  in the standard Xsession file not to pollute the env namespace.

- Add CDE session .desktop (Brian Cameron)

- Remove some debugging output (and make it only output stuff when debug is on)

- Fix the output reading of failsafe yes/no dialog

- Fix some typos in config stuff (Ali Akcaagac, me)

- Graphical greeter should now work again (Frederic Crozat, Diego Gonzalez, me)

- Fix compilation on non-pam setups and non-linux setup

- Fix default paths (Brian Cameron, me)

- Actually include the theme document!

- Minor other fixes

- Translation updates (Christian Rose, Vincent van Adrighem)

2.4.2.95 stuff:

- Completely new session setup, born out of discussions with Oswald
  Buddenhagen, the KDM maintainer, which will bring about common session
  setup for both MDM and KDM.  We now basically have a common
  /etc/X11/dm/Sessions directory where there are .desktop files are stored
  which describe sessions and these will be shared among KDM and MDM.
  Among other things this also makes the face browser default to using
  ~/.face and the per user saved info is in ~/.dmrc

- The greeter.dtd is updated and there is theme creation documentation
  (Brian Cameron, Aidan Butler, me)

- A face browser for the graphical greeter.  This is selecting by selecting
  a theme that implements it.  Add happygnome-list which does.
  (Patrizio Bruno, me)

- The standard greeter has a GtkTreeView based face browser based on the
  new one from the graphical greeter.

- Accesibility work.  Add possibility of adding modules to the greeter through
  AddGtkModules and GtkModulesList.  Add guesture listeners.  Dwell mouse
  events.  (Niall Power, Brian Cameron)

- Attempt at getting things HIG-ified

- Add "Run XDMCP chooser" button to the system menu, which is now called
  the "Actions" menu, also allow a server type that runs a chooser by
  adding a "chooser=true" to a server definition.

- The XDMCP chooser got an overhaul internally.  Also there is an "Add"
  button to add new hosts by typing in the hostname.

- Add a PostLogin script which is run right after login succeeds but before
  any setup is done.  This can be used if the users home directory needs
  to be setup here.

- Add security/DisallowTCP which will append -nolisten tcp to all
  console displays, and this is by default true.  Fixes #87291

- PingInterval is now PingIntervalSeconds and is now in seconds, it makes no
  sense in minutes really since nobody is that patient anymore these days, also
  the comment in the config file said seconds, so I suppose this is a bugfix,
  should "fix" #103266

- Add a "Delete theme" button to mdmsetup, add a scroll window to the
  theme preview, fixes #110302 and #104757

- PAM now asks for username itself.  This made LocalNoPasswordUsers impossible,
  and so that was removed.  This way hopefully we should work with some more
  pam setups, such as smartcard ones.  Fixes issues from #106537

- The GNOME session chooser stuff is removed since it wasn't working all
  right anyway and was kind of icky.

- The F10 menu in the graphical greeter is nicer.

- When you doubleclick on the radiobutton in graphical greeter Actions
  menu, it activates the item (Mihael Vrbanec)

- There is the Welcome label and RemoteWelcome label now.  The local Welcome
  label is now just "Welcome" since "Welcome to localhost" is silly.  Also
  the graphical greeter uses this, as long as you use the stock label text.

- Check for the capslock turned on before warning about it, and also only
  mention "bad username or password" if we actually asked for a password.
  Fixes #71496

- The "subtype" field to the "show" item for the themes is gone, it was stupid
  and I hope no one used it (it wasn't documented anyhow).

- A bunch of standard pam messages are now translated inside mdm

- If there are many sessions available the graphical greeter presents
  a scrolled window, fixes #104120

- Don't set RUSER for PAM and don't set RHOST if this is a console login,
  apparently this is what it should be doing according to the Sun guys,
  fixes issues from #106537

- The loop of death is now working as it should be and is not as sensitive.
  Also the toplevel loop of death does not abort the display, but only
  disables it for 2 minutes.

- Suspend now works much better and doesn't whack the mdm process,
  fixes #108700

- When more then 50 users on the system don't put them all into
  the combobox in mdmsetup, semi-fixes #111830

- When using shadow passwords, fall back to standard if shadow is
  not available, fixes #109765 (cschelcher@free.fr)

- Use strerror and not g_strerror as the latter returns UTF-8,
  fixes #106655

- Set TEXTDOMAIN to GETTEXT_PACKAGE for the x keeps failing script,
  fixes #106657 (Owen Taylor)

- mdmopens are done using login shell, fixes #106658, also mdmopen
  doesn't deallocate the vt which is apparently not kosher and fixes
  #106656 (Owen Taylor, me)

- Fix RedHat #91031, prepend a dash rather then make shell argv[0] a dash
  (Michael Blandford)

- On Linux detect the runlevel and try to detect the user having run shutdown
  (from say cinnamon-session) and if so suspend the slave operation for 30
  seconds and wait what happens.  Most likely we'll get whacked.

- Fix typos and change some strings, #106207, #105923, #56654 among others

- mdmmktemp is gone as we have not been using it, also mdmaskpass and
  mdmopen are now in libexec

- Many minor fixes

- Build fixes (Brian Cameron, me)

- Solaris fixes (Brian Cameron, Niall Power)

- Translation updates, language additions and such (Danilo Aegan,
  Guntupalli Karunakar, Abel Cheung, me, Christian Rose, Christophe Merlet,
  Jordi Mallach, Christian Neumair, Miroslav Trmac, Pablo Gonzalo del Campo,
  Hasbullah Bin Pit, Vincent van Adrighem, Evandro Fernandes Giovanini,
  David Barzilay, Lucas 'Basurero' Vieites, Duarte Loreto, Kostas Papadimas,
  KAMAGASAKO Masatoshi, Dmitry G. Mastrukov)

2.4.1.4 stuff:

- Raise DisplaysPerHost default to 2 to avoid a FAQ-type-problem

- Add xdmcp/PingInterval key to the default config file

- Fixed up the included spec file

- Fixed some typo's (Kjartan Maraas)

- Fixed Solaris build (Niall Power)

- Added Thai, Mongolian, Indonesian, Kannada, Hindi
  Bengali, Belarusian, Bosnian, Welsh, Persian, Interlingua,
  Albanian, Serbian, Yiddish and Panjabi Language support
  (Ross Golder, Sanlig Badral)

- Sorted languages in alphabetic order (#106293) (Ross Golder)

- Translation updates (Roozbeh Purnader, Christian Rose, Taneem Ahmed,
  Pablo Saratxaga, Danilo Aegan, Jordi Mallach, Dmitry G. Mastrukov,
  Belarusian team, Alessio Frusciante, Lapo Calamandrei, Christophe Merlet,
  Andras Timar, Takeshi AIHANA, Roozbeh Pournader, Artis Trops,
  Kang Jeong-Hee, Stanislav Visnovsky, FSF-India, Abel Cheung, Metin Amiroff,
  Pauli Virtanen, Lauri Nurmi, Kjartan Maraas, Christian Neumar,
  Kostas Papadimas, Vincent van Adrighem, Zbigniew Chyla, GNOME PL Team,
  Evandro Fernandes Giovanini, Duarte Loreto, Pablo Gonzalo del Campo,
  Lucas 'Basurero' Vieites, Ole Laursen, Paul Duffy, Russian team,
  Yuriy Syrota, Miloslav Trmac, Gil "Dolfin" Osher, Progga,
  Christian Neumair, Alexandre Folle de Menezes, Benjamin Greiner,
  Fatih Demir, Arman)

  

2.4.1.3 stuff:

- Fix redhat bug #83334 by fixing md5 code on non-alpha 64bit platforms
  (Matt Wilson)

- Build po directory before others.  Seems to solve an intermittent
  problem with rebuilding .pot file.

- Translation updates (Duarte Loreto, Fatih Demir, Gorkem, Alessio Frusciante,
  Pauli Virtanen, Lauri Nurmi, Kang Jeong-Jee, Christian Rose,
  Alessio Frusciante, Lapo Calamandrei, Christophe Merlet)

2.4.1.2 stuff:

- The chooser works with keyboard and you don't connect to a different
  host if you try to use the keyboard

- intltool*.in files aren't killed on distclean

- Translation updates (Pauli Virtanen, Lauri Nurmi, Dmitry G. Mastrukov,
  Russian team, Christian Rose, Sanlig Badral, Christian Neumair,
  Pablo Saratxaga, Yuriy Syrota, Fatih Demir, Gorkem, Christian Meyer,
  Abel Cheung, Gustavo Noronha Silva)

2.4.1.1 stuff:

- Workaround librsvg (new librsvg should be fixed though) for non-C locales

- Make language dialog in the mdmgreeter at least 400 wide (fixes #103254)

- Don't translate stuff coming from pam (fixes #102691)

- Make AlwaysRestartServer default to true as it's the safer setting

- Use UTF-8 rather then utf8 as apparently X gets weird if it's not "UTF-8"
  (Mike Fabian)

- Query the user in the case the graphical theme includes halt/reboot/suspend
  buttons. (No themes do so far afaik)

- Add pam_env to the pam config

- Some minor cleanup

- Translation updates (Christian Neumair, Daniel Yacob, Kostas Papadimas,
  Stanislav Visnovsky, Andras Timar, Yanko Kaneti, Alexander Shopov,
  Pablo Gonzalo del Campo, Lucas 'Basurero' Vieites)

2.4.1.0 stuff:

- Use background color in the graphical greeter for looking nicer on
  Xinearama displays (#94554)

- Do not translate the copyright string (patch from #101729)

- Fix the shell basename hack

- Allow passing TAB to the login entry (#75939)

- Some string fixes (Alex Duggan, me)

- MDM photo setup now checks for mdm running (RH #70326 and GNOME #101653)

- Be UTF-8 safe on expanding strings (#100738)

- Can use symlinks as session files again (#95380)

- Amharic language added

- Add X-GNOME-BUGZILLA to .desktops (Fernando Herrera)

- Do not run gnome-volume-control since it no longer has the a -i option
  (Luis Villa)

- Store initial environment and use it for starting up the error gui stuff

- Use internal utf8 conversion to avoid glib crack

- Fix japanese wordwrap (Havoc, #91921)

- Unset signals in extra processes and do setsid and all such fun stuff,
  and further fixing of handling processes

- The graphical greeter can use stock tags for labels instead of having the 
  text inside the theme file.

- Translation updates (Dmitry G. Mastrukov, Zbigniew Chyla, GNOME PL Team,
  Hasbullah Bin Pit, Kjartan Maraas, Vincent van Adrighem, Artis Trops,
  Miloslav Trmac, Christophe Merlet, Daniel Yacob, Jordi Mallach,
  Ole Laursen, Christian Rose, Andras Timar, Marius Andreiana, 
  Kostas Papadimas, Yanko Kaneti, Belarusian team, Pablo Saratxaga,
  Gustavo Noronha Silva)

2.4.0.11 stuff:

- No longer require libglade-convert

- Don't create runaway slave processes on server reinit.  Fixes very slow
  subsequent logins.

2.4.0.10 stuff:

- Fix timeout on stopping the daemon, now stops immediately.

- mdm-restart, mdm-soft-restart, mdm-stop find the config file if you haven't
  specified --sysconfdir on the configure command line.

- Minor cleanup

2.4.0.9 stuff:

- Race fixing galore.  Tested many new codepaths, fixed many new races.
  Well not new.  Really old ones but still.  We're now much better
  on handling stuff being killed without us knowing, and stuff dying
  in different orders.  May fix redhat bug #72295

- Automatic VT management.  This should fix #62997.  Basically on
  linux (only currently) we can find a free vt that is higher then
  a certain number (by default 7) and force the server to use that.
  mdm can now be safely run as service with this on.

- The locale.alias file now can have a list of locales to try for
  each language.  We also don't list locales that don't work.  This
  way by default we can use the .utf8 locales if they exist.

- DefaultLocale no longer exists, the system setup is used.  This
  was really broken.

- We no longer setup locale to a language which doesn't exist.
  We also don't unalias languages as this was broken.  Just pick
  an existing language (I doubt anyone has a setting which requires
  unaliasing anyway)

- More comments in the default config file as a bad excuse for
  documentation

- The chooser can also read <host>.png from the host image
  directory and not just <host>

- The slave now has it's own process group.  Should make things work
  better when started from init.

- Handle waiting for X to restart in a new an inventive way.

- UserAuthDir can now use the ~/ prefix so that this setting can
  now be useful.  But better left empty anyway.

- A bunch of minor fixes and cleanup.

- Translation updates (Christian Neumair)

2.4.0.8 stuff:

- New script to aid in testing graphical greeter themes, mdmthemetester.
  It will run Xnest with mdmgreeter in debug mode with the specified theme
  and under the specified environment.  Run it to get help.

- No longer 'asks twice' in graphical login to halt, reboot or suspend
  Fixes #90971

- When restarting the greeter from the setup dialog the setup dialog will go
  insensitive and force a busy cursor on itself.

- New icon!  And new logo.  The new icon is now girlfriend approved (she said
  it's not as bad as my first attempt to draw one, so I suppose that means
  it's ok).  Not that I did ALL the drawing, I borrowed the gnome-term icon
  and worked on that :)

- The focus stuff in both greeters is done in a nicer way.  Also the graphical
  greeter has a "menubar" (invisible).  You can activate it with F10 like any
  other menubar.  This all should make both greeters even more accessibility
  friendly.

- The Init/PreSession/PostSession directories can now also include Flexi,
  and XDMCP scripts which will be run in case the server is flexi or XDMCP.
  Also you can specify a <hostname> script to run for specific hosts.

- You can now setup the daemon to log in certain local (not logging in
  through xdmcp) users without a password, Just set the
  daemon/LocalNoPasswordUsers to a list of comma separated names.
  Fixes #51908

- The daemon is fixed so that if pam asks questions during autologin, they
  will actually get asked.

- mdmphotosetup no longer hangs on "Browse".  Fixes #90613
  
- Busy cursor will never get stuck on autologin

- Wait 2 seconds between killing local servers on daemon restart or stop.
  This prevents a hung keyboard on my box.

- Xnest keyboard stuff solved in a better way.  Remove the -kb from the command
  line so that Xnest understands XKB, and then in the Init script migrate
  keyboard configuration.  Also read capslock state from the parent server
  in the greeter.

- Close the 0,1,2 descriptors in the mdmXnestchooser so that things like
  "`mdmXnest -b`" shell things to get the display number work.

- mdmXnestchooser acts more nicely on being killed

- Config file is updated and includes more "documentation" comments

- If you haven't changed the config then if you are using the tarball install,
  the config will be overwritten with the one from the tarball.

- An incredible "sleep(1)" hack to fix race on server reinit

- A whole bunch of random small fixes, and changes.

- Translation updates (He Qiangqiang, Wang Li, Marius Andreiana,
  Yukihiro Nakai)

2.4.0.7 stuff:

- The graphical greeter has mnemonics so that you can use the keyboard to
  log in!

- Don't run BackgroundProgram unless BackgroundType=0.  You can get the
  original behaviour with RunBackgroundProgramAlways=true.  This is to
  fix the redhat setup to be 'saner'

- The Xterm failsafe session runs the xterm in the lower right hand corner.
  I just hope that redhat uses this session as it does cooler things then
  the Xsession failsafe which sucks ass.

- A bunch of scattered minor fixes

- Add redhat-config-xfree86 to the XKeepsCrashing script (Havoc)

2.4.0.6 stuff:

- Stop using stdio in the slave to communicate with the greeter (greeters
  still use stdio).  This "may" fix the FreeBSD /dev/ttys issue.  Plus it's
  a nicer way to do it.

- Read and honour the gtkrc setting in the graphical greeter, fixes #90003

- Add a DIRTY_SERVERS and SOFT_RESTART_SERVERS fifo commands which will
  make mdm restart all the X servers next time it wants to reinit (such as
  when a user logs out) or as soon as possible (in case of SOFT_RESTART_SERVERS)
  (See doc in daemon/mdm.h, look for the MDM_SOP_)
  Useful for changing X configuration.
  You can do "(echo;echo DIRTY_SERVERS) > /var/mdm/.mdmfifo" (Given that
  ServAuthDir is /var/mdm).  This is a possible solution to issues
  such as in redhat bug 70072

- Only set MDM_LANG if a language different from the system default was
  selected 

- In Gnome and Xsession sessions, ensure that the language is set properly
  fixes #89970

- Fix crasher bug on closing the mdmsetup window, and fix applying changes
  that happened before the writing timeout

- Clear the initial message even on further tries to log in, fixes redhat bug
  70991

- When starting Xnest give it the current font path.  Should fix #89308

- make the mdmXnest link relative

- Gnome and Xsession scripts no longer read in the xdm resources, I was
  told this is bad

- Fix some RTL issues with the language lists

- Ignore up/down/tab in the graphical greeter just like in the standard one,
  focus doesn't work right here anyway

- Translation updates (Dmitry G. Mastrukov, Andras Timar, UHU Linux team,
  Manuel Borchers, Christian Neumair, Tõivo Leedjärv, Duarte Loreto,
  Stanislav Brabec, Michal Bukovjan, Gustavo Noronha Silva, Peteris Krisjanis,
  Akira TAGOH)

2.4.0.5 stuff:

- Applied patch from #89454 (Havoc/Owen, me) to change .gnome to .gnome2,
  to fix interaction with gnome2.  This mostly applies to the session
  chooser.  Unfortunately this resets your saved language and session
  type.

- Fix the pid checking routine on non-linux systems

- Use internal routines for writing of the config file so that things
  such as comments are now preserved, and some related problems are
  fixed.

- A whole bunch of minor fixes and cleanups, including some possible races
  and hangs

- Don't use deprecated stuff except for the occasional CList usage

- Fix io channel stuff in the greeters (actually set unbuffered and NULL
  encoding, this may just fix all the FreeBSD issues)

- Recheck for mdm running before sending any update from mdmsetup, this means
  that even if you run mdmsetup before mdm, things will still work.

- Update background and logo on the fly in the standard greeter

- Properly resize window in the standard greeter when we can't fit

- Added several more untranslated strings to the language list
  (Yanko Kaneti, me)

- Remove the failsafe 'C' locale addition and replace it with en_US,
  in case no en_* language is installed.

- Translation updates (Fatih Demir, Pablo Saratxaga, me)

2.4.0.4 stuff:

- Fix George's stupidity to allow people to log in (Jacob)
  The gnomerc was not a correct shell script and I didn't notice

- Fix some weirdness on setup proggie starting (change dir to something
  sane and fix setting the cursor race)

- Support .bz2 archives as theme archives in the mdmsetup

- Translation updates (Stanislav Visnovsky, me)

2.4.0.3 stuff:

- My girlfriend doesn't like that ugly green color that is used as the
  default so use the one that ximian is using since that one is pretty cool.

- Update the session scripts (especially the Xsession) setup and update the Pre
  and Post scripts to be all nice and all that.  This fixes a whole bunch of
  weird problems.

- Run gnome-volume-control -i in gnomerc

- When the users shell is some weird binary name (something that we don't know
  if it is a shell or not) run users session in bash or sh.  should fix #64662

- Make sessreg very happy.  Should fix sessreg issues on BSD, and now
  sessreg registers the correct pid with the utmp/wtmp so it all works
  out nicely

- Run xmodmap with the default Xmodmap in the Init script, this might fix
  #86098

- Fix the error display to be nicer and wider

- In main server wake up the main loop on signals, this may fix some
  non-linux issues on systems where poll is not woken up by signals

- Apply a few ximain patches, or at least do changes inspired by them

- Some cleanups/fixes of places where unix is very weird and could cause
  problems in fringe cases

- The mdmXnestchooser now works much better in the Xnest only mode, that
  is on rh 7.3 it now actually works again.  You can also start it only
  as mdmXnest to get the pure Xnest only mode.  This would be the user
  friendly way of starting Xnest.

- Add busy cursor when starting the configurator, and a busy cursor when
  restarting the greeter

- Fix restoring the window order after we change the greeter, fixes #88533
  (The window was disappearing before)

- Happygnome theme yet again fixed (Frederic Crozat)

- 24 hour clock preference now on the main page in mdmsetup

- mdmsetup greeter themebrowser now wraps test correctly

- Corrected some language names and added a few extra languages, fixes
  among others #88273, #88423

- Translation updates (Christian Rose, Vincent van Adrighem, Zbigniew Chyla,
  Ole Laursen, Hasbullah Bin Pit, Christophe Merlet, Changwoo Ryu,
  Kjartan Maraas, Jarkko Ranta, Jordi Mallach, Yanko Kaneti, me)

2.4.0.2 stuff:

- Add busy cursor when we start X so that the user knows that MDM
  is busy before the greeter/chooser appears.

- Added a 'System default' language choice.  This choice will use
  whatever the system sets up elsewhere.  Also this fixes using the
  system default on *BSD

- Remove the English en locale since 'en' is not a legal locale,
  now you have to pick either american or british english.

- Fix the unresponsive behaviour when first asking for username in the
  graphical greeter, bug #83187

- Added 'Last' language choice to the graphical greeter.

- The graphical greeter follows the 24 hour clock setting (Terje Rosten)

- Update the Happy GNOME theme (Steve Fox)

- Cleanup of the IO channels all over, this fixes some FreeBSD issues
  but not all (Kesor, me)

- Added more languages and more untranslated names, bug #84290 among others,
  (Hasbullah Bin Pit, me)

- Ensure existance of file descriptors 0, 1 and 2 on startup, should fix
  some problems on very esoteric setups.

- Source /etc/profile in the mdm script

- All installed .desktop's have Encoding=UTF-8 as per the standard

- Fix the failsafe question dialog

- Fix crash and login window reparenting in the mdmwm window manager

- Corrected some yodaspeak, bug #83077

- Some more sanity fixes

- Translation updates (Christian Rose, Jordi Mallach, Ole Laursen,
  Peteris Krisjanis, Kjartan Maraas, Zbigniew Chyla, GNOME PL Team, me)

2.4.0.1 stuff:

- Fix killing other processes including the session when greeter settings
  were touched, fixes #84717

- Don't run the mdmwm when there is a windowmanager present, fixes #86620

- Fix some Solaris compilation issues, fixes #86679

- Don't clear env for chooser, greeter and setup and run mdm itself from
  a script, fixes #87387

- Properly center windows

- Fix mdmchooser to actually work

- Install missing files from the happygnome theme, fixes #86264
  (Frederic Crozat)

- Fix non-xdmcp compile, fixes #85681, and properly test for
  xdmcp, fixes #86607 (Mike Castle, me)

- Fix #85785 by linking with -lcrypt as the first thing

- Fix wiping the pid file by mistake on config file errors

- On linux do better checking for stale /var/run/mdm.pid files,
  by checking /proc (Jim Bray, me)

- Many random fixes all around

- If we can't write the user authentication in the home directory
  use the fallback file (say due to out of disk space errors)

- Add a 'handled' flag for servers (see default mdm.conf for some
  notes on how to use it) that makes it possible to run unhandled
  X servers (such as X terminals).

- Fix finding the parent process (Oswald Buddenhagen)

- Translation updates (Yanko Kaneti, Jesus Bravo Alvarez,
  Ole Laursen, Manuel A. Fernandez Montecelo, Christophe Merlet,
  Vincent van Adrighem, Hasbullah Bin Pit, Pablo Saratxaga,
  Tõivo Leedjärv, Changwoo Ryu, Duarte Loreto, Andrew V. Samoilov,
  Dmitry G. Mastrukov, Peteris Krisjanis, Borislav Aleksandrov)

2.4.0.0 stuff:

- New theme, "Happy GNOME" by Steve Fox

- Translation updates (Christophe Merlet, Jarkko Ranta, Mantas Kriauciunas,
  Carlos Perello Marin, Kjartan Maraas, Tõivo Leedjärv, Jordi Mallach,
  Stanislav Visnovsky, Zbigniew Chyla, GNOME PL Team, Christian Rose)

2.3.90.6 stuff:

- SECURITY FIX! After an automatic session the display wasn't reinited
  so clients could be left hanging around.  This is only present in the
  2.3.90.x series and only affects automatic logins.

- Automatic login is actually done on the first login only and Timed
  login is actually done only on the first display (as it all should be)

- Translation updates (Germán Poo Caamaño, Jordi Mallach,
  Hasbullah Bin Pit, Tõivo Leedjärv)

2.3.90.5 stuff:

- Some work on making the language setup more sane and integrating
  the graphical and the standard greeter language setups

- Added more untranslated language names (Changwoo Ryu, me)

- The graphical greeter now actually works with timed login stuff,
  does enable/disable during configuration, and gives closing pam
  comments after login is completed (such as that your pw will expire
  or such)

- The timed login time is now increased on any key or mouse press on
  any widget.

- The shipped locale.alias now lists all the languages we know,
  and doesn't include any encodings or dups or other random garbage

- Xnest is now being passed the -kb argument to disable the xkb
  extension on the Xnest as this just causes problems apparently. (#66610)

- The mdmXnestchooser command now actually uses the command you gave it
  in the config file or on the command line

- The graphical greeter is actually translated, plus a bunch of
  other translation issues are fixed (#82549)

- Possible crashes and random weird errors fixed by not using g_print
  for communication (since that does charset conversions which we don't
  want to do)

- Translation updates (Jarkko Ranta, Stanislav Visnovsky, Kjartan Maraas,
  Ole Laursen, Zbigniew Chyla, GNOME PL Team, Carlos Perelló Marín,
  Christian Rose, Vincent van Adrighem, Duarte Loreto, me)

2.3.90.4 stuff:

- IMPORTANT: Change the behaviour of session scripts.  Now mdm will
  automatically start writing output to ~/.xsession-errors for EVERY
  session file and not just in the Xsession file.  Well every file
  except the failsafe ones (including sessions named 'Failsafe')

- More error checking.  Check if we messed up writing the auth stuff
  and give an error, also check if the session lasted less then 10
  seconds in which case give a warning rather then silently fail.

- Don't init gnome in the daemon, this should fix a whole bunch
  of random issues and crashes.  Also don't init gnome in the
  chooser.

- Use setresuid to fix setuid problem with the failsafe gtk stuff.

- Browser now gets the pictures through a pipe rather then through
  temporary files.  This is much nicer.

- Fix hostname and interface querying.  Should work better on "broken"
  setups now.

- Fix focus issues on the failsafe stuff

- Fix autologin stuff (should fix #68160)

- Use BSDs setusercontext if found.  This is not fully tested as
  I don't have a BSD box.

- Add greeter/MinimalUID which is the minimal UID to show in the
  browser and in the dropdown lists in mdmsetup

- Don't exclude people from the browser that have '*' in the password
  field as that could be legitimate

- Fix xnest flexi server on nfs mounted home dirs with root squashing.
  This required a protocol change to the socket protocol, but I don't
  think anything outside of mdmflexiserver is using it (and it will
  fail gracefully anyway), fixes #82122

- Some random UI issues fixed (#80038, and others)

- The graphical greeter is now translatable (and thus translated into
  more languages)

- I bet no one reads these long NEWS sections anyway.

- Photosetup now always copies to .gnome/photo, even if the picture
  is in the pixmaps directory

- Few crashes fixed

- Build fixes, among others #79374 (Christophe Merlet, Carlos Perello
  Marin, me)

- Translation updates (Vincent van Adrighem, Duarte Loreto, Kjartan Maraas,
  Stanislav Visnovsky, Christian Rose, Zbigniew Chyla, GNOME PL Team,
  Ole Laursen, Young-Ho Cha, Changwoo Ryu, Abel Cheung, Simos Xenitellis, me)

2.3.90.3 stuff:

- The instant apply, no crack, setup proggie (mdmsetup) now works,
  mdmconfig is removed (Check out the mdmgreeter theme selector, though
  we only have one theme now)

- Fix the i18n encoding issues.  non-english users can now log in!  Yay!
  The daemon is back to not using UTF-8 but the locale specific encoding
  because of fun GConv cache crack.  All the utf8 stuff is done on the
  greeter side now

- Leak fixes #80888 (Ali Akcaagac, me)

- Mdmphotosetup fixiage #80835

- Look into other dirs for an X server, and use /usr/X11R6/bin/X by default
  #80829 (Ali Akcaagac, me)

- Check for socklen_t #79373

- Fix focus on the Failsafe xterm session

- Randomly scattered fixes

- Greeter themes now have info files, so that we can have some info about a
  theme for the theme browser

- Bunch of greeter work to bring it more up to speed with mdmlogin, though
  it's still not quite there yet.

- Add an icon for the photo chooser 'capplet' (Seth)

- Some dialog fixes all around

- Fix mdmchooser, use a completely new looking glade file

- Translation updates (Pablo Saratxaga, Zbigniew Chyla, Stanislav Visnovsky,
  Christophe Merlet, Ole Laursen, Kjartan Maraas, Changwoo Ryu, 
  Germán Poo-Caamaño, Fatih Demir, Duarte Loreto, Abel Cheung, 
  Jarkko Ranta)

Issues with this version:

- You need a very new libgnomeui to run mdmsetup else it'll crash

- The graphical greeter (mdmgreeter) is still not where it should be
  functionality wise, but it is mostly usable as a login window

2.3.90.2 stuff:

- LOTS of new greeter work (Alex, Jonathan)

- Some internal reordering, and preparing for on-the-fly configuration updates
  for some keys

- Start of a new configurator.  One without crack (George's definition of
  what's crack applies).  It doesn't actually work yet.  But then again
  mdmconfig doesn't work either.

- Some UI/String Fixes #77151, #73817 and others (Benedikt Roth,
  Gaute Lindkvist, Karsten Weiss, Abel Cheung, Havoc)

- Correct handling of signal blocking.  We just unblock everything before
  running a child regardless of how we were started.

- Some leaks plugged

- Ability to have a different greeter for remote connections

- Install .desktop files appropriately (Seth)

- Estonian entries added (Tõivo Leedjärv)

- Fix some localization stuff.  Use translated strings on the console only
  if we can verify that it's UTF8

- Build fixes (Jacob, Alex, Gediminas Paulauskas)

- Updates from the 2.2 branch (Kjartan Maraas, Pablo Saratxaga, Karsten Weiss,
  me)

- Translation updates (Vincent van Adrighem, Ole Laursen, Changwoo Ryu,
  Ole Laursen, Tõivo Leedjärv, Zbigniew Chyla, Duarte Loreto, Christian Rose,
  Stanislav Visnovsky, Jarkko Ranta, Hasbullah Bin Pit, Khairulanuar Abd Majid,
  Kjartan Maraas, Christian Rose, Wang Jian, Wang Li, Valek Filippov, 
  Carlos Perello Marin, Lucas 'Basurero' Vieites, Stanislav Brabec,
  Abel Cheung)

2.3.90.1 stuff:

- All changes up to 2.2.5.4

- Fix moving of login window

- Make welcome message surrounded by <big><big><big> to make
  it ... big

- Fix usage of glade2, so that chooser now works, and mdmconfig crashes
  later in the startup then in 2.3.90.0

- Face browser now works again

- Fixed some typos and message cleanups (Kjartan Maraas)

- Updated translations (Christian Rose, Duarte Loreto, Stanislav Visnovsky,
  Zbigniew Chyla, Pablo Saratxaga, GNOME PL Team, Kjartan Maraas,
  Jarkko Ranta)

2.2.5.4 stuff:

- SECURITY FIX! Make sure the egid is reset to the user gid before
  starting a session.  This could present a security risk under a
  certain circumstances, that is if your /bin/sh does not drop privileges.
  It also fixes the failsafe gnome session

- PositionX and PositionY now take negative values that work
  like standard X geometries.  A negative value is an offset from
  the right/lower edge.

2.3.90.0 stuff:

- All changes up to 2.2.5.3

- Ported to GNOME 2, still uses some deprecated widgets and such,
  but it should be fully functional

- A little bit of code restructuring and cleanup

- Add option to preserve LD_ variables to allow easy debugging

- Docs use XML and bunch of other doc updates (Trevor Curtis)

- Removed font for welcome message, the welcome message now supports
  standard pango xml-like markup

- Failsafe gui dialogs are pure gtk now and do not require an exec

- Translation updates mostly overlap 2.2.5.3.  It's also probably
  all broken now, I think we need to convert to utf8 or some such

2.2.5.3 stuff:

- PAM support revamped.  Session open and credentials are done before
  we do anything else.  Also we work on one pam handle only, and
  yet again switch setcred/open_session order (Karsten Petersen, me)

- Autologin is now done with a separate pam configuration.  mdm-autologin
  service.  This just logs anyone in without asking for a password,
  but this makes autologin work with some pam setups.  Of course
  you must now modify mdm-autologin in addition to 'mdm' if you have
  some weird pam setup.

- Fix mdmconfig saving of server definitions

- Add possibility of multiline welcome message by use of '\n'

- Use the text dialog interface for more errors including the toplevel
  loop of death

- Fix a USR2 race in the slave if the main daemon is already dead
  (this makes 'killall mdm' work right)

- Translation updates (Kjartan Maraas, Gustavo Maciel Dias Vieira,
  Abel Cheung, Christian Rose, Duarte Loreto, Christian Meyer,
  Stanislav Visnovsky, Peteris Krisjanis, Artis Trops, Akira TAGOH, 
  Göran Uddeborg, Ole Laursen)

2.2.5.2 stuff:

- If multiple local servers are setup, then wait until one has started
  plus 3 more seconds before starting the next one, this prevents such
  not-good things such as full lockups happening

- Fix crash of greeter for timed login setups

- Keep 4 old copies of the X server logs to make debugging bad
  X setups easy

- The WM now supports NoInput windows, which improves mdm
  accessibility and makes it possible to run things like xscribble
  (Crossfire (from debian bug report) and moi)

- Minor leak fixes

- spec file updates (Gregory Leblanc)

- Translation updates (Roy-Magne Mo, Carlos Perelló Marín,
  Christophe Merlet, Khairulanuar Abd Majid)

2.2.5.1 stuff:

- IMPORTANT: XKeepsCrashing now has different semantics,
  all the logic of crash recovery is no in this script including
  gettext and finding the configurator and all that.  So
  the script no longer takes any arguments.  If you have custom
  versions of this script you will have to change them to reflect
  this.  As a result of this XKeepsCrashingConfigurators is gone

- Skipped a version number for greater stability

- By default also look for XFdrake as a configurator on X crashes
  to work on mandrake out of the box

- pam setup is now the same as in the redhat and mandrake
  packages

- If the X server crashes within 5 seconds of telling us it's
  ready, still treat it as a crash, since things like inability
  to open mouse makes it die after it tells us it's OK

- XKeepsCrashing now handles inability to open mouse and
  offers to run mouseconfig (or if that's not available
  just the x configurator it finds)

- Fix crash on FreeBSD with setenv with NULL (just treat NULL
  as empty string) (Heath Nielson)

- DESTDIR fixes (Frodo Looijaard)

- mdmopen now sets VT_NUMBER env var for it's child

- Focus issues fixed in mdmwm (the windowmanager of the greeter)

- Check for existance of a home directory.  If it doesn't exist,
  the user has the option of canceling the login or logging in with
  the home dir set to root.

- Many MANY races fixed in handling of extra processes.  Mdm should
  now always clean up after itself well if killed.  And it will
  now not screw up if the child processes die too quickly.

- Some configure.in and build fixes, require libglade explicitly in
  the configure script and also make console helper enabled by default
  if it's possible to use it

- mdmXnestchooser now has quite a few more modes of operation, in effect
  it can now be used as a generic Xnext launching program.  It also
  by default reads the Xnest command from mdm.conf
  
- Remove VerboseAuth configuration variable as it was utterly useless,
  and actually resulted in usability degradation when on.

- Include our own mdmmktemp like the mktemp program for shell scripts

- Fix stuff on console with mdmopen by printing \033(K onto the console
  before it does anything else

- Work with KDE face directories (username.png rather then username) as
  well (Mandrake)

- Accept keypad enter in the greeter (Mandrake)

- Run ssh-agent if it is found available and not yet running in the Gnome
  session file (Ximian)

- Errors from pam go into a separate dialog and information messages that
  come just before login are also in a dialog so that the user gets
  a chance to see them

- Use the pam wait time on errors, if available, this fixes a bug where
  the wait time was doubled because it was both the pam one and the
  mdm one.

- Make sure the cookie file is full of all different local addresses
  and don't whack out if the local hostname is not resolvable.  Also
  if we still can't start the server, tell the user rather then giving
  up quietly.

- Always print the "Please enter your username" message

- Translation updates (Ole Laursen, Stanislav Visnovsky, Christophe Merlet,
  Peteris Krisjanis, Artis Trops, Marius Andreiana, Christian Rose, 
  Zbigniew Chyla)

2.2.4.3 stuff:

- Use PAM_ESTABILISH_CRED for pam_setcred

- Parsed login names are now reparsed every time

- Minor fixes and greater paranoia all over the place

- XDMCP timeouts default to 15 instead of 30 seconds

- Autoconf 2.50 / Automake 1.5 compatibility (Ali Akcaagac)

- Translations updated (Zbigniew Chyla, Kjartan Maraas, Ole Laursen,
  Fatih Demir, me, Stanislav Visnovsky, Gustavo Maciel Dias Vieira)

2.2.4.2 stuff:

- Keep a global pam handle around again, and add a pam conversation
  dialog when no greeter is up.  Set RHOST and RUSER and fix some
  other pam related things.  Hopefully we're more pam correct now.

- Have an option that forces 24-hour clock even in locales which
  like 12-hour clock (Terje Rosten, Ali Akcaagac, me)

- Change how FLEXI_XNEST works, be more paranoid in who we allow to
  run an an xnest, and we always run as the user who requested it.
  It requires that the user has a .Xauthority file with an
  MIT-MAGIC-COOKIE-1 for the current display.

- Fix many obscure fork races

- Now exports a procol version environmental variable to the greeter
  so that it's easier to use external greeters.

- Ensure that /tmp/.ICE-unix exists

- X servers now run with root gid and not mdm gid

- Ugly fix to the toolbar deadlock problem, very VERY evil, but
  it's really a bug in gnome-dock

- When we run a flexi console server, lock the screen with xscreensaver.
  Also throttle xscreensaver so that it doesn't take extra CPU power.

- Yet another extension to XDMCP, which makes the MANAGED_FORWARD
  stuff more reliable on bad networks.  It is however 100% compatible
  with 2.2.4.1 in operation.

- Minor fixes all over the place

- Documentation updates (Trevor Curtis)

- Translations updated (Zbigniew Chyla, Kjartan Maraas, Ole Laursen,
  Stanislav Visnovsky, Yukihiro Nakai, Roy-Magne Mo, Carlos Perelló Marín,
  Pablo Saratxaga, Christian Rose, Christophe Merlet, Christopher R. Gabriel)

2.2.4.1 stuff:

- X server editing now actually works, and mdmconfig produces
  correct config files.  DOH!

- X server editing now enforces strict order of servers (it only sort
  of did before)

- XDMCP can now run a script to get a custom WILLING status script
  (Matt Forrest, me)

- Change the mdm extension protocol to XDMCP.  The MANAGED_FORWARD
  was being used in a wrong way and required a slight protocol change,
  as this is a non-required part of the protocol nothing will break.

- When declining a connection, give statement why it is, to aid in
  debugging your XDMCP setup.

- Implement the (previously documented) xdmcp/DisplaysPerHost
  configuration option.  So now the default is one connection per
  host, so you may need to change this in your setup if you need
  more.

- Fix one case of s/login/username/ in the greeter and in XDMCP mode,
  the button to kill the login is "Disconnect" and not "Quit"

- The reference doc updated a tad, still somewhat out of date,
  the configurator documentation has not been updated however.

- Many, many fixes mostly leaks, some minor some bigger

- Updated translations (Christian Rose, Abel Cheung, Kjartan Maraas,
  Zbigniew Chyla)

2.2.4.0 stuff:

- New unix socket protocol for controlling the daemon from outside.

- A way to add servers at runtime by any local user.  So called flexible
  servers.  That is implementing a "New login" kind of thing.  This new
  server can also be a nested login with Xnest.  In which case anyone on
  an X connection can run this.  All without the use of XDMCP and opening
  up an extra TCP port.  This is more user friendly and also this way the
  daemon can manage the servers better.

- PAM usage more correct with respect to setting credentials.  This makes
  pam_group actually work, and probably some other things

- Implement a vt open (mdmopen) alternative inside mdm itself.  This
  version is stripped down version of open and it works much better for
  mdm's purposes of it.

- Implement a local helper (if pam is used) for the password asking
  when attempting to run X configuration.  This is more friendly
  and more correct.

- Keep track of all new helper processes and kill them off on exit.
  Previously some of these could be left hanging.

- When a display number is busy, ask the user about starting the
  server on an empty display number (if no mdmopen or dialog, just
  do it)

- Keep track of the VT (on linux) of local servers and allow programs to
  query this list through the socket protocol.  Perhaps to offer the
  user a menu and a gui way to switch between logins.

- More thorough closing of file descriptors.

- Also look for 'whiptail' when looking for a 'dialog' implementation

- In the photo setup, don't require a browser to be on.  In that case,
  just warn the user.

- Some doc fixes (Kjartan Maraas)

- Added Galician (gl_ES) and Brazilian Portuguese (pt_BR) to the menu
  (Jesus Bravo Alvarez)

- Various minor fixes.

- RPM Epoch raised to 1 since it seems others have been in an Epoch arms
  race.

- Translation updates (Ole Laursen, Christophe Merlet, Abel Cheung,
  Jesus Bravo Alvarez, Pablo Saratxaga, Andras Timar, Zbigniew Chyla,
  Kjartan Maraas, Marius Andreiana, me)

2.2.3.2 stuff:

- printf/syslog format bugs fixed which fixes possible security
  problems (Cyril Diakhate, Abel Cheung, Havoc, me)

- Some fixes coming from the Gnome usability report (Heeten Choxi, me)

- Nicer titlebar

- Run /etc/X11/xinit/xinitrc.d from the Gnome session

- RUNNING_UNDER_MDM defined for init scripts (Owen)

- Embrace and extend XDMCP so that choosing works nicer.  No worries, still
  100% compatible with XDMCP 1.0

- In the redhat package don't use the GiveConsole/TakeConsole since they're
  not kosher, pam does this for us, for standard, non rpm build this was never
  done

- s/Halt/Shut down/

- Don't ask to save Failsafe sessions

- When user doesn't exist, ask for a password anyway

- Various minor fixes (Owen, me)

- Translation updates (Stanislav Visnovsky, Zbigniew Chyla, Christian Rose,
  Faith Demir, Abel Cheung, Christian Meyer, Kjartan Maraas,
  Christopher R. Gabriel, Yukihiro Nakai, me)

2.2.3.1 stuff:

- file descriptor leaks and mess-ups dealt with, making mdm2 work again
  on debian and probably others (Ryan Murray, me)

- Posibility of a "soft" restart, that is scheduling a restart when all logins
  end.  This is now possible from mdmconfig.

- A new "protocol" for the slave to talk to the daemon by way of a fifo.

- The spec file now schedules a soft restart on install (this will work only
  for upgrades from 2.2.3.1 to higher versions obviously)

- Handle the slave process crashing much more gracefully.  And be generally
  more thorough in killing our children.

- Killing an X server while running is no longer treated as an X crash by mdm

- Other cleanups and minor fixes

- Translation updates (Christian Rose, Ole Laursen, Zbigniew Chyla)

2.2.3 stuff:

- Various XDMCP fixes, including a working indirect queries (the host chooser).
  Plus various chooser enhancements and fixes

- The "window manager" better handles window positioning, to make programs
  like gkrellm behave more sanely.  Also follow the motif decoration hint.

- The internal error/info dialog uses GNOME to look prettier and is centered

- Build xdmcp only if the libs exist

- Handle upgrades more sanely.

- Scripts get correct environment

- On failsafe xterm session just warp the pointer to transfer focus,
  this makes pointer focus still work

- An option to always restart server rather then just reinitializing it
  when a user logs out

- XDMCP login box has a "Quit" menu item which kills the connection,
  useful if you chose a box you don't know the login to.

- Now handles busy server by notifying the user instead of treating it
  as a server crash

- Docs and configurator up to date to all new configuration keys
  (Trevor Curtis, me)

- Better pam and console helper configure setup and other configure fixes

- Add ja and zh_TW.Big5 translations again (Karl Eichwalder, me)

- Assorted fixes, cleanups (Kjartan, Nalin Dahyabhai, me)

- spec file cleanup (Dean Scott)

- Translations (Marius Andreiana, Christian Rose, Ole Laursen,
	        Karl Eichwalder, "R.I.P. Deaddog", Christian Meyer,
		Pablo Saratxaga, Kjartan Maraas, Christophe Merlet, 
		Khairulanuar Abd Majid, me)

2.2.2.1 stuff:

- SECURITY FIX!  Rebake cookies before reinitializing the local X server.
  Only local X servers are affected, this bug allowed an attacker to log in,
  save his cookie, which would then be used for the user who logs in next.

- Fix a race preventing users to log in sometimes

- Ability to turn of failsafe and chooser sessions (Havoc)

- Fix mit cookie usage to not clobber cookies containing zeros

- Fix remote XDMCP authentication

- Pinging for XDMCP sessions to detect if they're dead

- Saving current gnome session is done from mdm (gnome-core HEAD no longer
  saves it)

- Don't change utmp from Pre/Post session scripts

- PAM related fixes

- Better handling of X failures

- Nicer iconify button

- mdmphotosetup permissions fixes

- Always add POSIX/C locale setting to language menu

- Nicer minimize button

- Ignore .rpmorig files

- Other fixes

- Translations (Stanislav Visnovsky, Kjartan Maraas, me)

2.2.2 stuff:

- When X keeps crashing ask if we should run the X configuration
  (after asking for the root password of course:)

- Fixup shadow and crypt authentication methods

- Fix session directory reading in greeter (Rémi Cohen-Scali)

- Fix the -lwrap and other configure issues

- Better "management" of login screen windows

- The face browser actually works now (Rémi Cohen-Scali, me)

- A clock on the login window (Jonathan, me)

- The language list is now translated

- A small proggie to set your mdm browser face

- Accept clicks by the right button as if they are the first button,
  we don't know if the user is left or right handed yet

- Background color seeps through transparent images and allow limiting
  remote logins to only a color backgrounds

- Tooltips on things to make the greeter easier to understand

- AllowConfig now on by default

- Properly runs with a missing mdm.conf

- Remove old failsafe stuff and use the new builtin failsafes, which
  are much nicer

- Saner focus on all mdm windows, and give the failsafe xterm focus

- Gnome and Xsession default sessions now setup xresources and read in
  keymaps

- Default is default if no default was set and it exists (confusing huh? :)

- More Xinerama support (backgrounds, error dialogs, xterm failsafe session)

- Greeter segfault fixed when no language file present

- Anti-hosification measures.  MDM will now try to do something to allow
  itself to be fixed on some mistakes.  Rather then just aborting and leaving
  crack in the syslog.  And mdmconfig let's you see hosification as it happens

- Updated fixed icon entry

- mdm-restart script to automate restarting of mdm by HUPing the main daemon

- Mucho fixes

- Bunch more tooltips on things

- Documentation is here! (Trevor Curtis, me)

- Updated translations (Khairulanuar Abd Majid, Christian Meyer, Ole Laursen,
  Kjartan Maraas, Christian Rose, Fatih Demir, Stanislav Visnovsky,
  Emese Kovacs, Matthias Warkus, Kjartan Maraas, Jarkko Ranta, me)

2.2.1 stuff:

- Keyboard navigation in the greeter (Ryan Murray)

- debian build stuff (Ian McKellar)

- Ability to set the background color/pixmap,
  now requires GdkPixbuf because of this.

- The root overlay window is gone now and we have real focus
  management.  In effect mdmlogin is a VERY simple windowmanager.

- Ability to choose a specific GNOME session

- Ability to run the configurator directly on the login screen,
  which requires a root password of course (Disabled by default)

- An editor for the Sessions directory in mdmconfig (Lee)

- Title bar can be hidden by configuration

- The icon entry is now sane with the panel icon entry hack

- If no LANG variable set mdm starts out in the DefaultLocale
  from the config file

- Now non-verbose mode is actually useful and verbose mode
  is still security safe.

- For consistency AllowRoot now works on pam setups as well,
  also a setting just for remote root logins.

- Timed login, you can set up mdm to log in a certain user on the
  first local display after a specified timeout if no one logs in
  (me, Jim Bray)

- Bunch of other fixes (me, Ryan Murray)

- Security fixes, crash fixes and an increase in general paranoia
  (me, Ryan Murray)

- More fault/bad setting tolerant all around

- Translation updates (Christian Meyer, Valek Filippov, Kjartan Maraas,
  Ole Laursen, Jarkko Ranta, Fatih Demir, Stanislav Visnovsky, Martin Norbäck,
  Christian Rose, Yuri Syrota, Christophe Merlet, Pablo Saratxaga, me,
  Ian McKellar)

2.2.0 stuff:

- mdmconfig now works with more fontsizes (me, Lee)

- Another minor xinerama fix

- Fixup the pam message voodoo, so that it now is at least functional even
  though it may not be pretty nor 100% correct.

- Initial mdmconfig documentation (Trevor Curtis, Lee)

- mdmconfig now correctly handles RelaxPerms (Lee)

- mdmconfig has now nice pam console helper setup (Lee)

- gladify/beautify mdmchooser (Lee)

- mdmchooser now apparently works with xdm (Matthias Clasen)

- Better specfile (Gregory Leblanc)

- Packagers should read the comment on end of config/mdm.conf.in (especially
  debian people)

- Configuration file now does not force the adobe version of helvetica, and
  postgres and pvm users are excluded by default (Vlad Hrachev)

- i18n fixes (Gediminas Paulauskas)

- New easter egg

- Bunch of minor fixes

- Translation updates (Yukihiro Nakai, Carlos Perelló Marín, Martin Norbäck,
  Fatih Demir, Simos Xenitellis, Kjartan Maraas, Christian Meyer,
  Christophe Merlet, Stanislav Visnovsky, me)

2.0.99 stuff:

- Cursor set to pointer rather then left as "X"

- Minor login minimize button cleanup (Jonathan Blandford)

- mdmconfig UI update and fixes (Lee Mallabone)

- Easter egg update

- Fixed restarting with HUP when xdmcp is on

- Login and Chooser fixed up for the true/false vs. 1/0 change (Tim Jansen)

- doc updates for true/false vs 1/0 fixups (Tim Jansen)

- Translation updates (Yukihiro Nakai, Christophe Merlet, Gustavo Maciel Dias
  Vieira, Fatih Demir, Simos Xenitellis, Kjartan Maraas, Stanislav Visnovsky,
  Pablo Saratxaga, Jarkko Ranta)

2.0.98.1 stuff:

- a minor Xinerama fix for dialogs

- small XDMCP fix, it apparently works for some people (Matthias Clasen)

- create config files during configure time (Peter Teichman, me)

- Mucho translation updates (Christian Rose, Dan Damian, Simos Xenitellis,
  Szabolcs Ban, Kjartan Maraas, Christophe Merlet, Christian Meyer)

2.0.98 stuff:

- spec file actually works (Lee Mellabone)

- Bigger! Better! Faster!  mdmconfig.  Much cooler and easier to use
  (Lee Mellabone)

- More xinerama fixes (Tim Jansen)

- A bit more xdmcp fixes which still don't make it run

- Bunch of other fixes and cleanups

- New translations (Stanislav Visnovsky, Jarkko Ranta, Valek Filippov,
  Simos Xenitellis)

2.0.97.1 stuff:

- Don't die on non-xinerama supporting display if compiled with xinerama lib

- First cut at a spec file for RedHat 6.x (may work on 7.0 as well maybe)

2.0.97 stuff:

- Graphical configurator in Foot/System/Mdm Configurator,
  or run "mdmconfig" (Lee Mellabone)

- i18n and greeter/slave communication fixes (ChiDeok Hwang)

- int vs. bool mess fixed up in the configuration files

- Use the language from the LANG variable as the default and use
  the one from mdm.conf as backup only

- Verbose authentication on by default and don't reveal information
  on verbose authentication.  I may remove this option altogether

- Slower quiver (looks cooler:)

- Reset on main process HUP signal by reexecing self

- Xinerama support for centering the login dialogs (Tim Jansen)

- Mucho fixes to loop of death stuff, race conditions and other such
  fun things

- Translations, fixes etc...
  (Kjartan Maraas, Gediminas Paulasukas, ChiDeok Hwang, Stanislav Visnovsky,
   Valek Filippov, and maybe others)

2.0.96 stuff:

- Multiple local display stuff should now work

- Now autologs in only on the first display

- Bunch of fixes for XDMCP but that still doesn't work, I need
  help here I think

- Local displays are now reset with SIGHUP rather then killed and
  signals are set properly to begin with, this should actually help
  with some buggy X servers I think.

- Login window can be moved (has a titlebar), and this position can be
  set from the config file (not saved however)

- Bunch of cleanup and bugfixes

Open issues:

- XDMCP doesn't work

- Autologin and i18n is not working well (always in english apparently)

2.0.95 stuff:

- Autologin (AutomaticLogin key in [daemon] section of mdm.conf)
  This is a string key that if it's set then mdm will log in that
  user without prompting on the first time it runs a local server.
  Will not autologin "root" though as that would be dumb.

- You can have your cursor anywhere while you log in, yay!

- [greeter]/BackgroundProgram thingie.  A program that is run from
  the greeter and killed when the greeter exists.  useful for things
  that do some cool graphics on the root window.

- If greeter keeps segfaulting, it will "unmanage" that display so that you
  can actually log in on a console

- Slave process is actually forked

- Bugfixes galore

-George
