2006-02-13  Brian Cameron  <brian.cameron@sun.com>

	* Release 2.13.0.8: 
	* NEWS: Updated.
	* configure.ac: Update to 2.13.0.8 and use EXPANDED_DATADIR instead
	  of %{datadir} since that makes it work much better.
	* README.install, README, docs/C/gdm.xml:  Update docs so that the
	  change from --with-configdir to --with-defaults-conf and renaming of
	  default and custom config file is documented.
	* daemon/gdm-net.c, daemon/gdmconfig.c, gui/gdmsetup.c: Update comments
	  to no longer mention old name of config file.  Fix gdmsetup to know
	  new location of custom config file.
	* config/Makefile.am: Now if upgrading and gdm.conf and
	  factory-gdm.conf are different, move the gdm.conf file to
	  custom.conf instead of copy.  This is  because we don't want GDM
	  to overwrite the custom.conf file every time user upgrades.  Only
	  first time, then gdm.conf should go away.

2006-02-13  Brian Cameron  <brian.cameron@sun.com>

	* acconfig.h, configure.ac, daemon/Makefile.am, daemon/gdmconfig.c,
	  docs/C/gdm.xml: Change --with-configdir to --with-defaults-conf
	  and make it work so that the gdm.conf and gdm.conf-custom file
	  can be installed to different subdirectories.  Fixes bug 
	  #330905.  Patch provided by Ray Strode.

2006-02-13  Brian Cameron  <brian.cameron@sun.com>

	* config/Xsession.in: Fix calls to zenity so they work.  Fixes
	  bug #330892.
	* README, README.install, docs/C/gdm.xml: Last minute updates
	  before string freeze.

2006-02-10  Brian Cameron  <brian.cameron@sun.com>

	* gui/greeter/greeter.c, gui/greeter/greeter_action_language.[ch],
	  gui/greeter/greeter_canvas_item.c, gui/greeter/greeter_events.c,
	  gui/greeter/greeter_session.c, gui/greeter/greeter_system.c:
	  Fix problem with options button and F10 menu not working if the
          button is not in the theme.  This only affects buttons that can
	  be in the F10 button but may not be in the theme (language, 
	  system, session, halt, reboot, shutdown).  Fixes bug #330343.

2006-02-10  Brian Cameron  <brian.cameron@sun.com>

	* README, docs/C/gdm.xml: Few more updates worth adding.

2006-02-10  Brian Cameron  <brian.cameron@sun.com>

	* gui/gdmflexiserver.c: Fix bug that was causing gdmflexiserver
	  to fail.  Because we were calling gtk-init when the --command
	  option was being used, and this breaks gdmflexiserver since it
	  is sometimes run with the --command option when there is no 
	  display.
	* README, README.install: Updated with some new features and moved some
          info to docs/C/gdm.xml where the info is more useful.
	* TODO: Updated.
	* configure.ac: Fixed the mess about /usr/opensolaris/bin
	* gui/greeter/greeter_system.c: Do not put tooltips on menus.  They are
          a bad idea and their use is discouraged by the HIG because they break
          a11y.
	* docs/C/gdm.xml: Updated docs with a bunch of information from the 
	  README and README.install file that really belonged in the docs.

2006-02-09  Brian Cameron  <brian.cameron@sun.com>

	A known issue with gdmdynamic is that when a display connects to
	the server it generates the gdmdynamic "ADD" and "RELEASE" commands.
	On startup, hundreds of displays could send these commands at once
	and cause the server too be flooded with sockets requests.  Hammering
	the socket like this caused me to find and fix a number of problems
	that improve socket reliability for general GDM use.  I also enhanced
	gdmdynamic so it is more sensitive to the socket being busy and no
	longer overloads it, instead sleeping and retrying if necessary.  This
	allows gdmdynamic to work if there are hundreds of displays instead of
	just a dozen or so.

	* daemon/gdm.[ch]: Added new "SERVER_BUSY" sockets command so that
	  gdmdynamic can sleep before starting new slaves if the daemon is
	  already busy.
	* daemon/gdm-net.[ch]: Bump up MAX_CONNECTIONS from 10 to 15.  I notice
	  that this improves performance significantly when hammering the
	  daemon with connections.  Added better comments for this logic and
	  now debug logs when a subconnection is thrown away.  New
	  gdm_connection_is_server_busy function
	* daemon/display.c: Correct DYNAMIC_REMOVE so it works and fixes bug
	  #326796.  Before it wasn't really removing the displays.
	* gui/gdmdynamic.c: Quite a bit of work to make gdmdynamic avoid
	  flooding the server with sockets requests.  Now it sets sockets
	  retries to 1 and manages sleeping and retries itself.  
	* gui/gdmconfig.c: Added gdm_config_set_comm_retries so that slaves can
	  specify how many retries they want the comm logic to use.
	* gui/gdmcomm.c: Now do_command returns NULL when it gets back "",
	  which happens when a subconnection was dropped by the daemon.  This
	  lets the slave try the connection again.   Now error messages are
	  always logged, not just when debug is turned on.  Added
	  gdmcomm_did_connection_fail and gdmcomm_set_allow_sleep so 
	  gdmdynamic can control the behavior of how the connection works.
	* gui/gdmcommon.c, gui/gdmchooser.c, gui/gdmlogin.c, gui/greeter/greeter.c:
	  Fix gdm_common_fail so it doesn't generate compile errors when building
	  with GCC.  Fixes bug #330480.
	* docs/C/gdm.xml: Cleaned up section that explains sockets commands so
	  that they are in alphabetical order, added info about SERVER_BUSY
	  and new gdmdynamic -s and -t options.
	* config/gdm.conf: Better description of how debug works, perhaps
	  I just didn't like the word "spew".

