Ahh news...

2.14.13 stuff:

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

- Translation updates (Christophe Merlet)

2.14.12 stuff:

- The GDM configuration option daemon/PidFile is now deprecated and
  GDM now always uses /var/run/gdm.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 gdmdynamic.  (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 gdmchooser entry and
  press the "Add" host button to print out memory contents.
  (Brian Cameron)

- 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 GDM
  as non-root user. (Brian Cameron)

2.14.10 stuff:

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

- Fix gdmchooser crash issue.  (Brian Cameron)

- Performance tunings for gdmsetup 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 gdmsetup 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
  GDM 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 GDM 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 gdmflexiserver calls gdmcomm_check with FALSE so it will not
  pop up a dialog.  gdmflexiserver 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 gdmflexiserver
  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 gdm-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 gdmgreeter 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 GDM 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 gdmgreeter theming options (real GTK+ buttons,
  pam-error-logo, and "startagain" stock label is displayed as "Cancel".
  Note that the default themes shipped with GDM 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 GDM 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 gdm-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:

- Explicitly 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 GDM 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.

2.14.3 stuff:

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

- Marked strings as translatable and fix gdmsetup.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/gdmthemetester.in in the distribution.  It being missing
  was causing the module to fail to compile.  (Brian Cameron)

- Fix to the BROADCAST key in gdmchooser 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 GDM daemon is now
  better managed to better ensure that sockets are never left open.
  This work also makes gdmsetup start faster.  (Brian Cameron)

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

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

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

- Now GDM configure supports --with-sysconfsubdir so that GDM's 
  configuration directory can be configured to not have "/gdm" 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 gdmsetup 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 Solraris 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
  Papdimas, 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 GDM will update the actual custom configuration file used by
  the daemon, so if gdm.conf is being used by the daemon, it will
  also be edited by gdmsetup.

- 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 GDM will use the gdm.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
  gdmgreeter 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 gdmgreeter 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:gdm.  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 Granseur)

- 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 gdm.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}/gdm/defaults.conf (also factory-gdm.conf is
  now %{datadir}/gdm/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 GDM 
  configuration set by those using older versions of GDM should use
  preinstall/postinstall scripts to move the /etc/gdm/gdm.conf file
  to /etc/gdm/gdm.conf-custom if the file has been edited (compare
  against /etc/gdm/factory-gdm.conf to see if it has been modified).
  "make install" for GDM does this if building from source.  GDM
  docs updated to reflect this change.

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

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

- Fix gdmdynamic so it supports up to hundreds of displays rather than
  just a dozen or so.  Now gdmdynamic 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.

- gdm-restart, gdm-safe-restart, gdm-stop, and gdm.spec now use
  gdmflexiserver 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 GDM 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/gdmconfig.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 gdmgreeter 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 GDM 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)

- GDM 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 gdmprefetchlist 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 Quinteriro, Clytie Siddall, Ilkka Tuohela)

2.13.0.5 stuff:

Note: Some users have been complaining that GDM 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.

- GDM now supports secure remote login which can be enabled by using
  --enable-securelogin at configure time.  (Dominique Hazael-Massieux)
  
