2006-02-13 Brian Cameron <
[email protected]>
* 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 <
[email protected]>
* 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 <
[email protected]>
* 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 <
[email protected]>
* 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 <
[email protected]>
* README, docs/C/gdm.xml: Few more updates worth adding.
2006-02-10 Brian Cameron <
[email protected]>
* 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 <
[email protected]>
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 <
[email protected]>
* 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 <
[email protected]>
* 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 <
[email protected]>
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 <
[email protected]>
* daemon/gdmconfig.c: Fix glib.h include so it compiles under LFS.
Fixes bug #329801.
2006-02-02 Brian Cameron <
[email protected]>
* 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 <
[email protected]>
* 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.