2006-02-07  Brian Cameron  <brian.cameron@sun.com>

	* gui/gdmconfig.c: Return compiled in value if slave fails
	  to get a value back from the daemon.
	* gui/gdmcomm.c:, gui/gdmconfig.c:  Use gdm_common_error
	  instead of gdm_common_info so message really go to log.
	* gui/gdmsession.c: Include needed gdmcommon.h.  Missed this
	  in my previous putback earlier today.

2006-02-07  Brian Cameron  <brian.cameron@sun.com>

	* gdm-restart.in, gdm-safe-restart.in, gdm-stop.in, gdm.spec.in:
	  Now use gdmflexiserver to get the PidFile instead of grepping the
	  config file directly since this is a safer/better way to get
	  configuration date.

2006-02-07  Brian Cameron  <brian.cameron@sun.com>

	This patch resolves some performance issues that I noticed when
	testing GDM with the gdmdynamic command.  I notice that waiting for
	the sockets to timeout made gdmdynamic slower so now all the clients
	load all the configuration data in one quick pass and close the 
	socket.  Since the gdm_config_get functions cache the data, the slaves
	will not go over the socket to get the data again unless asked to
	reread.  Bump the maximum messages over the socket from 20 to 80 
	because gdmlogin pulls about 65 configuration parms over and this 
	allows all data to be accessed in one connection (and gives a little
	room for growth).  Improved the way GDM slaves deal with syslog so all
	slaves use the same interfaces.  Added three missing keys to the daemon
	configuration handling code.

	* daemon/gdmconfig.c: Add three keys that were missing for background
	  program support.
	* gui/gdmcomm.[ch]: Now if there is a failure connecting to the daemon,
	  the slave will sleep 1 second before retry (normally retries 5
	  times).  If all retries fail, it will not try sleeping on subsequent
	  calls to the daemon.  This greatly improves performance when the 
          daemon is flooded with slave requests.  In normal usage, this will 
	  likely not happen, but it is good for GDM to not fail so easily.
	  Added better debug.  Added gdm_comm_close function so that slaves
	  can ask to close the socket when done reading config.  Now uses
	  common syslog functions.
	* daemon/gdm.h: Add better comments, rename GDM_SUP_MAX_CONNECTIONS
	  to GDM_SUP_MAX_MESSAGES which is more accurate, and bump the max
	  number to 80.
	* gui/gdmcommon.h, gui/gdmwm.h, gui/gdmsession.h: Added common syslog
	  functions to gdmcommon.h and moved some functions that were in
	  gdmcommon.h to gdmwm.h and gdmsession.h since the implementations
	  were in those c-files.  Renamed functions to make naming consistant.
	* gui/gdmXnestchooser, gui/gdmchooser.c, gui/gdmcommon.c,
	  gui/gdmconfig.c, gui/gdmdynamic.c, gui/gdmflexiserver.c,
	  gui/gdmlogin.c, gui/gdmphotosetup.c, gui/gdmsession.c, gui/gdmwm.c,
	  gui/greeter/greeter.c, gui/greeter/greeter_item_ulist.c, 
	  gui/greeter/greeter_session.c, gui/greeter/greeter_system.c:  Slaves
	  close sockets connection when done reading config.  Now slaves use
	  common syslog functions.  Naming changes to reflect renaming of
	  functions in gdmcommon.h/gdmwm.h/gdmsession.h.  Better debug.
	* daemon/auth.c, daemon/cookie.c, daemon/display.c, daemon/gdm.c,
	  daemon/gdm-net.c, daemon/misc.c, daemon/slave.c, daemon/xdmcp.c,
	  gui/gdmlanguages.c, gui/greeter/greeter_canvas_item.c,
	  gui/gdmsetup.c, vicious-extensions/ve-config.c: Make spacing around
	  "++" more consistant.  Add better debug in some functions

2006-02-03  Brian Cameron  <brian.cameron@sun.com>

	* daemon/gdmconfig.c: Fix glib.h include so it compiles under LFS.
	  Fixes bug #329801.

2006-02-02  Brian Cameron  <brian.cameron@sun.com>

	* docs/C/gdm.xml: Add comment to docs that +xkb is needed as an
	  Xserver argument for the keyboard gestures to work.

2006-01-30  Brian Cameron  <brian.cameron@sun.com>

	* docs/C/gdm.xml: Change section name for "Security" to 
	  "security" so the generated html file has a more consistant
	  name with the other html files.