summaryrefslogtreecommitdiff
path: root/daemon/gdm-session.h
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2012-09-17 15:18:02 -0400
committerRay Strode <rstrode@redhat.com>2012-09-17 16:41:26 -0400
commit6d5dd0936629d1d9754dfa93d4f4ac2738baaa84 (patch)
treed82c3269ad6f02d9559ef2d7da198bb3f8b53d32 /daemon/gdm-session.h
parentdfce1962cbb3ca95b0e407450179a0965e6f3ec3 (diff)
downloadgdm-6d5dd0936629d1d9754dfa93d4f4ac2738baaa84.tar.gz
worker: Copy environment from login session to reauth sessions
Reauthentication sessions depend on having the same environment as the session they were initiated from. This is important to make sure login prompts are in the right language, to make sure the kerberos credentials cache is looked up, and for various other reasons. This commit copies the environment from the login session to any new reauthentication sessions that get started after login. https://bugzilla.gnome.org/show_bug.cgi?id=684241
Diffstat (limited to 'daemon/gdm-session.h')
-rw-r--r--daemon/gdm-session.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/daemon/gdm-session.h b/daemon/gdm-session.h
index 2104a4c5..2511eca0 100644
--- a/daemon/gdm-session.h
+++ b/daemon/gdm-session.h
@@ -91,13 +91,14 @@ typedef struct
GType gdm_session_get_type (void);
GdmSession *gdm_session_new (GdmSessionVerificationMode verification_mode,
- uid_t allowed_user,
- const char *display_name,
- const char *display_hostname,
- const char *display_device,
- const char *display_seat_id,
- const char *display_x11_authority_file,
- gboolean display_is_local);
+ uid_t allowed_user,
+ const char *display_name,
+ const char *display_hostname,
+ const char *display_device,
+ const char *display_seat_id,
+ const char *display_x11_authority_file,
+ gboolean display_is_local,
+ const char * const *environment);
uid_t gdm_session_get_allowed_user (GdmSession *session);
void gdm_session_start_reauthentication (GdmSession *session,
GPid pid_of_caller,
@@ -126,6 +127,8 @@ void gdm_session_setup_for_program (GdmSession *session,
void gdm_session_set_environment_variable (GdmSession *session,
const char *key,
const char *value);
+void gdm_session_send_environment (GdmSession *self,
+ const char *service_name);
void gdm_session_reset (GdmSession *session);
void gdm_session_authenticate (GdmSession *session,
const char *service_name);