1 <!-- ##### SECTION Title ##### -->
4 <!-- ##### SECTION Short_Description ##### -->
7 <!-- ##### SECTION Long_Description ##### -->
9 #LdmGreeter is an object that manages the connection to the LightDM server and provides common greeter functionality.
12 To connect to the display manager instanciate a #LdmGreeter object from inside the greeter process:
14 <title>Connecting to the display manager</title>
15 <programlisting><![CDATA[
16 LdmGreeter *greeter = ldm_greeter_new ();
17 if (!ldm_greeter_connect (LDM_GREETER (greeter))) {
23 Information on how to connect to the display manager is passed using environment variables.
26 Once connected, start an authentication conversation like this:
28 <title>Example Authorization Conversation</title>
29 <programlisting><![CDATA[
30 static void show_prompt_cb (LdmGreeter *greeter, const char *text)
32 // Show the user the message and prompt for some response
33 gchar *secret = ask_user_question (text);
35 // Give the result to the user
36 ldm_greeter_provide_secret (greeter, secret);
39 static void authentication_complete_cb (LdmGreeter *greeter)
41 if (ldm_greeter_get_is_authenticated (greeter)) {
42 // Log in to this session.
43 ldm_greeter_login (greeter);
46 // Display a warning and reset the greeter
50 static void quit_cb (LdmGreeter *greeter)
58 g_object_connect (G_OBJECT (greeter), "show-prompt", G_CALLBACK (show_prompt_cb), NULL);
59 g_object_connect (G_OBJECT (greeter), "authentication-complete", G_CALLBACK (authentication_complete_cb), NULL);
60 g_object_connect (G_OBJECT (greeter), "quit", G_CALLBACK (quit_cb), NULL);
65 <!-- ##### SECTION See_Also ##### -->
70 <!-- ##### SECTION Stability_Level ##### -->
73 <!-- ##### SECTION Image ##### -->
76 <!-- ##### STRUCT LdmGreeter ##### -->
82 <!-- ##### SIGNAL LdmGreeter::authentication-complete ##### -->
87 @ldmgreeter: the object which received the signal.
89 <!-- ##### SIGNAL LdmGreeter::show-error ##### -->
94 @ldmgreeter: the object which received the signal.
97 <!-- ##### SIGNAL LdmGreeter::show-message ##### -->
102 @ldmgreeter: the object which received the signal.
105 <!-- ##### SIGNAL LdmGreeter::show-prompt ##### -->
110 @ldmgreeter: the object which received the signal.
113 <!-- ##### SIGNAL LdmGreeter::timed-login ##### -->
118 @ldmgreeter: the object which received the signal.
121 <!-- ##### ARG LdmGreeter:can-hibernate ##### -->
126 <!-- ##### ARG LdmGreeter:can-restart ##### -->
131 <!-- ##### ARG LdmGreeter:can-shutdown ##### -->
136 <!-- ##### ARG LdmGreeter:can-suspend ##### -->
141 <!-- ##### ARG LdmGreeter:is-authenticated ##### -->
146 <!-- ##### ARG LdmGreeter:login-delay ##### -->
151 <!-- ##### ARG LdmGreeter:num-users ##### -->
156 <!-- ##### ARG LdmGreeter:session ##### -->
161 <!-- ##### ARG LdmGreeter:timed-login-user ##### -->
166 <!-- ##### FUNCTION ldm_greeter_new ##### -->
175 <!-- ##### FUNCTION ldm_greeter_connect ##### -->
184 <!-- ##### FUNCTION ldm_greeter_get_num_users ##### -->
193 <!-- ##### FUNCTION ldm_greeter_get_users ##### -->
202 <!-- ##### FUNCTION ldm_greeter_get_sessions ##### -->
211 <!-- ##### FUNCTION ldm_greeter_get_session ##### -->
220 <!-- ##### FUNCTION ldm_greeter_set_session ##### -->
229 <!-- ##### FUNCTION ldm_greeter_get_timed_login_user ##### -->
238 <!-- ##### FUNCTION ldm_greeter_get_timed_login_delay ##### -->
247 <!-- ##### FUNCTION ldm_greeter_cancel_timed_login ##### -->
255 <!-- ##### FUNCTION ldm_greeter_start_authentication ##### -->
264 <!-- ##### FUNCTION ldm_greeter_provide_secret ##### -->
273 <!-- ##### FUNCTION ldm_greeter_cancel_authentication ##### -->
281 <!-- ##### FUNCTION ldm_greeter_get_is_authenticated ##### -->
290 <!-- ##### FUNCTION ldm_greeter_login ##### -->
298 <!-- ##### FUNCTION ldm_greeter_get_can_suspend ##### -->
307 <!-- ##### FUNCTION ldm_greeter_suspend ##### -->
315 <!-- ##### FUNCTION ldm_greeter_get_can_hibernate ##### -->
324 <!-- ##### FUNCTION ldm_greeter_hibernate ##### -->
332 <!-- ##### FUNCTION ldm_greeter_get_can_restart ##### -->
341 <!-- ##### FUNCTION ldm_greeter_restart ##### -->
349 <!-- ##### FUNCTION ldm_greeter_get_can_shutdown ##### -->
358 <!-- ##### FUNCTION ldm_greeter_shutdown ##### -->