]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - doc/tmpl/greeter.sgml
fc732d623ab475fa189e2dd9e5700d696fe6dc6d
[sojka/lightdm.git] / doc / tmpl / greeter.sgml
1 <!-- ##### SECTION Title ##### -->
2 LdmGreeter
3
4 <!-- ##### SECTION Short_Description ##### -->
5 LightDM greeter object
6
7 <!-- ##### SECTION Long_Description ##### -->
8 <para>
9 #LdmGreeter is an object that manages the connection to the LightDM server and provides common greeter functionality.
10 </para>
11 <para>
12 To connect to the display manager instanciate a #LdmGreeter object from inside the greeter process:
13 <example>
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))) {
18     // Log an error
19     exit (0);
20 }
21 ]]></programlisting>
22 </example>
23 Information on how to connect to the display manager is passed using environment variables.
24 </para>
25 <para>
26 Once connected, start an authentication conversation like this:
27 <example>
28 <title>Example Authorization Conversation</title>
29 <programlisting><![CDATA[
30 static void show_prompt_cb (LdmGreeter *greeter, const char *text)
31 {
32     // Show the user the message and prompt for some response
33     gchar *secret = ask_user_question (text);
34
35     // Give the result to the user
36     ldm_greeter_provide_secret (greeter, secret);
37 }
38
39 static void authentication_complete_cb (LdmGreeter *greeter)
40 {
41     if (ldm_greeter_get_is_authenticated (greeter)) {
42         // Log in to this session.
43         ldm_greeter_login (greeter);
44     }
45     else {
46         // Display a warning and reset the greeter
47     }
48 }
49
50 static void quit_cb (LdmGreeter *greeter)
51 {
52     // Clean up
53     // ...
54     
55     exit (0);
56 }
57
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);
61 ]]></programlisting>
62 </example>
63 </para>
64
65 <!-- ##### SECTION See_Also ##### -->
66 <para>
67
68 </para>
69
70 <!-- ##### SECTION Stability_Level ##### -->
71
72
73 <!-- ##### SECTION Image ##### -->
74
75
76 <!-- ##### STRUCT LdmGreeter ##### -->
77 <para>
78
79 </para>
80
81
82 <!-- ##### SIGNAL LdmGreeter::authentication-complete ##### -->
83 <para>
84
85 </para>
86
87 @ldmgreeter: the object which received the signal.
88
89 <!-- ##### SIGNAL LdmGreeter::show-error ##### -->
90 <para>
91
92 </para>
93
94 @ldmgreeter: the object which received the signal.
95 @arg1: 
96
97 <!-- ##### SIGNAL LdmGreeter::show-message ##### -->
98 <para>
99
100 </para>
101
102 @ldmgreeter: the object which received the signal.
103 @arg1: 
104
105 <!-- ##### SIGNAL LdmGreeter::show-prompt ##### -->
106 <para>
107
108 </para>
109
110 @ldmgreeter: the object which received the signal.
111 @arg1: 
112
113 <!-- ##### SIGNAL LdmGreeter::timed-login ##### -->
114 <para>
115
116 </para>
117
118 @ldmgreeter: the object which received the signal.
119 @arg1: 
120
121 <!-- ##### ARG LdmGreeter:can-hibernate ##### -->
122 <para>
123
124 </para>
125
126 <!-- ##### ARG LdmGreeter:can-restart ##### -->
127 <para>
128
129 </para>
130
131 <!-- ##### ARG LdmGreeter:can-shutdown ##### -->
132 <para>
133
134 </para>
135
136 <!-- ##### ARG LdmGreeter:can-suspend ##### -->
137 <para>
138
139 </para>
140
141 <!-- ##### ARG LdmGreeter:is-authenticated ##### -->
142 <para>
143
144 </para>
145
146 <!-- ##### ARG LdmGreeter:login-delay ##### -->
147 <para>
148
149 </para>
150
151 <!-- ##### ARG LdmGreeter:num-users ##### -->
152 <para>
153
154 </para>
155
156 <!-- ##### ARG LdmGreeter:session ##### -->
157 <para>
158
159 </para>
160
161 <!-- ##### ARG LdmGreeter:timed-login-user ##### -->
162 <para>
163
164 </para>
165
166 <!-- ##### FUNCTION ldm_greeter_new ##### -->
167 <para>
168
169 </para>
170
171 @void: 
172 @Returns: 
173
174
175 <!-- ##### FUNCTION ldm_greeter_connect ##### -->
176 <para>
177
178 </para>
179
180 @greeter: 
181 @Returns: 
182
183
184 <!-- ##### FUNCTION ldm_greeter_get_num_users ##### -->
185 <para>
186
187 </para>
188
189 @greeter: 
190 @Returns: 
191
192
193 <!-- ##### FUNCTION ldm_greeter_get_users ##### -->
194 <para>
195
196 </para>
197
198 @greeter: 
199 @Returns: 
200
201
202 <!-- ##### FUNCTION ldm_greeter_get_sessions ##### -->
203 <para>
204
205 </para>
206
207 @greeter: 
208 @Returns: 
209
210
211 <!-- ##### FUNCTION ldm_greeter_get_session ##### -->
212 <para>
213
214 </para>
215
216 @greeter: 
217 @Returns: 
218
219
220 <!-- ##### FUNCTION ldm_greeter_set_session ##### -->
221 <para>
222
223 </para>
224
225 @greeter: 
226 @session: 
227
228
229 <!-- ##### FUNCTION ldm_greeter_get_timed_login_user ##### -->
230 <para>
231
232 </para>
233
234 @greeter: 
235 @Returns: 
236
237
238 <!-- ##### FUNCTION ldm_greeter_get_timed_login_delay ##### -->
239 <para>
240
241 </para>
242
243 @greeter: 
244 @Returns: 
245
246
247 <!-- ##### FUNCTION ldm_greeter_cancel_timed_login ##### -->
248 <para>
249
250 </para>
251
252 @greeter: 
253
254
255 <!-- ##### FUNCTION ldm_greeter_start_authentication ##### -->
256 <para>
257
258 </para>
259
260 @greeter: 
261 @username: 
262
263
264 <!-- ##### FUNCTION ldm_greeter_provide_secret ##### -->
265 <para>
266
267 </para>
268
269 @greeter: 
270 @secret: 
271
272
273 <!-- ##### FUNCTION ldm_greeter_cancel_authentication ##### -->
274 <para>
275
276 </para>
277
278 @greeter: 
279
280
281 <!-- ##### FUNCTION ldm_greeter_get_is_authenticated ##### -->
282 <para>
283
284 </para>
285
286 @greeter: 
287 @Returns: 
288
289
290 <!-- ##### FUNCTION ldm_greeter_login ##### -->
291 <para>
292
293 </para>
294
295 @greeter: 
296
297
298 <!-- ##### FUNCTION ldm_greeter_get_can_suspend ##### -->
299 <para>
300
301 </para>
302
303 @greeter: 
304 @Returns: 
305
306
307 <!-- ##### FUNCTION ldm_greeter_suspend ##### -->
308 <para>
309
310 </para>
311
312 @greeter: 
313
314
315 <!-- ##### FUNCTION ldm_greeter_get_can_hibernate ##### -->
316 <para>
317
318 </para>
319
320 @greeter: 
321 @Returns: 
322
323
324 <!-- ##### FUNCTION ldm_greeter_hibernate ##### -->
325 <para>
326
327 </para>
328
329 @greeter: 
330
331
332 <!-- ##### FUNCTION ldm_greeter_get_can_restart ##### -->
333 <para>
334
335 </para>
336
337 @greeter: 
338 @Returns: 
339
340
341 <!-- ##### FUNCTION ldm_greeter_restart ##### -->
342 <para>
343
344 </para>
345
346 @greeter: 
347
348
349 <!-- ##### FUNCTION ldm_greeter_get_can_shutdown ##### -->
350 <para>
351
352 </para>
353
354 @greeter: 
355 @Returns: 
356
357
358 <!-- ##### FUNCTION ldm_greeter_shutdown ##### -->
359 <para>
360
361 </para>
362
363 @greeter: 
364
365