- Fixed gdmsetup 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 gdmsetup 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 GDM will now install a default librarylist if the feature is enabled.
  Now GDM will only launch the gdm_prefetch program the first time that a
  greeter is displayed.  Since this behavior is very specific to the needs
  of prefetching libraries, the gdm.conf key changed from PostDisplayProgram
  to PreFetchProgram.  (Padraig O'Briain/Brian Cameron)

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

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

- Minor cleanup of gdmsetup.  (Dennis Cranston)

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

- GDM 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 GDM handles its configuration files slighly differently.
  Now users are not recommended to modify the installed gdm.conf file and
  are instead encouraged to make changes to gdm.conf-custom.  The gdmsetup
  program now saves user configuration changes to the gdm.conf-custom file.
  Configuration options specified in gdm.conf-custom file override the values
  in the main gdm.conf file.  

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

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

- gdmconfig 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 GDM daemon still
  supports the --config command line option.

- Added PostDisplayProgram and the --with-prefetch configuration option
  to support GDM 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 GDM's configuration
  system.  Now all configuration information is read by the daemon and
  accessed via the GDM 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 gdmgreeter labels and
  the Welcome/RemoteWelcome keys, so now they are handled the same by both
  gdmlogin and gdmgreeter.  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 GDM
  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 
  GDM will just login as the timed user.  (Brian Cameron)

- Removed libgnome as a GDM dependency and removed most libgnomeui 
  dependencies.  Redesigning GDM's configuration allowed GDM 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 gdmsetup 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 gdmsetup (Dennis Cranston, Calum Benson)

- Removed libgnome dependencies for all GDM programs except gdmflexiserver and
  gdmsetup.  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 gdm.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 GDM slaves (except
  gdmsetup) 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 gdmlogin 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 gdmsetup so it follows usability recommendation mockups
  by Calum Benson.  (Dennis Cranston, Calum Benson)

- gdmsetup 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 GDM 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 GDM sometimes stops managing a display because it
  just keeps waiting for the slave to die.  See bug #113902.  (Vaclav Smilauer)

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

- Now GDM 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 gdmlogin.  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 consistant.
  Now the "Cancel" button in gdmlogin is active when the Username is requested
  and just clears the field.  This makes gdmlogin work like gdmgreeter.  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 gdmflexiserver.  (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 gdm.conf setting so that PASSREQ can
  be controlled via gdm.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
  GDM 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 gdmlogin 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 GDM 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 gdmlogin and gdmgreeter now work
  consistantly.  Now the gdmlogin "Cancel" button is active when the Username
  is requested and pressing it just clears the field, so it works like
  gdmgreeter.  Also fixed a bug in gdmgreeter where a user could corrupt
  gdmgreeter'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 gdmlogin.  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 GDM sometimes stops managing a display because it
  just keeps waiting for the slave to die.  See bug #113902.  (Vaclav Smilauer)

- GDM now uses VT_GETSTATE for peeking VT freeness

- Now GDM 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 gdmflexiserver 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:

- gdmflexiserver supports --startnew option so that gdmflexiserver 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
  gdmflexiserver from the screensaver, where the pop-up can't be interacted
  with due to the nature of the screensaver.  (Brian Cameron)

- Now gdmflexiserver 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 gdmgreeter theme supports face browser but does not
  have pam-message defined.  (Brian Cameron)

- gdmsetup and gdmphotosetup now only map right/left mouse buttons to button1
  when running under GDM.  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)

- gdmsetup fixed so when user modifies Include/Exclude list, the
  automatic/timed dropdown lists are updated immediately instead of having to
  stop and restart gdmsetup 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 GDM website has moved to a new location
  http://www.gnome.org/projects/gdm/, and the GDM mail alias has moved from
  gdm@sunsite.dk to gdm-list@gnome.org.  README, and GDM docs updated with the
  new information and corrected broken link to the GDM Theme section at
  http://art.gnome.org/ (Brian Cameron)

- Installation location of gdmphotosetup.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 GDM to discard the locales.
  (Frederic Crozat)

- Added missing tooltips (Rodrigo Moya)

- Corrected reading of configuration file in gdmflexiserver 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:

- GDM now supports more dynamic configuration.  The gdm 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 gdm.conf file can be located on a
  mounted directory.  To support machine-specific configuration, an existing
  %sysconfdir/gdm configuration file will override a system-wide configuration
  file.  Refer to the GDM 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 gdm.conf (older than 2.8.0.0) file that does not have settings
  for DefaultWelcome and/or DefaultRemoteWelcome, GDM will now continue to work
  as it did before 2.8.0.0.  (Brian Cameron)

- Usability improvements to gdmsetup.  "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 gdmlogin.  (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 gdmgreeter, now the
  background behind the userlist translucent.  (William Jon McCann)

- Usability improvements to gdmphotosetup, 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 gdmflexiserver command "GET_CONFIG_FILE" which will return the location
  of the configuration file being used by the daemon.  (Brian Cameron)

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

- Support DragonFly VT. (Joerg Sonnenberger)

- GDM 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/gdm/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 GDM slave logic has been made more sane.  This
  was causing problems running GDM2 on NetBSD (refer to bug #301821).  (Julio
  M. Merino Vidal)

- Correct "Delete Theme" button sensitivity in gdmsetup.  (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 GDM_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 gdm, gdm-binary, gdmsetup are installed to /sbin and gdmchooser,
  gdmgreeter, gdmlogin are installed to /libexec.  This better conforms to UNIX
  recommend installation locations.  The gdmconfig and gdmXnest symlinks have
  been removed since they were redundant.  Distributions will need to modify
  the way GDM programs are launched to reflect these changes.  (Brian Cameron)

- gdm.conf and GdmSetup 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 gdm.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
  gdm.conf "Include" configure option or the "Face Browser" tab in gdmsetup.
  Previously, GDM parsed the system's password file for a complete list of
  users and excluded userid's listed in the gdm.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
  gdm.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 GDM2 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 GDM 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 gdm2 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 gdmgreeter'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, gdmlogin and gdmgreeter 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)

- GDM 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 GDM windows/dialogs/etc.  (Brian Cameron)

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

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

- Now "random theme" can be selected in the gdm.conf file or gdmsetup 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)

- gdmphotosetup has been improved so it now scales the face image to GDM'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)

- gdmflexiserver now supports the GET_CONFIG command, so that other programs
  can access the GDM 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 gdm2
  face images, etc.  (Brian Cameron)

- Flexiserver commands are now sent as a single call to gdm_connection_write or
  gdm_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 gdm2, it is more
  secure to not depend on PATH.  (Brian Cameron)

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

- gdmsetup 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 gdmlogin 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)

