| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
The lower levels of GDM now expect the session types supported by a
display to be specified up front.
This commit makes sure XDMCP displays do that.
|
|
|
|
|
|
|
|
|
|
| |
The XDMCP disply factory examines the sessions of its displays'
launch environments when the displays change status.
Unfortunately it leaks a reference to the launch environment when
doing that.
This commit fixes the reference leak which leads to an fd leak.
|
|
|
|
|
|
|
|
| |
The xdmcp code is returning TRUE from its display store foreach
functions, which is useless since commit 47d01abe and wrong
before that.
This commit makes it return void instead.
|
|
|
|
| |
This prevents strings from being unnecessarily copied.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit 2a3d5a7c402534c3611956fed930394a51cb00c5 attempted to fix
the signal prototype of on_client_disconnected to match the marshalled
arguments. Unfortunately, the handler is used for two different
signals:
1) when a user chooses "Disconnect" from the chooser menu
2) when a user closes the Xephyr window (or turns off the thin client
or whatever)
The signals have slightly different prototypes, so commit 2a3d5a7c
fixed 2), but broke 1).
This commit massages the signal connections and handler signature to
work for both cases.
https://bugzilla.gnome.org/show_bug.cgi?id=787987
|
|
|
|
|
|
| |
If the client disconnects, we should kill off the necessary processes.
https://bugzilla.gnome.org/show_bug.cgi?id=780787
|
|
|
|
|
|
|
| |
The callback was getting called with the wrong arguments leading
to spew in the logs and necessary code not getting run!
https://bugzilla.gnome.org/show_bug.cgi?id=780787
|
|
|
|
|
|
|
|
|
|
|
|
| |
gnome-shell and the session dbus daemon don't automatically exit
when gnome-session does. They, instead, wait for the display to
exit or regenerate. If the display is remote, that won't happen
until the keep alive timeout.
This commit changes GDM to explicitly notify the remote display
when the session is over, so that it can regenerate immediately.
https://bugzilla.gnome.org/show_bug.cgi?id=776059
|
|
|
|
|
|
|
|
|
|
|
| |
We're trying to get rid of the slave code, so we need to
move responibility for launching the greeter to the
display objects.
This commit changes the display classes to set up a
launch environment that the base class runs.
https://bugzilla.gnome.org/show_bug.cgi?id=744764
|
|
|
|
|
|
|
|
| |
The factory removes the display from the display store, so it
should run last. Furthermore the manager, sets up the greeter
session, so it should run first.
https://bugzilla.gnome.org/show_bug.cgi?id=744764
|
|
|
|
|
|
|
|
|
|
|
| |
GdmXdmcpGreeterDisplay doesn't do anything that it's parent
class does (except call unmanage from finalize which is strange
and probably wrong).
This commit drops the file and instead just uses GdmXdmcpDisplay
directly, instead.
https://bugzilla.gnome.org/show_bug.cgi?id=744764
|
|
|
|
|
|
|
|
|
|
| |
For no particular reason, the slave has been kept as a separate process.
Integrate this into the main display process by simply making the display
keep a handle to a GdmSlave object. To keep the cleanup simple, we won't
remove the GdmSlave subtypes yet. A future cleanup should merge the slave
functionality into GdmDisplay and its subtypes.
https://bugzilla.gnome.org/show_bug.cgi?id=726380
|
|
|
|
|
|
|
| |
OpenBSD has no support for IPv4 to IPv6 mapping, so make check for the
required definitions before using them.
https://bugzilla.gnome.org/show_bug.cgi?id=725554
|
|
|
|
|
|
|
|
| |
1. gdm-session-worker needs -lutil.
2. #include <sys/types.h> is needed to get uid_t.
3. #include <netinet/in.h> is needed to get several struct.
https://bugzilla.gnome.org/show_bug.cgi?id=722594
|
|
|
|
| |
Fix bug 683383.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The XDMCP indirect query is supposed to be forwarded to the remote host
by gdm_xdmcp_send_forward_query() from daemon/gdm-xdmcp-display-factory.c
However, checking the return value of XdmcpFlush() we can see the call
fails with "Invalid Argument".
Looking at the gdm debug logs, the address (ic->chosen_address) used
there is correct but the port is 0 instead of 177, so the indirect query is never
forwarded to the selected host.
The address is set in on_hostname_selected() from
daemon/gdm-xdmcp-display-factory.c via getaddrinfo() but the service
field passed to getaddrinfo() is NULL, while using the actual XDMCP port
("177") fixes the issue and the indirect connection is successful.
committe://bugzilla.gnome.org/show_bug.cgi?id=665296
|
| |
|
|
|
|
|
|
| |
It's spelled XDMCP not XMDCP
https://bugzilla.gnome.org/show_bug.cgi?id=663338
|
|
|
|
|
|
| |
They're warnings the user won't see without snooping.
They are hardly intelligible as it is and shouldn't
be translated, so they're easy to google.
|
|
|
|
|
|
|
| |
There's a bit of needless boilerplate and dead code
just sort of sitting around in various places.
This commit cleans things up a bit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit e533f4b72568cdc3d7f7ec6cec09d9392b11d54c
(combined with commit f7a7158efcaa3e113a02dd0f0bfdf22a253928e5
and commit 86ac166294f0fc8f662031167066acf1928cf139)
changed the length passed to XdmcpFill to use gdm_sockaddr_len,
macro. This macro is being called on an uninitialized structure,
so it returns the wrong value.
I think commit e533f4b72568cdc3d7f7ec6cec09d9392b11d54c was a bit
too liberal in its gdm_sockaddr_len changes. While I can believe
some Solaris and FreeBSD networking calls require the exact socket
address structure length to be passed in, I doubt the call used
by XdmcpFill (recvfrom) is one of them. It would be impossible for
recvfrom to work for connection of different address families
if that were true.
This commit just reverts gdm_sockaddr_len-ification of those the
two places where XdmcpFill is called.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=589536
|
|
|
|
|
|
|
| |
This allows ipv4 connections mapped to ipv6, in case the system default
is backwards.
https://bugzilla.gnome.org/show_bug.cgi?id=544730
|
|
|
|
|
|
|
|
|
| |
commit e533f4b72568cdc3d7f7ec6cec09d9392b11d54c cleaned
up various XDMCP issues, but it unfortunately also created
a bug making XDMCP fail a high percentage of the time.
XdmcpFill takes an in-out length argument. This argument was getting
passed an uninitialized variable.
|
|
|
|
| |
Part of the fix for #606724.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After doing further testing, I notice that XDMCP still does not work on
Solaris. This commit fixes:
- In gdm-address.c, there was a problem where a failure in
gdm_address_get_hostname could cause an infinite loop since it would call
gdm_address_debug, which would then call gdm_address_get_hostname again. I
fixed this by making gdm_address_debug call a private _gdm_address_debug
function and gdm_address_get_hostname calls _gdm_adress_debug rather than
gdm_address_debug.
- Two calls in gdm-address.c were using "sizeof (struct sockaddr_storage)"
and changing this to "(int) gdm_sockaddr_len (address->ss)" works better.
This is the same issue as fixed in the previous patch. I just missed these
spots before.
- In daemon/gdm-xdmcp-display-factory.c in the on_hostname_selected() function
it is necessary to set hints.ai_socktype to "SOCK_DGRAM" or else I would get
this error:
WARNING: Unable get address: service name not available for the specified
socket type
- In daemon/gdm-xdmcp-display-factory.c in the decode_packet() function
and in gui/simple-chooser/gdm-host-chooser-widget.c it is necessary to set
ss_len to "gdm_sockaddr_len (&clnt_ss)" instead of "sizeof (clnt_ss)".
- In gui/simple-chooser/gdm-host-chooser-widget.c in find_broacast_address
it is also necessary to check for "(errno != ENXIO)".
See https://bugzilla.gnome.org/show_bug.cgi?id=494817
|
|
|
|
|
|
| |
This causes crashes on Solaris.
See https://bugzilla.gnome.org/show_bug.cgi?id=494817
|
| |
|
|
|
|
|
|
|
| |
that the length of the sockaddr is set to the correct length for IPv4 or IPv6.
This problem affects Solaris and FreeBSD. Linux only require that the
length be greater or equal to the expected length, so you would not see this
problem on Linux.
|
|
|
|
|
|
|
| |
Move an extern declaration out of a function definition
to silence gcc warnings.
See http://bugzilla.gnome.org/show_bug.cgi?id=568516
|
|
|
|
| |
The patch was provided by Michael Young in rhbz#496882.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-03-16 Ray Strode <rstrode@redhat.com>
Fix the GetX11Cookie dbus method
* daemon/gdm-display.xml:
Send the cookie as a byte array instead of utf-8
string
* daemon/gdm-display.[ch] (gdm_display_get_x11_cookie):
pass in a GArray instead of the more natural
char array and size pointers to make dbus-glib
happy.
* daemon/gdm-xdmcp-display-factory.c
(gdm_xdmcp_handle_request): Update to use new
get_x11_cookie signature.
svn path=/trunk/; revision=6781
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-02-17 Brian Cameron <brian.cameron@sun.com>
* common/gdm-settings-direct.[ch], common/gdm-settings-keys.h,
daemon/gdm-simple-slave.c, daemon/gdm-xdmcp-chooser-slave.c,
daemon/gdm-xdmcp-display-factory.c, data/gdm.schemas.in.in,
docs/C/gdm.xml: Enable XDMCP configuration so it works. Previously
only xdmcp/Enable was being used in the code. Also add support for
chooser/Multicast and chooser/MulticastAddr configuration options.
Now set the default values of MAX_DISPLAY_PER_HOST to 1 and MAX_WAIT to
30 as specified in the docs. Add a gdm_settings_direct_get_uint
function to get unsigned integer configuration values more cleanly
without the need to cast. Fixes bug #569876.
svn path=/trunk/; revision=6715
|
|
|
|
|
|
|
|
|
| |
2009-02-17 Brian Cameron <brian.cameron@sun.com>
* daemon/gdm-xdmcp-display-factory.c: Remove double free. Fixes bug
#565018. Patch by William Jan Palenstijn <wjp@usecode.org>.
svn path=/trunk/; revision=6714
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-12-02 William Jon McCann <jmccann@redhat.com>
* daemon/gdm-display.c (gdm_display_real_prepare),
(gdm_display_prepare), (gdm_display_real_manage),
(gdm_display_class_init):
* daemon/gdm-display.h:
* daemon/gdm-local-display-factory.c
(on_static_display_status_changed):
* daemon/gdm-manager.c (gdm_manager_stop), (gdm_manager_start),
(gdm_manager_set_xdmcp_enabled):
* daemon/gdm-manager.h:
* daemon/gdm-xdmcp-display-factory.c (gdm_xdmcp_display_create),
(gdm_xdmcp_handle_manage):
Correctly handle changes in the xdmcp enabled property.
Add a display state called prepared that sets up the display
before actually managing (starting) it. This is required
for the XDMCP Request phase to work.
Fixes #561396
svn path=/trunk/; revision=6610
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-02-20 Ray Strode <rstrode@redhat.com>
* daemon/gdm-local-display-factory.c
(gdm_local_display_factory_create_transient_display):
* daemon/gdm-xdmcp-display-factory.c:
(gdm_xdmcp_display_create):
don't call create_authority here anymore, since it's
handled by gdm_display_manage now.
svn path=/trunk/; revision=5822
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-02-19 William Jon McCann <jmccann@redhat.com>
* common/gdm-settings-client.c:
(gdm_settings_client_get_locale_string),
(gdm_settings_client_init):
* common/gdm-settings-desktop-backend.c: (save_settings):
* common/gdm-settings-direct.c: (gdm_settings_direct_init):
* common/test-log.c: (test_log):
* common/test-settings-client.c: (test_settings_client):
* daemon/gdm-chooser-server.c: (gdm_chooser_server_constructor):
* daemon/gdm-chooser-session.c: (gdm_chooser_session_set_property),
(gdm_chooser_session_get_property),
(gdm_chooser_session_constructor):
* daemon/gdm-display-access-file.c:
* daemon/gdm-display.c: (_create_access_file_for_user),
(gdm_display_constructor):
* daemon/gdm-factory-slave.c: (gdm_factory_slave_start),
(gdm_factory_slave_stop), (gdm_factory_slave_set_property),
(gdm_factory_slave_get_property), (gdm_factory_slave_constructor):
* daemon/gdm-greeter-server.c: (gdm_greeter_server_constructor):
* daemon/gdm-greeter-session.c: (gdm_greeter_session_set_property),
(gdm_greeter_session_get_property):
* daemon/gdm-local-display-factory.c:
(gdm_local_display_factory_set_property),
(gdm_local_display_factory_get_property),
(gdm_local_display_factory_constructor):
* daemon/gdm-manager.c: (gdm_manager_constructor):
* daemon/gdm-product-display.c: (gdm_product_display_constructor):
* daemon/gdm-product-slave.c: (gdm_product_slave_start),
(gdm_product_slave_stop), (gdm_product_slave_set_property),
(gdm_product_slave_get_property), (gdm_product_slave_constructor):
* daemon/gdm-server.c: (gdm_server_constructor):
* daemon/gdm-session-auditor.c:
* daemon/gdm-session-direct.c: (gdm_session_direct_open):
* daemon/gdm-session-linux-auditor.c:
* daemon/gdm-session-relay.c: (gdm_session_relay_set_property),
(gdm_session_relay_get_property), (gdm_session_relay_constructor):
* daemon/gdm-session-settings.c:
* daemon/gdm-session-worker-job.c:
(gdm_session_worker_job_constructor):
* daemon/gdm-session-worker.c: (gdm_session_worker_constructor):
* daemon/gdm-simple-slave.c: (gdm_simple_slave_start),
(gdm_simple_slave_stop), (gdm_simple_slave_set_property),
(gdm_simple_slave_get_property), (gdm_simple_slave_constructor):
* daemon/gdm-slave.c: (gdm_slave_run_script),
(_get_primary_user_session_id), (gdm_slave_constructor):
* daemon/gdm-static-display.c: (gdm_static_display_set_property),
(gdm_static_display_get_property):
* daemon/gdm-static-factory-display.c:
(gdm_static_factory_display_set_property),
(gdm_static_factory_display_get_property),
(gdm_static_factory_display_constructor):
* daemon/gdm-transient-display.c:
(gdm_transient_display_set_property),
(gdm_transient_display_get_property):
* daemon/gdm-welcome-session.c: (parse_dbus_launch_output),
(gdm_welcome_session_constructor):
* daemon/gdm-xdmcp-chooser-slave.c:
(gdm_xdmcp_chooser_slave_start), (gdm_xdmcp_chooser_slave_stop),
(gdm_xdmcp_chooser_slave_set_property),
(gdm_xdmcp_chooser_slave_get_property),
(gdm_xdmcp_chooser_slave_constructor):
* daemon/gdm-xdmcp-display-factory.c: (do_bind),
(indirect_client_create), (gdm_xdmcp_handle_forward_query):
* daemon/test-session.c: (main):
* gui/simple-chooser/gdm-chooser-client.c:
(gdm_chooser_client_set_property),
(gdm_chooser_client_get_property),
(gdm_chooser_client_constructor), (gdm_chooser_client_dispose):
* gui/simple-chooser/gdm-chooser-session.c:
(gdm_chooser_session_set_property),
(gdm_chooser_session_get_property),
(gdm_chooser_session_constructor), (gdm_chooser_session_dispose):
* gui/simple-chooser/gdm-host-chooser-dialog.c:
(gdm_host_chooser_dialog_set_property),
(gdm_host_chooser_dialog_get_property),
(gdm_host_chooser_dialog_constructor),
(gdm_host_chooser_dialog_dispose):
* gui/simple-chooser/gdm-host-chooser-widget.c:
(gdm_host_chooser_widget_set_property),
(gdm_host_chooser_widget_get_property),
(gdm_host_chooser_widget_constructor):
* gui/simple-greeter/gdm-a11y-preferences-dialog.c:
(gdm_a11y_preferences_dialog_set_property),
(gdm_a11y_preferences_dialog_get_property),
(gdm_a11y_preferences_dialog_constructor),
(gdm_a11y_preferences_dialog_dispose):
* gui/simple-greeter/gdm-chooser-widget.c:
(shrink_edge_toward_active_row), (gdm_chooser_widget_constructor):
* gui/simple-greeter/gdm-greeter-client.c:
(gdm_greeter_client_set_property),
(gdm_greeter_client_get_property),
(gdm_greeter_client_constructor), (gdm_greeter_client_dispose):
* gui/simple-greeter/gdm-greeter-login-window.c:
(gdm_greeter_login_window_constructor):
* gui/simple-greeter/gdm-greeter-panel.c:
(gdm_greeter_panel_set_property), (gdm_greeter_panel_get_property),
(gdm_greeter_panel_constructor), (gdm_greeter_panel_dispose):
* gui/simple-greeter/gdm-greeter-session.c:
(gdm_greeter_session_set_property),
(gdm_greeter_session_get_property),
(gdm_greeter_session_constructor), (gdm_greeter_session_dispose):
* gui/simple-greeter/gdm-language-chooser-widget.c:
(gdm_language_chooser_widget_dispose):
* gui/simple-greeter/gdm-option-widget.c: (activate_from_item_id),
(gdm_option_widget_constructor):
* gui/simple-greeter/gdm-recent-option-widget.c:
(gdm_recent_option_widget_dispose):
* gui/simple-greeter/gdm-remote-login-window.c:
(gdm_remote_login_window_set_property),
(gdm_remote_login_window_get_property),
(gdm_remote_login_window_constructor):
* gui/simple-greeter/gdm-session-client.c:
(gdm_session_client_constructor), (gdm_session_client_dispose):
* gui/simple-greeter/gdm-session-manager.c:
(gdm_session_manager_set_property),
(gdm_session_manager_get_property),
(gdm_session_manager_constructor), (gdm_session_manager_dispose):
* gui/simple-greeter/gdm-user-chooser-dialog.c:
(gdm_user_chooser_dialog_set_property),
(gdm_user_chooser_dialog_get_property),
(gdm_user_chooser_dialog_constructor),
(gdm_user_chooser_dialog_dispose):
* gui/simple-greeter/gdm-user-chooser-widget.c:
(gdm_user_chooser_widget_set_property),
(gdm_user_chooser_widget_get_property),
(gdm_user_chooser_widget_constructor):
* gui/simple-greeter/gdm-user-manager.c:
(_get_primary_user_session_id), (_get_login_window_session_id):
* gui/simple-greeter/gdm-user.c:
* gui/simple-greeter/libnotificationarea/na-tray-manager.c:
(na_tray_manager_handle_begin_message):
* gui/simple-greeter/libnotificationarea/na-tray.c:
* gui/user-switch-applet/applet.c: (prefs_cb),
(switch_to_user_session), (display_key_changed), (applet_fill_cb):
* gui/user-switch-applet/gdm-user-menu-item.c:
* tests/s-common-address.c: (START_TEST):
* utils/gdmflexiserver.c: (get_login_window_session_id):
Fix a bunch of compiler warnings and remove unused code.
Patch from: Kjartan Maraas <kmaraas@broadpark.no>
svn path=/trunk/; revision=5800
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-01-30 William Jon McCann <mccann@jhu.edu>
* common/gdm-address.c: (add_local_siocgifconf),
(add_local_addrinfo), (gdm_address_peek_local_list):
* daemon/Makefile.am:
* daemon/gdm-chooser-server.c: (generate_address),
(handle_select_hostname), (handle_disconnect),
(chooser_handle_child_message), (do_introspect),
(chooser_server_message_handler),
(chooser_server_unregister_handler), (connection_filter_function),
(allow_user_function), (handle_connection),
(gdm_chooser_server_start), (gdm_chooser_server_stop),
(gdm_chooser_server_get_address),
(_gdm_chooser_server_set_display_id),
(_gdm_chooser_server_set_user_name),
(_gdm_chooser_server_set_group_name),
(gdm_chooser_server_set_property),
(gdm_chooser_server_get_property),
(gdm_chooser_server_constructor), (gdm_chooser_server_class_init),
(gdm_chooser_server_init), (gdm_chooser_server_finalize),
(gdm_chooser_server_new):
* daemon/gdm-chooser-server.h:
* daemon/gdm-chooser-session.c: (listify_hash),
(get_chooser_environment), (chooser_session_child_watch),
(spawn_child_setup), (spawn_command_line_sync_as_user),
(spawn_command_line_async_as_user), (parse_value_as_integer),
(parse_dbus_launch_output), (start_dbus_daemon),
(stop_dbus_daemon), (gdm_chooser_session_spawn),
(gdm_chooser_session_start), (wait_on_child),
(chooser_session_died), (gdm_chooser_session_stop),
(gdm_chooser_session_set_server_address),
(_gdm_chooser_session_set_x11_display_name),
(_gdm_chooser_session_set_x11_display_hostname),
(_gdm_chooser_session_set_x11_display_device),
(_gdm_chooser_session_set_x11_authority_file),
(_gdm_chooser_session_set_user_name),
(_gdm_chooser_session_set_group_name),
(gdm_chooser_session_set_property),
(gdm_chooser_session_get_property),
(gdm_chooser_session_constructor),
(gdm_chooser_session_class_init), (gdm_chooser_session_init),
(gdm_chooser_session_finalize), (gdm_chooser_session_new):
* daemon/gdm-chooser-session.h:
* daemon/gdm-display.c: (gdm_display_real_set_slave_bus_name),
(gdm_display_set_slave_bus_name), (gdm_display_class_init):
* daemon/gdm-display.h:
* daemon/gdm-display.xml:
* daemon/gdm-factory-slave.c:
* daemon/gdm-greeter-server.c:
* daemon/gdm-greeter-session.c: (gdm_greeter_session_init):
* daemon/gdm-product-slave.c:
* daemon/gdm-simple-slave.c:
* daemon/gdm-slave.c: (gdm_slave_set_slave_bus_name),
(gdm_slave_real_start), (register_slave), (gdm_slave_constructor):
* daemon/gdm-xdmcp-chooser-display.c: (on_hostname_selected),
(gdm_xdmcp_chooser_display_set_slave_bus_name),
(gdm_xdmcp_chooser_display_manage),
(gdm_xdmcp_chooser_display_class_init),
(gdm_xdmcp_chooser_display_init),
(gdm_xdmcp_chooser_display_finalize),
(gdm_xdmcp_chooser_display_new):
* daemon/gdm-xdmcp-chooser-display.h:
* daemon/gdm-xdmcp-chooser-display.xml:
* daemon/gdm-xdmcp-chooser-slave.c: (on_chooser_session_start),
(on_chooser_session_stop), (on_chooser_session_exited),
(on_chooser_session_died), (on_chooser_hostname_selected),
(on_chooser_disconnected), (on_chooser_connected), (setup_server),
(run_chooser), (idle_connect_to_display),
(gdm_xdmcp_chooser_slave_run), (gdm_xdmcp_chooser_slave_start),
(gdm_xdmcp_chooser_slave_stop),
(gdm_xdmcp_chooser_slave_set_property),
(gdm_xdmcp_chooser_slave_get_property),
(gdm_xdmcp_chooser_slave_constructor),
(gdm_xdmcp_chooser_slave_class_init),
(gdm_xdmcp_chooser_slave_init), (gdm_xdmcp_chooser_slave_finalize),
(gdm_xdmcp_chooser_slave_new):
* daemon/gdm-xdmcp-chooser-slave.h:
* daemon/gdm-xdmcp-display-factory.c: (set_port_for_request),
(gdm_xdmcp_send_forward_query), (indirect_client_create),
(indirect_client_destroy), (indirect_client_lookup_by_chosen),
(indirect_client_lookup), (gdm_xdmcp_handle_indirect_query),
(forward_query_destroy), (remove_oldest_forward),
(forward_query_create), (forward_query_lookup),
(gdm_xdmcp_handle_forward_query), (gdm_xdmcp_send_decline),
(on_hostname_selected), (gdm_xdmcp_display_create),
(gdm_xdmcp_handle_request), (gdm_xdmcp_send_refuse),
(gdm_xdmcp_handle_manage), (gdm_xdmcp_handle_managed_forward):
* daemon/gdm-xdmcp-display.c: (gdm_xdmcp_display_class_init),
(gdm_xdmcp_display_finalize):
* daemon/gdm-xdmcp-display.h:
* daemon/gdm-xdmcp-display.xml:
* daemon/gdm-xdmcp-greeter-display.c:
(gdm_xdmcp_greeter_display_class_init),
(gdm_xdmcp_greeter_display_init),
(gdm_xdmcp_greeter_display_finalize),
(gdm_xdmcp_greeter_display_new):
* daemon/gdm-xdmcp-greeter-display.h:
* daemon/xdmcp-chooser-slave-main.c: (get_system_bus), (signal_cb),
(on_slave_stopped), (main):
* data/gdm.conf:
* gui/simple-chooser/Makefile.am:
* gui/simple-chooser/chooser-main.c: (assistive_registry_launch),
(filter_watch), (filter_timeout), (assistive_registry_start),
(at_set_gtk_modules), (load_a11y), (main):
* gui/simple-chooser/gdm-chooser-client.c:
(gdm_chooser_client_error_quark), (send_dbus_string_method),
(send_dbus_void_method), (gdm_chooser_client_call_select_hostname),
(gdm_chooser_client_call_disconnect), (client_dbus_handle_message),
(client_dbus_filter_function), (gdm_chooser_client_start),
(gdm_chooser_client_stop), (gdm_chooser_client_set_property),
(gdm_chooser_client_get_property),
(gdm_chooser_client_constructor), (gdm_chooser_client_dispose),
(gdm_chooser_client_class_init), (gdm_chooser_client_init),
(gdm_chooser_client_finalize), (gdm_chooser_client_new):
* gui/simple-chooser/gdm-chooser-client.h:
* gui/simple-chooser/gdm-chooser-session.c: (launch_compiz),
(launch_metacity), (start_window_manager), (start_settings_daemon),
(on_dialog_response), (gdm_chooser_session_start),
(gdm_chooser_session_stop), (gdm_chooser_session_set_property),
(gdm_chooser_session_get_property),
(gdm_chooser_session_constructor), (gdm_chooser_session_dispose),
(gdm_chooser_session_class_init), (gdm_chooser_session_init),
(gdm_chooser_session_finalize), (gdm_chooser_session_new):
* gui/simple-chooser/gdm-chooser-session.h:
* gui/simple-chooser/test-host-chooser.c:
(assistive_registry_launch), (filter_watch), (filter_timeout),
(assistive_registry_start), (at_set_gtk_modules), (load_a11y),
(main):
* gui/simple-greeter/greeter-main.c: (load_a11y), (main):
Initial support for XDMCP IndirectQuery choosers.
Also fix broken gdm_address_is_local.
svn path=/trunk/; revision=5645
|
|
|
|
|
|
|
|
|
|
|
| |
2008-01-29 William Jon McCann <mccann@jhu.edu>
* daemon/gdm-xdmcp-display-factory.c:
(gdm_xdmcp_handle_managed_forward):
Fix up spacing.
svn path=/trunk/; revision=5643
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2008-01-21 William Jon McCann <mccann@jhu.edu>
* common/gdm-address.c: (gdm_address_peek_local_list):
* daemon/gdm-xdmcp-display-factory.c:
(gdm_xdmcp_display_factory_class_init),
(gdm_xdmcp_display_factory_finalize):
Merge a few changes from the 2.20 branch.
* gui/simple-chooser/chooser-main.c: (main):
* gui/simple-greeter/Makefile.am:
* gui/simple-greeter/gdm-remote-login-window.c: (start_xephyr),
(gdm_remote_login_window_connect),
(gdm_remote_login_window_set_property),
(gdm_remote_login_window_get_property),
(gdm_remote_login_window_constructor),
(gdm_remote_login_window_class_init),
(gdm_remote_login_window_init), (gdm_remote_login_window_finalize),
(gdm_remote_login_window_new):
* gui/simple-greeter/gdm-remote-login-window.h:
* gui/simple-greeter/test-remote-login-window.c: (main):
Add initial remote login (xdmcp) client window.
svn path=/trunk/; revision=5621
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-11-09 William Jon McCann <mccann@jhu.edu>
* common/gdm-common.c: (gdm_string_hex_decode):
* common/gdm-common.h:
* daemon/Makefile.am:
* daemon/auth.c:
* daemon/auth.h:
* daemon/gdm-display.c: (_create_access_file_for_user),
(gdm_display_real_create_authority),
(gdm_display_real_add_user_authorization),
(gdm_display_real_remove_user_authorization),
(gdm_display_get_x11_cookie), (gdm_display_get_x11_authority_file),
(gdm_display_real_unmanage), (gdm_display_set_property),
(gdm_display_get_property), (gdm_display_class_init),
(gdm_display_finalize):
* daemon/gdm-display.h:
* daemon/gdm-factory-slave.c: (gdm_factory_slave_run):
* daemon/gdm-local-display-factory.c: (create_display_for_device):
* daemon/gdm-manager.c: (gdm_manager_init), (gdm_manager_finalize):
* daemon/gdm-product-slave.c: (gdm_product_slave_create_server):
* daemon/gdm-server.c: (_gdm_server_set_auth_file),
(gdm_server_set_property), (gdm_server_get_property),
(gdm_server_class_init), (gdm_server_new):
* daemon/gdm-server.h:
* daemon/gdm-simple-slave.c: (gdm_simple_slave_run):
* daemon/gdm-slave.c: (gdm_slave_connect_to_x11_display),
(gdm_slave_real_start), (gdm_slave_set_property),
(gdm_slave_get_property), (gdm_slave_class_init):
* daemon/gdm-static-display.c:
(gdm_static_display_add_user_authorization),
(gdm_static_display_remove_user_authorization):
* daemon/gdm-xdmcp-display-factory.c: (gdm_xdmcp_handle_request):
* daemon/gdm-xdmcp-display.c: (gdm_xdmcp_display_create_authority),
(gdm_xdmcp_display_add_user_authorization),
(gdm_xdmcp_display_remove_user_authorization),
(gdm_xdmcp_display_unmanage):
* daemon/gdm-display-access-file.c:
* daemon/gdm-display-access-file.h:
With this patch we now invoke the X server with the -auth argument
and disable machine wide access to the X server. This patch also
drops the md5 hashing of random bytes to create cookies and
instead just creates cookies directly (like the X server would if
we asked the X server to generate the cookies for us).
Patch from: Ray Strode <rstrode@redhat.com>
svn path=/trunk/; revision=5499
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-10-30 William Jon McCann <mccann@jhu.edu>
* common/gdm-signal-handler.c: (signal_io_watch), (catch_signal),
(uncatch_signal), (gdm_signal_handler_add),
(gdm_signal_handler_remove_and_free_data),
(gdm_signal_handler_finalize):
* daemon/gdm-display-store.c: (gdm_display_store_clear),
(gdm_display_store_remove), (gdm_display_store_add),
(display_unref):
* daemon/gdm-factory-slave.c: (on_greeter_start),
(on_greeter_stop), (on_session_info), (on_session_problem),
(on_session_info_query), (on_session_secret_info_query),
(on_session_opened), (on_session_user_verified),
(on_session_user_verification_error), (on_session_session_started),
(create_product_display), (on_session_relay_disconnected),
(on_session_relay_connected), (on_greeter_begin_verification),
(on_greeter_begin_verification_for_user), (on_greeter_answer),
(on_greeter_connected), (run_greeter), (idle_connect_to_display),
(server_ready_cb), (gdm_factory_slave_run),
(gdm_factory_slave_start), (gdm_factory_slave_stop),
(gdm_factory_slave_finalize):
* daemon/gdm-greeter-server.c: (send_dbus_message),
(send_dbus_string_signal), (send_dbus_void_signal),
(handle_begin_verification), (handle_begin_verification_for_user),
(handle_answer_query), (handle_select_session),
(handle_select_hostname), (handle_select_language),
(handle_select_user), (do_introspect),
(connection_filter_function), (handle_connection),
(gdm_greeter_server_start), (gdm_greeter_server_stop):
* daemon/gdm-greeter-session.c: (listify_hash),
(open_greeter_session), (greeter_session_child_watch),
(spawn_child_setup), (start_dbus_daemon),
(gdm_greeter_session_spawn), (gdm_greeter_session_start),
(wait_on_child), (greeter_session_died),
(gdm_greeter_session_stop):
* daemon/gdm-local-display-factory.c: (create_display_for_device),
(create_displays_for_pci_devices):
* daemon/gdm-manager.c: (gdm_manager_start),
(gdm_manager_set_wait_for_go), (remove_displays_for_connection),
(bus_name_owner_changed):
* daemon/gdm-product-display.c:
(gdm_product_display_get_relay_address):
* daemon/gdm-product-slave.c: (on_session_opened),
(on_session_started), (on_session_exited), (on_session_died),
(gdm_product_slave_create_server), (on_session_user_verified),
(on_session_user_verification_error), (on_session_info),
(on_session_problem), (on_session_info_query),
(on_session_secret_info_query), (on_relay_begin_verification),
(on_relay_begin_verification_for_user), (on_relay_answer),
(on_relay_session_selected), (on_relay_language_selected),
(on_relay_user_selected), (create_new_session),
(on_relay_cancelled), (session_relay_proxy_destroyed),
(get_relay_address), (connect_to_session_relay),
(gdm_product_slave_stop):
* daemon/gdm-server.c: (_gdm_server_query_ck_for_display_device),
(emit_ready_idle), (connect_to_parent), (change_user),
(server_child_setup), (server_child_watch), (gdm_server_spawn),
(wait_on_child), (server_died), (gdm_server_stop):
* daemon/gdm-session-direct.c: (send_dbus_string_signal),
(gdm_session_direct_handle_verified),
(gdm_session_direct_handle_verification_failed),
(gdm_session_direct_handle_username_changed),
(cancel_pending_query), (gdm_session_direct_handle_info_query),
(gdm_session_direct_handle_secret_info_query),
(gdm_session_direct_handle_info),
(gdm_session_direct_handle_problem),
(gdm_session_direct_handle_session_started),
(gdm_session_direct_handle_startup_failed),
(gdm_session_direct_handle_session_exited),
(gdm_session_direct_handle_session_died), (do_introspect),
(session_message_handler), (allow_user_function),
(handle_connection), (setup_server), (worker_stopped),
(worker_started), (worker_exited), (worker_died),
(gdm_session_direct_open), (send_begin_verification),
(send_begin_verification_for_user), (send_environment_variable),
(get_session_command_for_file), (gdm_session_direct_close),
(_gdm_session_direct_set_display_device),
(gdm_session_direct_dispose):
* daemon/gdm-session-relay.c: (send_dbus_message),
(send_dbus_string_signal), (send_dbus_void_signal),
(gdm_session_relay_begin_verification),
(gdm_session_relay_begin_verification_for_user),
(gdm_session_relay_answer_query), (handle_info_query),
(handle_secret_info_query), (handle_info), (handle_problem),
(handle_user_verified), (handle_user_verification_error),
(handle_session_started), (handle_session_stopped),
(handle_opened), (handle_reset), (do_introspect),
(session_relay_message_handler), (connection_filter_function),
(handle_connection), (gdm_session_relay_start),
(gdm_session_relay_stop):
* daemon/gdm-session-worker-job.c:
(session_worker_job_child_watch), (gdm_session_worker_job_spawn),
(gdm_session_worker_job_start), (wait_on_child),
(session_worker_job_died), (gdm_session_worker_job_stop):
* daemon/gdm-session-worker.c: (send_dbus_string_method),
(send_dbus_int_method), (send_user_verified),
(gdm_session_worker_get_username),
(gdm_session_worker_update_username), (send_question_method),
(gdm_session_worker_process_pam_message),
(gdm_session_worker_pam_new_messages_handler),
(gdm_session_worker_uninitialize_pam),
(gdm_session_worker_initialize_pam),
(gdm_session_worker_authenticate_user),
(gdm_session_worker_authorize_user),
(gdm_session_worker_verify_user), (session_worker_child_watch),
(gdm_session_worker_open_user_session), (gdm_session_worker_open),
(on_set_environment_variable), (on_start_program), (open_idle),
(on_begin_verification), (on_begin_verification_for_user),
(worker_dbus_filter_function), (gdm_session_worker_constructor):
* daemon/gdm-simple-slave.c: (on_session_started),
(on_session_exited), (on_session_died), (on_session_info),
(on_session_problem), (on_session_info_query),
(on_session_secret_info_query), (on_session_opened),
(on_session_selected_user_changed), (create_new_session),
(on_greeter_start), (on_greeter_stop),
(on_greeter_begin_verification),
(on_greeter_begin_verification_for_user),
(on_greeter_user_selected), (on_greeter_cancel),
(on_greeter_connected), (run_greeter), (gdm_simple_slave_run),
(gdm_simple_slave_stop):
* daemon/gdm-slave-proxy.c: (child_watch), (spawn_slave),
(gdm_slave_proxy_stop), (gdm_slave_proxy_dispose):
* daemon/gdm-slave.c: (listify_hash), (gdm_slave_run_script),
(set_local_auth), (gdm_slave_connect_to_x11_display),
(display_proxy_destroyed_cb), (gdm_slave_real_start),
(gdm_slave_real_stop), (gdm_slave_start), (gdm_slave_stop),
(gdm_slave_constructor):
* daemon/gdm-static-factory-display.c:
(gdm_static_factory_display_create_product_display):
* daemon/gdm-xdmcp-display-factory.c: (debug_addrinfo), (do_bind),
(setup_multicast), (open_port), (gdm_xdmcp_send_willing),
(gdm_xdmcp_send_unwilling), (gdm_xdmcp_send_forward_query),
(gdm_forward_query_dispose), (gdm_forward_query_lookup),
(gdm_xdmcp_handle_forward_query),
(gdm_xdmcp_really_send_managed_forward),
(gdm_xdmcp_send_got_managed_forward), (display_dispose_check),
(gdm_xdmcp_send_decline), (gdm_xdmcp_display_alloc),
(gdm_xdmcp_send_accept), (gdm_xdmcp_handle_request),
(gdm_xdmcp_send_failed), (gdm_xdmcp_send_refuse),
(gdm_xdmcp_handle_manage), (gdm_xdmcp_handle_managed_forward),
(gdm_xdmcp_handle_got_managed_forward), (gdm_xdmcp_send_alive),
(gdm_xdmcp_handle_keepalive), (decode_packet),
(gdm_xdmcp_display_factory_start):
* daemon/gdm-xdmcp-display.c: (gdm_xdmcp_display_create_authority),
(gdm_xdmcp_display_add_user_authorization):
Prefix debug messages with class name to make output easier to read.
svn path=/trunk/; revision=5456
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-10-29 William Jon McCann <mccann@jhu.edu>
* daemon/gdm-greeter-server.c: (connection_filter_function):
Don't handle object messages in filter func.
* daemon/gdm-xdmcp-display-factory.c: (gdm_xdmcp_handle_request):
Add debug for cookie.
* gui/simple-greeter/gdm-greeter-login-window.c:
(gdm_greeter_login_window_constructor),
(gdm_greeter_login_window_class_init),
(gdm_greeter_login_window_init):
Load theme in constructor so we get properties.
* gui/simple-greeter/gdm-greeter-session.c: (toggle_login_window):
Add debug.
svn path=/trunk/; revision=5448
|
|
|
|
|
|
|
|
|
|
|
| |
2007-10-24 Ray Strode <rstrode@redhat.com>
* daemon/gdm-slave.c:
* daemon/gdm-session-record.c:
* daemon/gdm-xdmcp-display-factory.c: cast size_t values
to int before passing to g_debug, to stop warnings on 64-bit
svn path=/trunk/; revision=5404
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-10-15 William Jon McCann <mccann@jhu.edu>
* common/gdm-md5.c: (gdm_md5_final):
* common/gdm-settings-backend.c:
* common/gdm-signal-handler.c: (gdm_signal_handler_init):
* common/test-settings-client.c: (test_settings_client):
* configure.ac:
* daemon/gdm-factory-slave.c:
* daemon/gdm-greeter-session.c: (gdm_greeter_session_spawn):
* daemon/gdm-local-display-factory.c:
* daemon/gdm-manager.c:
* daemon/gdm-product-slave.c:
* daemon/gdm-session-relay.c: (session_handle_child_message):
* daemon/gdm-session.c: (handle_connection):
* daemon/gdm-simple-slave.c:
* daemon/gdm-xdmcp-display-factory.c:
* daemon/main.c: (main):
* daemon/session-worker-main.c: (main):
* gui/simple-chooser/gdm-host-chooser-dialog.c: (on_response):
* gui/simple-chooser/gdm-host-chooser-widget.c:
* gui/simple-greeter/gdm-language-chooser-widget.c:
(languages_parse_start_tag), (territories_parse_start_tag):
* gui/simple-greeter/gdm-simple-greeter.c:
* gui/simple-greeter/gdm-user-chooser-widget.c:
(gdm_user_chooser_widget_init):
* gui/simple-greeter/greeter-main.c: (activate_power_manager):
* gui/simple-greeter/test-user-manager.c: (main):
Fix a bunch of compiler warnings. Add Werror for now to
warning flags.
svn path=/trunk/; revision=5371
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-10-15 William Jon McCann <mccann@jhu.edu>
* common/gdm-address.c: (gdm_address_new_from_sockaddr),
(gdm_address_peek_local_list):
* common/gdm-address.h:
* daemon/gdm-xdmcp-display-factory.c: (do_bind),
(create_address_from_request), (decode_packet):
* gui/simple-chooser/gdm-host-chooser-widget.c: (decode_packet),
(find_broadcast_addresses), (add_hosts):
The function gdm_address_new_from_sockaddr_storage gets called in a
few places with socket addresses that aren't necessary
sockaddr_storage bytes big (all the places that call getaddrinfo).
This results in the memdup call in that function potentially copying
out of bounds bytes.
Patch from: Ray Strode <halfline@gmail.com>
svn path=/branches/mccann-gobject/; revision=5360
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2007-10-04 William Jon McCann <mccann@jhu.edu>
* common/gdm-common-unknown-origin.c: (gdm_safe_fopen_w):
* common/gdm-common-unknown-origin.h:
* common/gdm-common.c:
* configure.ac:
* daemon/gdm-slave.c: (gdm_slave_connect_to_x11_display):
* daemon/gdm-xdmcp-display-factory.c:
(gdm_xdmcp_handle_indirect_query),
(gdm_xdmcp_handle_managed_forward):
* daemon/main.c: (main_restoreenv), (gdm_restart_now),
(check_logdir), (check_servauthdir), (set_effective_user_group),
(gdm_daemon_check_permissions), (gdm_daemon_change_user), (main):
Remove some more obsolete stuff. Make distcheck happy.
svn path=/branches/mccann-gobject/; revision=5342
|