Skip to main content

lightdm_sys/
lib.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from lightdm-gir-files
3// DO NOT EDIT
4
5#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
6#![allow(
7    clippy::approx_constant,
8    clippy::type_complexity,
9    clippy::unreadable_literal,
10    clippy::upper_case_acronyms
11)]
12#![cfg_attr(docsrs, feature(doc_cfg))]
13
14use gio_sys as gio;
15use glib_sys as glib;
16use gobject_sys as gobject;
17
18#[allow(unused_imports)]
19use libc::{FILE, intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t};
20#[cfg(unix)]
21#[allow(unused_imports)]
22use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
23#[allow(unused_imports)]
24use std::ffi::{
25    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
26};
27
28#[allow(unused_imports)]
29use glib::{GType, gboolean, gconstpointer, gpointer};
30
31// Enums
32pub type LightDMGreeterError = c_int;
33pub const LIGHTDM_GREETER_ERROR_COMMUNICATION_ERROR: LightDMGreeterError = 0;
34pub const LIGHTDM_GREETER_ERROR_CONNECTION_FAILED: LightDMGreeterError = 1;
35pub const LIGHTDM_GREETER_ERROR_SESSION_FAILED: LightDMGreeterError = 2;
36pub const LIGHTDM_GREETER_ERROR_NO_AUTOLOGIN: LightDMGreeterError = 3;
37pub const LIGHTDM_GREETER_ERROR_INVALID_USER: LightDMGreeterError = 4;
38
39pub type LightDMMessageType = c_int;
40pub const LIGHTDM_MESSAGE_TYPE_INFO: LightDMMessageType = 0;
41pub const LIGHTDM_MESSAGE_TYPE_ERROR: LightDMMessageType = 1;
42
43pub type LightDMPromptType = c_int;
44pub const LIGHTDM_PROMPT_TYPE_QUESTION: LightDMPromptType = 0;
45pub const LIGHTDM_PROMPT_TYPE_SECRET: LightDMPromptType = 1;
46
47// Constants
48pub const LIGHTDM_GREETER_SIGNAL_AUTHENTICATION_COMPLETE: &[u8] = b"authentication-complete\0";
49pub const LIGHTDM_GREETER_SIGNAL_AUTOLOGIN_TIMER_EXPIRED: &[u8] = b"autologin-timer-expired\0";
50pub const LIGHTDM_GREETER_SIGNAL_IDLE: &[u8] = b"idle\0";
51pub const LIGHTDM_GREETER_SIGNAL_RESET: &[u8] = b"reset\0";
52pub const LIGHTDM_GREETER_SIGNAL_SHOW_MESSAGE: &[u8] = b"show-message\0";
53pub const LIGHTDM_GREETER_SIGNAL_SHOW_PROMPT: &[u8] = b"show-prompt\0";
54pub const LIGHTDM_SIGNAL_USER_CHANGED: &[u8] = b"changed\0";
55pub const LIGHTDM_USER_LIST_SIGNAL_USER_ADDED: &[u8] = b"user-added\0";
56pub const LIGHTDM_USER_LIST_SIGNAL_USER_CHANGED: &[u8] = b"user-changed\0";
57pub const LIGHTDM_USER_LIST_SIGNAL_USER_REMOVED: &[u8] = b"user-removed\0";
58
59// Records
60#[derive(Copy, Clone)]
61#[repr(C)]
62pub struct LightDMGreeterClass {
63    pub parent_class: gobject::GObjectClass,
64    pub show_message:
65        Option<unsafe extern "C" fn(*mut LightDMGreeter, *const c_char, LightDMMessageType)>,
66    pub show_prompt:
67        Option<unsafe extern "C" fn(*mut LightDMGreeter, *const c_char, LightDMPromptType)>,
68    pub authentication_complete: Option<unsafe extern "C" fn(*mut LightDMGreeter)>,
69    pub autologin_timer_expired: Option<unsafe extern "C" fn(*mut LightDMGreeter)>,
70    pub idle: Option<unsafe extern "C" fn(*mut LightDMGreeter)>,
71    pub reset: Option<unsafe extern "C" fn(*mut LightDMGreeter)>,
72    pub reserved1: Option<unsafe extern "C" fn()>,
73    pub reserved2: Option<unsafe extern "C" fn()>,
74    pub reserved3: Option<unsafe extern "C" fn()>,
75    pub reserved4: Option<unsafe extern "C" fn()>,
76}
77
78impl ::std::fmt::Debug for LightDMGreeterClass {
79    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
80        f.debug_struct(&format!("LightDMGreeterClass @ {self:p}"))
81            .field("show_message", &self.show_message)
82            .field("show_prompt", &self.show_prompt)
83            .field("authentication_complete", &self.authentication_complete)
84            .field("autologin_timer_expired", &self.autologin_timer_expired)
85            .field("idle", &self.idle)
86            .field("reset", &self.reset)
87            .field("reserved1", &self.reserved1)
88            .field("reserved2", &self.reserved2)
89            .field("reserved3", &self.reserved3)
90            .field("reserved4", &self.reserved4)
91            .finish()
92    }
93}
94
95#[derive(Copy, Clone)]
96#[repr(C)]
97pub struct LightDMLanguageClass {
98    pub parent_class: gobject::GObjectClass,
99    pub reserved1: Option<unsafe extern "C" fn()>,
100    pub reserved2: Option<unsafe extern "C" fn()>,
101    pub reserved3: Option<unsafe extern "C" fn()>,
102    pub reserved4: Option<unsafe extern "C" fn()>,
103    pub reserved5: Option<unsafe extern "C" fn()>,
104    pub reserved6: Option<unsafe extern "C" fn()>,
105}
106
107impl ::std::fmt::Debug for LightDMLanguageClass {
108    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
109        f.debug_struct(&format!("LightDMLanguageClass @ {self:p}"))
110            .field("reserved1", &self.reserved1)
111            .field("reserved2", &self.reserved2)
112            .field("reserved3", &self.reserved3)
113            .field("reserved4", &self.reserved4)
114            .field("reserved5", &self.reserved5)
115            .field("reserved6", &self.reserved6)
116            .finish()
117    }
118}
119
120#[derive(Copy, Clone)]
121#[repr(C)]
122pub struct LightDMLayoutClass {
123    pub parent_class: gobject::GObjectClass,
124    pub reserved1: Option<unsafe extern "C" fn()>,
125    pub reserved2: Option<unsafe extern "C" fn()>,
126    pub reserved3: Option<unsafe extern "C" fn()>,
127    pub reserved4: Option<unsafe extern "C" fn()>,
128    pub reserved5: Option<unsafe extern "C" fn()>,
129    pub reserved6: Option<unsafe extern "C" fn()>,
130}
131
132impl ::std::fmt::Debug for LightDMLayoutClass {
133    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
134        f.debug_struct(&format!("LightDMLayoutClass @ {self:p}"))
135            .field("reserved1", &self.reserved1)
136            .field("reserved2", &self.reserved2)
137            .field("reserved3", &self.reserved3)
138            .field("reserved4", &self.reserved4)
139            .field("reserved5", &self.reserved5)
140            .field("reserved6", &self.reserved6)
141            .finish()
142    }
143}
144
145#[derive(Copy, Clone)]
146#[repr(C)]
147pub struct LightDMSessionClass {
148    pub parent_class: gobject::GObjectClass,
149    pub reserved1: Option<unsafe extern "C" fn()>,
150    pub reserved2: Option<unsafe extern "C" fn()>,
151    pub reserved3: Option<unsafe extern "C" fn()>,
152    pub reserved4: Option<unsafe extern "C" fn()>,
153    pub reserved5: Option<unsafe extern "C" fn()>,
154    pub reserved6: Option<unsafe extern "C" fn()>,
155}
156
157impl ::std::fmt::Debug for LightDMSessionClass {
158    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
159        f.debug_struct(&format!("LightDMSessionClass @ {self:p}"))
160            .field("reserved1", &self.reserved1)
161            .field("reserved2", &self.reserved2)
162            .field("reserved3", &self.reserved3)
163            .field("reserved4", &self.reserved4)
164            .field("reserved5", &self.reserved5)
165            .field("reserved6", &self.reserved6)
166            .finish()
167    }
168}
169
170#[derive(Copy, Clone)]
171#[repr(C)]
172pub struct LightDMUserClass {
173    pub parent_class: gobject::GObjectClass,
174    pub changed: Option<unsafe extern "C" fn(*mut LightDMUser)>,
175    pub reserved1: Option<unsafe extern "C" fn()>,
176    pub reserved2: Option<unsafe extern "C" fn()>,
177    pub reserved3: Option<unsafe extern "C" fn()>,
178    pub reserved4: Option<unsafe extern "C" fn()>,
179    pub reserved5: Option<unsafe extern "C" fn()>,
180    pub reserved6: Option<unsafe extern "C" fn()>,
181}
182
183impl ::std::fmt::Debug for LightDMUserClass {
184    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
185        f.debug_struct(&format!("LightDMUserClass @ {self:p}"))
186            .field("changed", &self.changed)
187            .field("reserved1", &self.reserved1)
188            .field("reserved2", &self.reserved2)
189            .field("reserved3", &self.reserved3)
190            .field("reserved4", &self.reserved4)
191            .field("reserved5", &self.reserved5)
192            .field("reserved6", &self.reserved6)
193            .finish()
194    }
195}
196
197#[derive(Copy, Clone)]
198#[repr(C)]
199pub struct LightDMUserListClass {
200    pub parent_class: gobject::GObjectClass,
201    pub user_added: Option<unsafe extern "C" fn(*mut LightDMUserList, *mut LightDMUser)>,
202    pub user_changed: Option<unsafe extern "C" fn(*mut LightDMUserList, *mut LightDMUser)>,
203    pub user_removed: Option<unsafe extern "C" fn(*mut LightDMUserList, *mut LightDMUser)>,
204    pub reserved1: Option<unsafe extern "C" fn()>,
205    pub reserved2: Option<unsafe extern "C" fn()>,
206    pub reserved3: Option<unsafe extern "C" fn()>,
207    pub reserved4: Option<unsafe extern "C" fn()>,
208    pub reserved5: Option<unsafe extern "C" fn()>,
209    pub reserved6: Option<unsafe extern "C" fn()>,
210}
211
212impl ::std::fmt::Debug for LightDMUserListClass {
213    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
214        f.debug_struct(&format!("LightDMUserListClass @ {self:p}"))
215            .field("user_added", &self.user_added)
216            .field("user_changed", &self.user_changed)
217            .field("user_removed", &self.user_removed)
218            .field("reserved1", &self.reserved1)
219            .field("reserved2", &self.reserved2)
220            .field("reserved3", &self.reserved3)
221            .field("reserved4", &self.reserved4)
222            .field("reserved5", &self.reserved5)
223            .field("reserved6", &self.reserved6)
224            .finish()
225    }
226}
227
228// Classes
229#[derive(Copy, Clone)]
230#[repr(C)]
231pub struct LightDMGreeter {
232    pub parent_instance: gobject::GObject,
233}
234
235impl ::std::fmt::Debug for LightDMGreeter {
236    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
237        f.debug_struct(&format!("LightDMGreeter @ {self:p}"))
238            .field("parent_instance", &self.parent_instance)
239            .finish()
240    }
241}
242
243#[derive(Copy, Clone)]
244#[repr(C)]
245pub struct LightDMLanguage {
246    pub parent_instance: gobject::GObject,
247}
248
249impl ::std::fmt::Debug for LightDMLanguage {
250    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
251        f.debug_struct(&format!("LightDMLanguage @ {self:p}"))
252            .field("parent_instance", &self.parent_instance)
253            .finish()
254    }
255}
256
257#[derive(Copy, Clone)]
258#[repr(C)]
259pub struct LightDMLayout {
260    pub parent_instance: gobject::GObject,
261}
262
263impl ::std::fmt::Debug for LightDMLayout {
264    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
265        f.debug_struct(&format!("LightDMLayout @ {self:p}"))
266            .field("parent_instance", &self.parent_instance)
267            .finish()
268    }
269}
270
271#[derive(Copy, Clone)]
272#[repr(C)]
273pub struct LightDMSession {
274    pub parent_instance: gobject::GObject,
275}
276
277impl ::std::fmt::Debug for LightDMSession {
278    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
279        f.debug_struct(&format!("LightDMSession @ {self:p}"))
280            .field("parent_instance", &self.parent_instance)
281            .finish()
282    }
283}
284
285#[derive(Copy, Clone)]
286#[repr(C)]
287pub struct LightDMUser {
288    pub parent_instance: gobject::GObject,
289}
290
291impl ::std::fmt::Debug for LightDMUser {
292    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
293        f.debug_struct(&format!("LightDMUser @ {self:p}"))
294            .field("parent_instance", &self.parent_instance)
295            .finish()
296    }
297}
298
299#[derive(Copy, Clone)]
300#[repr(C)]
301pub struct LightDMUserList {
302    pub parent_instance: gobject::GObject,
303}
304
305impl ::std::fmt::Debug for LightDMUserList {
306    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
307        f.debug_struct(&format!("LightDMUserList @ {self:p}"))
308            .field("parent_instance", &self.parent_instance)
309            .finish()
310    }
311}
312
313unsafe extern "C" {
314
315    //=========================================================================
316    // LightDMGreeterError
317    //=========================================================================
318    pub fn lightdm_greeter_error_get_type() -> GType;
319    pub fn lightdm_greeter_error_quark() -> glib::GQuark;
320
321    //=========================================================================
322    // LightDMMessageType
323    //=========================================================================
324    pub fn lightdm_message_type_get_type() -> GType;
325
326    //=========================================================================
327    // LightDMPromptType
328    //=========================================================================
329    pub fn lightdm_prompt_type_get_type() -> GType;
330
331    //=========================================================================
332    // LightDMGreeter
333    //=========================================================================
334    pub fn lightdm_greeter_get_type() -> GType;
335    pub fn lightdm_greeter_new() -> *mut LightDMGreeter;
336    pub fn lightdm_greeter_authenticate(
337        greeter: *mut LightDMGreeter,
338        username: *const c_char,
339        error: *mut *mut glib::GError,
340    ) -> gboolean;
341    pub fn lightdm_greeter_authenticate_as_guest(
342        greeter: *mut LightDMGreeter,
343        error: *mut *mut glib::GError,
344    ) -> gboolean;
345    pub fn lightdm_greeter_authenticate_autologin(
346        greeter: *mut LightDMGreeter,
347        error: *mut *mut glib::GError,
348    ) -> gboolean;
349    pub fn lightdm_greeter_authenticate_remote(
350        greeter: *mut LightDMGreeter,
351        session: *const c_char,
352        username: *const c_char,
353        error: *mut *mut glib::GError,
354    ) -> gboolean;
355    pub fn lightdm_greeter_cancel_authentication(
356        greeter: *mut LightDMGreeter,
357        error: *mut *mut glib::GError,
358    ) -> gboolean;
359    pub fn lightdm_greeter_cancel_autologin(greeter: *mut LightDMGreeter);
360    pub fn lightdm_greeter_connect_sync(
361        greeter: *mut LightDMGreeter,
362        error: *mut *mut glib::GError,
363    ) -> gboolean;
364    pub fn lightdm_greeter_connect_to_daemon(
365        greeter: *mut LightDMGreeter,
366        cancellable: *mut gio::GCancellable,
367        callback: gio::GAsyncReadyCallback,
368        user_data: gpointer,
369    );
370    pub fn lightdm_greeter_connect_to_daemon_finish(
371        greeter: *mut LightDMGreeter,
372        result: *mut gio::GAsyncResult,
373        error: *mut *mut glib::GError,
374    ) -> gboolean;
375    pub fn lightdm_greeter_connect_to_daemon_sync(
376        greeter: *mut LightDMGreeter,
377        error: *mut *mut glib::GError,
378    ) -> gboolean;
379    pub fn lightdm_greeter_ensure_shared_data_dir(
380        greeter: *mut LightDMGreeter,
381        username: *const c_char,
382        cancellable: *mut gio::GCancellable,
383        callback: gio::GAsyncReadyCallback,
384        user_data: gpointer,
385    );
386    pub fn lightdm_greeter_ensure_shared_data_dir_finish(
387        greeter: *mut LightDMGreeter,
388        result: *mut gio::GAsyncResult,
389        error: *mut *mut glib::GError,
390    ) -> *mut c_char;
391    pub fn lightdm_greeter_ensure_shared_data_dir_sync(
392        greeter: *mut LightDMGreeter,
393        username: *const c_char,
394        error: *mut *mut glib::GError,
395    ) -> *mut c_char;
396    pub fn lightdm_greeter_get_authentication_user(greeter: *mut LightDMGreeter) -> *const c_char;
397    pub fn lightdm_greeter_get_autologin_guest_hint(greeter: *mut LightDMGreeter) -> gboolean;
398    pub fn lightdm_greeter_get_autologin_session_hint(
399        greeter: *mut LightDMGreeter,
400    ) -> *const c_char;
401    pub fn lightdm_greeter_get_autologin_timeout_hint(greeter: *mut LightDMGreeter) -> c_int;
402    pub fn lightdm_greeter_get_autologin_user_hint(greeter: *mut LightDMGreeter) -> *const c_char;
403    pub fn lightdm_greeter_get_default_session_hint(greeter: *mut LightDMGreeter) -> *const c_char;
404    pub fn lightdm_greeter_get_has_guest_account_hint(greeter: *mut LightDMGreeter) -> gboolean;
405    pub fn lightdm_greeter_get_hide_users_hint(greeter: *mut LightDMGreeter) -> gboolean;
406    pub fn lightdm_greeter_get_hint(
407        greeter: *mut LightDMGreeter,
408        name: *const c_char,
409    ) -> *const c_char;
410    pub fn lightdm_greeter_get_in_authentication(greeter: *mut LightDMGreeter) -> gboolean;
411    pub fn lightdm_greeter_get_is_authenticated(greeter: *mut LightDMGreeter) -> gboolean;
412    pub fn lightdm_greeter_get_lock_hint(greeter: *mut LightDMGreeter) -> gboolean;
413    pub fn lightdm_greeter_get_select_guest_hint(greeter: *mut LightDMGreeter) -> gboolean;
414    pub fn lightdm_greeter_get_select_user_hint(greeter: *mut LightDMGreeter) -> *const c_char;
415    pub fn lightdm_greeter_get_show_manual_login_hint(greeter: *mut LightDMGreeter) -> gboolean;
416    pub fn lightdm_greeter_get_show_remote_login_hint(greeter: *mut LightDMGreeter) -> gboolean;
417    pub fn lightdm_greeter_respond(
418        greeter: *mut LightDMGreeter,
419        response: *const c_char,
420        error: *mut *mut glib::GError,
421    ) -> gboolean;
422    pub fn lightdm_greeter_set_language(
423        greeter: *mut LightDMGreeter,
424        language: *const c_char,
425        error: *mut *mut glib::GError,
426    ) -> gboolean;
427    pub fn lightdm_greeter_set_resettable(greeter: *mut LightDMGreeter, resettable: gboolean);
428    pub fn lightdm_greeter_start_session(
429        greeter: *mut LightDMGreeter,
430        session: *const c_char,
431        cancellable: *mut gio::GCancellable,
432        callback: gio::GAsyncReadyCallback,
433        user_data: gpointer,
434    );
435    pub fn lightdm_greeter_start_session_finish(
436        greeter: *mut LightDMGreeter,
437        result: *mut gio::GAsyncResult,
438        error: *mut *mut glib::GError,
439    ) -> gboolean;
440    pub fn lightdm_greeter_start_session_sync(
441        greeter: *mut LightDMGreeter,
442        session: *const c_char,
443        error: *mut *mut glib::GError,
444    ) -> gboolean;
445
446    //=========================================================================
447    // LightDMLanguage
448    //=========================================================================
449    pub fn lightdm_language_get_type() -> GType;
450    pub fn lightdm_language_get_code(language: *mut LightDMLanguage) -> *const c_char;
451    pub fn lightdm_language_get_name(language: *mut LightDMLanguage) -> *const c_char;
452    pub fn lightdm_language_get_territory(language: *mut LightDMLanguage) -> *const c_char;
453    pub fn lightdm_language_matches(
454        language: *mut LightDMLanguage,
455        code: *const c_char,
456    ) -> gboolean;
457
458    //=========================================================================
459    // LightDMLayout
460    //=========================================================================
461    pub fn lightdm_layout_get_type() -> GType;
462    pub fn lightdm_layout_get_description(layout: *mut LightDMLayout) -> *const c_char;
463    pub fn lightdm_layout_get_name(layout: *mut LightDMLayout) -> *const c_char;
464    pub fn lightdm_layout_get_short_description(layout: *mut LightDMLayout) -> *const c_char;
465
466    //=========================================================================
467    // LightDMSession
468    //=========================================================================
469    pub fn lightdm_session_get_type() -> GType;
470    pub fn lightdm_session_get_comment(session: *mut LightDMSession) -> *const c_char;
471    pub fn lightdm_session_get_key(session: *mut LightDMSession) -> *const c_char;
472    pub fn lightdm_session_get_name(session: *mut LightDMSession) -> *const c_char;
473    pub fn lightdm_session_get_session_type(session: *mut LightDMSession) -> *const c_char;
474
475    //=========================================================================
476    // LightDMUser
477    //=========================================================================
478    pub fn lightdm_user_get_type() -> GType;
479    pub fn lightdm_user_get_background(user: *mut LightDMUser) -> *const c_char;
480    pub fn lightdm_user_get_display_name(user: *mut LightDMUser) -> *const c_char;
481    pub fn lightdm_user_get_has_messages(user: *mut LightDMUser) -> gboolean;
482    pub fn lightdm_user_get_home_directory(user: *mut LightDMUser) -> *const c_char;
483    pub fn lightdm_user_get_image(user: *mut LightDMUser) -> *const c_char;
484    pub fn lightdm_user_get_is_locked(user: *mut LightDMUser) -> gboolean;
485    pub fn lightdm_user_get_language(user: *mut LightDMUser) -> *const c_char;
486    pub fn lightdm_user_get_layout(user: *mut LightDMUser) -> *const c_char;
487    pub fn lightdm_user_get_layouts(user: *mut LightDMUser) -> *const *const c_char;
488    pub fn lightdm_user_get_logged_in(user: *mut LightDMUser) -> gboolean;
489    pub fn lightdm_user_get_name(user: *mut LightDMUser) -> *const c_char;
490    pub fn lightdm_user_get_real_name(user: *mut LightDMUser) -> *const c_char;
491    pub fn lightdm_user_get_session(user: *mut LightDMUser) -> *const c_char;
492    pub fn lightdm_user_get_uid(user: *mut LightDMUser) -> uid_t;
493
494    //=========================================================================
495    // LightDMUserList
496    //=========================================================================
497    pub fn lightdm_user_list_get_type() -> GType;
498    pub fn lightdm_user_list_get_instance() -> *mut LightDMUserList;
499    pub fn lightdm_user_list_get_length(user_list: *mut LightDMUserList) -> c_int;
500    pub fn lightdm_user_list_get_user_by_name(
501        user_list: *mut LightDMUserList,
502        username: *const c_char,
503    ) -> *mut LightDMUser;
504    pub fn lightdm_user_list_get_users(user_list: *mut LightDMUserList) -> *mut glib::GList;
505
506    //=========================================================================
507    // Other functions
508    //=========================================================================
509    pub fn lightdm_get_can_hibernate() -> gboolean;
510    pub fn lightdm_get_can_restart() -> gboolean;
511    pub fn lightdm_get_can_shutdown() -> gboolean;
512    pub fn lightdm_get_can_suspend() -> gboolean;
513    pub fn lightdm_get_hostname() -> *const c_char;
514    pub fn lightdm_get_language() -> *mut LightDMLanguage;
515    pub fn lightdm_get_languages() -> *mut glib::GList;
516    pub fn lightdm_get_layout() -> *mut LightDMLayout;
517    pub fn lightdm_get_layouts() -> *mut glib::GList;
518    pub fn lightdm_get_motd() -> *mut c_char;
519    pub fn lightdm_get_os_id() -> *const c_char;
520    pub fn lightdm_get_os_name() -> *const c_char;
521    pub fn lightdm_get_os_pretty_name() -> *const c_char;
522    pub fn lightdm_get_os_version() -> *const c_char;
523    pub fn lightdm_get_os_version_id() -> *const c_char;
524    pub fn lightdm_get_remote_sessions() -> *mut glib::GList;
525    pub fn lightdm_get_sessions() -> *mut glib::GList;
526    pub fn lightdm_hibernate(error: *mut *mut glib::GError) -> gboolean;
527    pub fn lightdm_restart(error: *mut *mut glib::GError) -> gboolean;
528    pub fn lightdm_set_layout(layout: *mut LightDMLayout);
529    pub fn lightdm_shutdown(error: *mut *mut glib::GError) -> gboolean;
530    pub fn lightdm_suspend(error: *mut *mut glib::GError) -> gboolean;
531
532}