- GDM 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)

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

- Timed login message is displayed in a separate label on gdmlogin which avoids
  problems caused because different things were trying to use the same label
  for status messages.  Reorganized gdmlogin 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 gdm_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 gdm2'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)

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

- Correct gdmsetup'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 gdm2 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 gdm_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/gdmsetup.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>/.gdmfifo" (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 GDM_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 gdm

- 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 gdmsetup

- 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 wanker 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 gnome-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 gdmsetup

- 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 (gdmflexiserver 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 gdmsetup and allow setting an arbitrary
  sound for the "ready for login" sound.  (#125487)

- gdmflexiserver 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>/gdm/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 gdmsetup (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 #76848F and the PreSession script tries
  to use the default gdm 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 gdmlogin 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 gdm 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 GDM 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 gdmsetup (#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 gdmsetup.desktop now has System in the
  categories (#120360)

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

- There is a simple gdm(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 gdmsetup 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 gdm 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 gdmopen and
  dialog.  Also --no-console now forces this (forces ignoring
  [servers] section).  Fixes debian #194613

- Changed required permissions on ServAuthDir to be: root.gdm 1770.
  These are now enforced and GDM 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/gdm 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.

- gdmchooser handles HUP gracefully and rereads config

- gdmthemetester 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/gdm.html)

- Whack the GdmGreeterThemeManual.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 gdm 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 gdm 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 gdmtranslate 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 gdmaskpass 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, gdmgreeter, gdmlogin and gdmchooser don't link against
  libgnome and friends (gdmgreeter still uses canvas).  This
  reduces number of libs linked by daemon from 46 to 26, for
  gdmgreeter this goes from 56 to 32 and for gdmlogin this goes
  from 52 to 22, and gdmchooser 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 gdm processes
  instead of / and for shell we use /bin/sh consistently
  (rather then /bin/bash)

- The full error dialog is now run as the gdm 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 gdm 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 unneccessary markup now
  (fixes #101794 and #101795)

- gdmsetup .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

- gdmopen 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, gdm warns you and if
  both logins are console logins on linux, then you can have gdm switch
  consoles for you instead of logging on.

- Errorgui (failsafe) dialogs now run mostly under the gdm user and not as root

- In the .desktop files we now refer to GDM as Login Screen and not GDM,
  fixes #85543

- Add ALL_SERVERS to the socket protocol which returns all the displays

- DESKTOP_SESSION is set in addition to GDMSESSION.  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 GDM 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 GDM.
  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 gdmsetup, 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 gdm

- 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 gdm process,
  fixes #108700

- When more then 50 users on the system don't put them all into
  the combobox in gdmsetup, 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)

- gdmopens are done using login shell, fixes #106658, also gdmopen
  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 gnome-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

- gdmmktemp is gone as we have not been using it, also gdmaskpass and
  gdmopen 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 gdmgreeter 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)

- GDM photo setup now checks for gdm 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.

- gdm-restart, gdm-soft-restart, gdm-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.
  gdm 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, gdmthemetester.
  It will run Xnest with gdmgreeter 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.

- gdmphotosetup 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 gdmXnestchooser so that things like
  "`gdmXnest -b`" shell things to get the display number work.

- gdmXnestchooser 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 gdm 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/gdm.h, look for the GDM_SOP_)
  Useful for changing X configuration.
  You can do "(echo;echo DIRTY_SERVERS) > /var/gdm/.gdmfifo" (Given that
  ServAuthDir is /var/gdm).  This is a possible solution to issues
  such as in redhat bug 70072

- Only set GDM_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 gdmsetup 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 gdmXnest 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 gdm running before sending any update from gdmsetup, this means
  that even if you run gdmsetup before gdm, 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 gdmsetup

- 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 gdmXnestchooser 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 gdmXnest 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 gdmsetup

- gdmsetup 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 GDM
  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 gdm 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 gdmwm 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 gdmwm 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 gdm itself from
  a script, fixes #87387

- Properly center windows

- Fix gdmchooser 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/gdm.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 gdm.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 gdmXnestchooser 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 gdm 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 gdmsetup

- 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 gdmflexiserver 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 (gdmsetup) now works,
  gdmconfig is removed (Check out the gdmgreeter 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)

- Gdmphotosetup 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 gdmlogin, though
  it's still not quite there yet.

- Add an icon for the photo chooser 'capplet' (Seth)

- Some dialog fixes all around

- Fix gdmchooser, 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 gdmsetup else it'll crash

- The graphical greeter (gdmgreeter) 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
  gdmconfig 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 gdmconfig 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.  gdm-autologin
  service.  This just logs anyone in without asking for a password,
  but this makes autologin work on some all wankered pam setup.  Of course
  you must now modify gdm-autologin in addition to 'gdm' if you have
  some weird pam setup.

- Fix gdmconfig 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 gdm' 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 gdm
  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)

- gdmopen now sets VT_NUMBER env var for it's child

- Focus issues fixed in gdmwm (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.  Gdm 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

- gdmXnestchooser 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 gdm.conf
  
- Remove VerboseAuth configuration variable as it was utterly useless,
  and actually resulted in usability degradation when on.

- Include our own gdmmktemp like the mktemp program for shell scripts

- Fix stuff on console with gdmopen 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
  gdm 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 gdm 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 gdmconfig 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 gdm 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 (gdmopen) alternative inside gdm itself.  This
  version is stripped down version of open and it works much better for
  gdm'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 gdmopen 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_GDM 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 messups dealt with, making gdm2 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 gdmconfig.

- 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 gdm

- 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 gdm (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

- gdmphotosetup 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 gdm 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 gdm.conf

- Remove old failsafe stuff and use the new builtin failsafes, which
  are much nicer

- Saner focus on all gdm 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.  GDM 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 gdmconfig let's you see hosification as it happens

- Updated fixed icon entry

- gdm-restart script to automate restarting of gdm 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 gdmlogin 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 gdmconfig (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 gdm 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 gdm 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:

- gdmconfig 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 gdmconfig documentation (Trevor Curtis, Lee)

- gdmconfig now correctly handles RelaxPerms (Lee)

- gdmconfig has now nice pam console helper setup (Lee)

- gladify/beautify gdmchooser (Lee)

- gdmchooser now apparently works with xdm (Matthias Clasen)

- Better specfile (Gregory Leblanc)

- Packagers should read the comment on end of config/gdm.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)

- gdmconfig 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!  gdmconfig.  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/Gdm Configurator,
  or run "gdmconfig" (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 gdm.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 gdm.conf)
  This is a string key that if it's set then gdm 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
