1#![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::{
20 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
21 intptr_t, size_t, ssize_t, uintptr_t, FILE,
22};
23
24#[allow(unused_imports)]
25use glib::{gboolean, gconstpointer, gpointer, GType};
26
27pub type PolkitError = c_int;
29pub const POLKIT_ERROR_FAILED: PolkitError = 0;
30pub const POLKIT_ERROR_CANCELLED: PolkitError = 1;
31pub const POLKIT_ERROR_NOT_SUPPORTED: PolkitError = 2;
32pub const POLKIT_ERROR_NOT_AUTHORIZED: PolkitError = 3;
33
34pub type PolkitImplicitAuthorization = c_int;
35pub const POLKIT_IMPLICIT_AUTHORIZATION_UNKNOWN: PolkitImplicitAuthorization = -1;
36pub const POLKIT_IMPLICIT_AUTHORIZATION_NOT_AUTHORIZED: PolkitImplicitAuthorization = 0;
37pub const POLKIT_IMPLICIT_AUTHORIZATION_AUTHENTICATION_REQUIRED: PolkitImplicitAuthorization = 1;
38pub const POLKIT_IMPLICIT_AUTHORIZATION_ADMINISTRATOR_AUTHENTICATION_REQUIRED:
39 PolkitImplicitAuthorization = 2;
40pub const POLKIT_IMPLICIT_AUTHORIZATION_AUTHENTICATION_REQUIRED_RETAINED:
41 PolkitImplicitAuthorization = 3;
42pub const POLKIT_IMPLICIT_AUTHORIZATION_ADMINISTRATOR_AUTHENTICATION_REQUIRED_RETAINED:
43 PolkitImplicitAuthorization = 4;
44pub const POLKIT_IMPLICIT_AUTHORIZATION_AUTHORIZED: PolkitImplicitAuthorization = 5;
45
46pub type PolkitAuthorityFeatures = c_uint;
48pub const POLKIT_AUTHORITY_FEATURES_NONE: PolkitAuthorityFeatures = 0;
49pub const POLKIT_AUTHORITY_FEATURES_TEMPORARY_AUTHORIZATION: PolkitAuthorityFeatures = 1;
50
51pub type PolkitCheckAuthorizationFlags = c_uint;
52pub const POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE: PolkitCheckAuthorizationFlags = 0;
53pub const POLKIT_CHECK_AUTHORIZATION_FLAGS_ALLOW_USER_INTERACTION: PolkitCheckAuthorizationFlags =
54 1;
55
56#[repr(C)]
58pub struct _PolkitActionDescriptionClass {
59 _data: [u8; 0],
60 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
61}
62
63pub type PolkitActionDescriptionClass = _PolkitActionDescriptionClass;
64
65#[repr(C)]
66pub struct _PolkitAuthorityClass {
67 _data: [u8; 0],
68 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
69}
70
71pub type PolkitAuthorityClass = _PolkitAuthorityClass;
72
73#[repr(C)]
74pub struct _PolkitAuthorizationResultClass {
75 _data: [u8; 0],
76 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
77}
78
79pub type PolkitAuthorizationResultClass = _PolkitAuthorizationResultClass;
80
81#[repr(C)]
82pub struct _PolkitDetailsClass {
83 _data: [u8; 0],
84 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
85}
86
87pub type PolkitDetailsClass = _PolkitDetailsClass;
88
89#[derive(Copy, Clone)]
90#[repr(C)]
91pub struct PolkitIdentityIface {
92 pub parent_iface: gobject::GTypeInterface,
93 pub hash: Option<unsafe extern "C" fn(*mut PolkitIdentity) -> c_uint>,
94 pub equal: Option<unsafe extern "C" fn(*mut PolkitIdentity, *mut PolkitIdentity) -> gboolean>,
95 pub to_string: Option<unsafe extern "C" fn(*mut PolkitIdentity) -> *mut c_char>,
96}
97
98impl ::std::fmt::Debug for PolkitIdentityIface {
99 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
100 f.debug_struct(&format!("PolkitIdentityIface @ {self:p}"))
101 .field("parent_iface", &self.parent_iface)
102 .field("hash", &self.hash)
103 .field("equal", &self.equal)
104 .field("to_string", &self.to_string)
105 .finish()
106 }
107}
108
109#[derive(Copy, Clone)]
110#[repr(C)]
111pub struct PolkitSubjectIface {
112 pub parent_iface: gobject::GTypeInterface,
113 pub hash: Option<unsafe extern "C" fn(*mut PolkitSubject) -> c_uint>,
114 pub equal: Option<unsafe extern "C" fn(*mut PolkitSubject, *mut PolkitSubject) -> gboolean>,
115 pub to_string: Option<unsafe extern "C" fn(*mut PolkitSubject) -> *mut c_char>,
116 pub exists: Option<
117 unsafe extern "C" fn(
118 *mut PolkitSubject,
119 *mut gio::GCancellable,
120 gio::GAsyncReadyCallback,
121 gpointer,
122 ),
123 >,
124 pub exists_finish: Option<
125 unsafe extern "C" fn(
126 *mut PolkitSubject,
127 *mut gio::GAsyncResult,
128 *mut *mut glib::GError,
129 ) -> gboolean,
130 >,
131 pub exists_sync: Option<
132 unsafe extern "C" fn(
133 *mut PolkitSubject,
134 *mut gio::GCancellable,
135 *mut *mut glib::GError,
136 ) -> gboolean,
137 >,
138}
139
140impl ::std::fmt::Debug for PolkitSubjectIface {
141 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
142 f.debug_struct(&format!("PolkitSubjectIface @ {self:p}"))
143 .field("parent_iface", &self.parent_iface)
144 .field("hash", &self.hash)
145 .field("equal", &self.equal)
146 .field("to_string", &self.to_string)
147 .field("exists", &self.exists)
148 .field("exists_finish", &self.exists_finish)
149 .field("exists_sync", &self.exists_sync)
150 .finish()
151 }
152}
153
154#[repr(C)]
155pub struct _PolkitSystemBusNameClass {
156 _data: [u8; 0],
157 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
158}
159
160pub type PolkitSystemBusNameClass = _PolkitSystemBusNameClass;
161
162#[repr(C)]
163pub struct _PolkitTemporaryAuthorizationClass {
164 _data: [u8; 0],
165 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
166}
167
168pub type PolkitTemporaryAuthorizationClass = _PolkitTemporaryAuthorizationClass;
169
170#[repr(C)]
171pub struct _PolkitUnixGroupClass {
172 _data: [u8; 0],
173 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
174}
175
176pub type PolkitUnixGroupClass = _PolkitUnixGroupClass;
177
178#[repr(C)]
179pub struct _PolkitUnixNetgroupClass {
180 _data: [u8; 0],
181 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
182}
183
184pub type PolkitUnixNetgroupClass = _PolkitUnixNetgroupClass;
185
186#[repr(C)]
187pub struct _PolkitUnixProcessClass {
188 _data: [u8; 0],
189 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
190}
191
192pub type PolkitUnixProcessClass = _PolkitUnixProcessClass;
193
194#[repr(C)]
195pub struct _PolkitUnixSessionClass {
196 _data: [u8; 0],
197 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
198}
199
200pub type PolkitUnixSessionClass = _PolkitUnixSessionClass;
201
202#[repr(C)]
203pub struct _PolkitUnixUserClass {
204 _data: [u8; 0],
205 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
206}
207
208pub type PolkitUnixUserClass = _PolkitUnixUserClass;
209
210#[repr(C)]
212pub struct PolkitActionDescription {
213 _data: [u8; 0],
214 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
215}
216
217impl ::std::fmt::Debug for PolkitActionDescription {
218 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
219 f.debug_struct(&format!("PolkitActionDescription @ {self:p}"))
220 .finish()
221 }
222}
223
224#[repr(C)]
225pub struct PolkitAuthority {
226 _data: [u8; 0],
227 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
228}
229
230impl ::std::fmt::Debug for PolkitAuthority {
231 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
232 f.debug_struct(&format!("PolkitAuthority @ {self:p}"))
233 .finish()
234 }
235}
236
237#[repr(C)]
238pub struct PolkitAuthorizationResult {
239 _data: [u8; 0],
240 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
241}
242
243impl ::std::fmt::Debug for PolkitAuthorizationResult {
244 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
245 f.debug_struct(&format!("PolkitAuthorizationResult @ {self:p}"))
246 .finish()
247 }
248}
249
250#[repr(C)]
251pub struct PolkitDetails {
252 _data: [u8; 0],
253 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
254}
255
256impl ::std::fmt::Debug for PolkitDetails {
257 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
258 f.debug_struct(&format!("PolkitDetails @ {self:p}"))
259 .finish()
260 }
261}
262
263#[repr(C)]
264pub struct PolkitPermission {
265 _data: [u8; 0],
266 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
267}
268
269impl ::std::fmt::Debug for PolkitPermission {
270 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
271 f.debug_struct(&format!("PolkitPermission @ {self:p}"))
272 .finish()
273 }
274}
275
276#[repr(C)]
277pub struct PolkitSystemBusName {
278 _data: [u8; 0],
279 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
280}
281
282impl ::std::fmt::Debug for PolkitSystemBusName {
283 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
284 f.debug_struct(&format!("PolkitSystemBusName @ {self:p}"))
285 .finish()
286 }
287}
288
289#[repr(C)]
290pub struct PolkitTemporaryAuthorization {
291 _data: [u8; 0],
292 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
293}
294
295impl ::std::fmt::Debug for PolkitTemporaryAuthorization {
296 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
297 f.debug_struct(&format!("PolkitTemporaryAuthorization @ {self:p}"))
298 .finish()
299 }
300}
301
302#[repr(C)]
303pub struct PolkitUnixGroup {
304 _data: [u8; 0],
305 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
306}
307
308impl ::std::fmt::Debug for PolkitUnixGroup {
309 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
310 f.debug_struct(&format!("PolkitUnixGroup @ {self:p}"))
311 .finish()
312 }
313}
314
315#[repr(C)]
316pub struct PolkitUnixNetgroup {
317 _data: [u8; 0],
318 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
319}
320
321impl ::std::fmt::Debug for PolkitUnixNetgroup {
322 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
323 f.debug_struct(&format!("PolkitUnixNetgroup @ {self:p}"))
324 .finish()
325 }
326}
327
328#[repr(C)]
329pub struct PolkitUnixProcess {
330 _data: [u8; 0],
331 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
332}
333
334impl ::std::fmt::Debug for PolkitUnixProcess {
335 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
336 f.debug_struct(&format!("PolkitUnixProcess @ {self:p}"))
337 .finish()
338 }
339}
340
341#[repr(C)]
342pub struct PolkitUnixSession {
343 _data: [u8; 0],
344 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
345}
346
347impl ::std::fmt::Debug for PolkitUnixSession {
348 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
349 f.debug_struct(&format!("PolkitUnixSession @ {self:p}"))
350 .finish()
351 }
352}
353
354#[repr(C)]
355pub struct PolkitUnixUser {
356 _data: [u8; 0],
357 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
358}
359
360impl ::std::fmt::Debug for PolkitUnixUser {
361 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
362 f.debug_struct(&format!("PolkitUnixUser @ {self:p}"))
363 .finish()
364 }
365}
366
367#[repr(C)]
369pub struct PolkitIdentity {
370 _data: [u8; 0],
371 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
372}
373
374impl ::std::fmt::Debug for PolkitIdentity {
375 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
376 write!(f, "PolkitIdentity @ {self:p}")
377 }
378}
379
380#[repr(C)]
381pub struct PolkitSubject {
382 _data: [u8; 0],
383 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
384}
385
386impl ::std::fmt::Debug for PolkitSubject {
387 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
388 write!(f, "PolkitSubject @ {self:p}")
389 }
390}
391
392#[link(name = "polkit-gobject-1")]
393extern "C" {
394
395 pub fn polkit_error_get_type() -> GType;
399 pub fn polkit_error_quark() -> glib::GQuark;
400
401 pub fn polkit_implicit_authorization_get_type() -> GType;
405 pub fn polkit_implicit_authorization_from_string(
406 string: *const c_char,
407 out_implicit_authorization: *mut PolkitImplicitAuthorization,
408 ) -> gboolean;
409 pub fn polkit_implicit_authorization_to_string(
410 implicit_authorization: PolkitImplicitAuthorization,
411 ) -> *const c_char;
412
413 pub fn polkit_authority_features_get_type() -> GType;
417
418 pub fn polkit_check_authorization_flags_get_type() -> GType;
422
423 pub fn polkit_action_description_get_type() -> GType;
427 pub fn polkit_action_description_get_action_id(
428 action_description: *mut PolkitActionDescription,
429 ) -> *const c_char;
430 pub fn polkit_action_description_get_annotation(
431 action_description: *mut PolkitActionDescription,
432 key: *const c_char,
433 ) -> *const c_char;
434 pub fn polkit_action_description_get_annotation_keys(
435 action_description: *mut PolkitActionDescription,
436 ) -> *const *const c_char;
437 pub fn polkit_action_description_get_description(
438 action_description: *mut PolkitActionDescription,
439 ) -> *const c_char;
440 pub fn polkit_action_description_get_icon_name(
441 action_description: *mut PolkitActionDescription,
442 ) -> *const c_char;
443 pub fn polkit_action_description_get_implicit_active(
444 action_description: *mut PolkitActionDescription,
445 ) -> PolkitImplicitAuthorization;
446 pub fn polkit_action_description_get_implicit_any(
447 action_description: *mut PolkitActionDescription,
448 ) -> PolkitImplicitAuthorization;
449 pub fn polkit_action_description_get_implicit_inactive(
450 action_description: *mut PolkitActionDescription,
451 ) -> PolkitImplicitAuthorization;
452 pub fn polkit_action_description_get_message(
453 action_description: *mut PolkitActionDescription,
454 ) -> *const c_char;
455 pub fn polkit_action_description_get_vendor_name(
456 action_description: *mut PolkitActionDescription,
457 ) -> *const c_char;
458 pub fn polkit_action_description_get_vendor_url(
459 action_description: *mut PolkitActionDescription,
460 ) -> *const c_char;
461
462 pub fn polkit_authority_get_type() -> GType;
466 pub fn polkit_authority_get() -> *mut PolkitAuthority;
467 pub fn polkit_authority_get_async(
468 cancellable: *mut gio::GCancellable,
469 callback: gio::GAsyncReadyCallback,
470 user_data: gpointer,
471 );
472 pub fn polkit_authority_get_finish(
473 res: *mut gio::GAsyncResult,
474 error: *mut *mut glib::GError,
475 ) -> *mut PolkitAuthority;
476 pub fn polkit_authority_get_sync(
477 cancellable: *mut gio::GCancellable,
478 error: *mut *mut glib::GError,
479 ) -> *mut PolkitAuthority;
480 pub fn polkit_authority_authentication_agent_response(
481 authority: *mut PolkitAuthority,
482 cookie: *const c_char,
483 identity: *mut PolkitIdentity,
484 cancellable: *mut gio::GCancellable,
485 callback: gio::GAsyncReadyCallback,
486 user_data: gpointer,
487 );
488 pub fn polkit_authority_authentication_agent_response_finish(
489 authority: *mut PolkitAuthority,
490 res: *mut gio::GAsyncResult,
491 error: *mut *mut glib::GError,
492 ) -> gboolean;
493 pub fn polkit_authority_authentication_agent_response_sync(
494 authority: *mut PolkitAuthority,
495 cookie: *const c_char,
496 identity: *mut PolkitIdentity,
497 cancellable: *mut gio::GCancellable,
498 error: *mut *mut glib::GError,
499 ) -> gboolean;
500 pub fn polkit_authority_check_authorization(
501 authority: *mut PolkitAuthority,
502 subject: *mut PolkitSubject,
503 action_id: *const c_char,
504 details: *mut PolkitDetails,
505 flags: PolkitCheckAuthorizationFlags,
506 cancellable: *mut gio::GCancellable,
507 callback: gio::GAsyncReadyCallback,
508 user_data: gpointer,
509 );
510 pub fn polkit_authority_check_authorization_finish(
511 authority: *mut PolkitAuthority,
512 res: *mut gio::GAsyncResult,
513 error: *mut *mut glib::GError,
514 ) -> *mut PolkitAuthorizationResult;
515 pub fn polkit_authority_check_authorization_sync(
516 authority: *mut PolkitAuthority,
517 subject: *mut PolkitSubject,
518 action_id: *const c_char,
519 details: *mut PolkitDetails,
520 flags: PolkitCheckAuthorizationFlags,
521 cancellable: *mut gio::GCancellable,
522 error: *mut *mut glib::GError,
523 ) -> *mut PolkitAuthorizationResult;
524 pub fn polkit_authority_enumerate_actions(
525 authority: *mut PolkitAuthority,
526 cancellable: *mut gio::GCancellable,
527 callback: gio::GAsyncReadyCallback,
528 user_data: gpointer,
529 );
530 pub fn polkit_authority_enumerate_actions_finish(
531 authority: *mut PolkitAuthority,
532 res: *mut gio::GAsyncResult,
533 error: *mut *mut glib::GError,
534 ) -> *mut glib::GList;
535 pub fn polkit_authority_enumerate_actions_sync(
536 authority: *mut PolkitAuthority,
537 cancellable: *mut gio::GCancellable,
538 error: *mut *mut glib::GError,
539 ) -> *mut glib::GList;
540 pub fn polkit_authority_enumerate_temporary_authorizations(
541 authority: *mut PolkitAuthority,
542 subject: *mut PolkitSubject,
543 cancellable: *mut gio::GCancellable,
544 callback: gio::GAsyncReadyCallback,
545 user_data: gpointer,
546 );
547 pub fn polkit_authority_enumerate_temporary_authorizations_finish(
548 authority: *mut PolkitAuthority,
549 res: *mut gio::GAsyncResult,
550 error: *mut *mut glib::GError,
551 ) -> *mut glib::GList;
552 pub fn polkit_authority_enumerate_temporary_authorizations_sync(
553 authority: *mut PolkitAuthority,
554 subject: *mut PolkitSubject,
555 cancellable: *mut gio::GCancellable,
556 error: *mut *mut glib::GError,
557 ) -> *mut glib::GList;
558 pub fn polkit_authority_get_backend_features(
559 authority: *mut PolkitAuthority,
560 ) -> PolkitAuthorityFeatures;
561 pub fn polkit_authority_get_backend_name(authority: *mut PolkitAuthority) -> *const c_char;
562 pub fn polkit_authority_get_backend_version(authority: *mut PolkitAuthority) -> *const c_char;
563 pub fn polkit_authority_get_owner(authority: *mut PolkitAuthority) -> *mut c_char;
564 pub fn polkit_authority_register_authentication_agent(
565 authority: *mut PolkitAuthority,
566 subject: *mut PolkitSubject,
567 locale: *const c_char,
568 object_path: *const c_char,
569 cancellable: *mut gio::GCancellable,
570 callback: gio::GAsyncReadyCallback,
571 user_data: gpointer,
572 );
573 pub fn polkit_authority_register_authentication_agent_finish(
574 authority: *mut PolkitAuthority,
575 res: *mut gio::GAsyncResult,
576 error: *mut *mut glib::GError,
577 ) -> gboolean;
578 pub fn polkit_authority_register_authentication_agent_sync(
579 authority: *mut PolkitAuthority,
580 subject: *mut PolkitSubject,
581 locale: *const c_char,
582 object_path: *const c_char,
583 cancellable: *mut gio::GCancellable,
584 error: *mut *mut glib::GError,
585 ) -> gboolean;
586 pub fn polkit_authority_register_authentication_agent_with_options(
587 authority: *mut PolkitAuthority,
588 subject: *mut PolkitSubject,
589 locale: *const c_char,
590 object_path: *const c_char,
591 options: *mut glib::GVariant,
592 cancellable: *mut gio::GCancellable,
593 callback: gio::GAsyncReadyCallback,
594 user_data: gpointer,
595 );
596 pub fn polkit_authority_register_authentication_agent_with_options_finish(
597 authority: *mut PolkitAuthority,
598 res: *mut gio::GAsyncResult,
599 error: *mut *mut glib::GError,
600 ) -> gboolean;
601 pub fn polkit_authority_register_authentication_agent_with_options_sync(
602 authority: *mut PolkitAuthority,
603 subject: *mut PolkitSubject,
604 locale: *const c_char,
605 object_path: *const c_char,
606 options: *mut glib::GVariant,
607 cancellable: *mut gio::GCancellable,
608 error: *mut *mut glib::GError,
609 ) -> gboolean;
610 pub fn polkit_authority_revoke_temporary_authorization_by_id(
611 authority: *mut PolkitAuthority,
612 id: *const c_char,
613 cancellable: *mut gio::GCancellable,
614 callback: gio::GAsyncReadyCallback,
615 user_data: gpointer,
616 );
617 pub fn polkit_authority_revoke_temporary_authorization_by_id_finish(
618 authority: *mut PolkitAuthority,
619 res: *mut gio::GAsyncResult,
620 error: *mut *mut glib::GError,
621 ) -> gboolean;
622 pub fn polkit_authority_revoke_temporary_authorization_by_id_sync(
623 authority: *mut PolkitAuthority,
624 id: *const c_char,
625 cancellable: *mut gio::GCancellable,
626 error: *mut *mut glib::GError,
627 ) -> gboolean;
628 pub fn polkit_authority_revoke_temporary_authorizations(
629 authority: *mut PolkitAuthority,
630 subject: *mut PolkitSubject,
631 cancellable: *mut gio::GCancellable,
632 callback: gio::GAsyncReadyCallback,
633 user_data: gpointer,
634 );
635 pub fn polkit_authority_revoke_temporary_authorizations_finish(
636 authority: *mut PolkitAuthority,
637 res: *mut gio::GAsyncResult,
638 error: *mut *mut glib::GError,
639 ) -> gboolean;
640 pub fn polkit_authority_revoke_temporary_authorizations_sync(
641 authority: *mut PolkitAuthority,
642 subject: *mut PolkitSubject,
643 cancellable: *mut gio::GCancellable,
644 error: *mut *mut glib::GError,
645 ) -> gboolean;
646 pub fn polkit_authority_unregister_authentication_agent(
647 authority: *mut PolkitAuthority,
648 subject: *mut PolkitSubject,
649 object_path: *const c_char,
650 cancellable: *mut gio::GCancellable,
651 callback: gio::GAsyncReadyCallback,
652 user_data: gpointer,
653 );
654 pub fn polkit_authority_unregister_authentication_agent_finish(
655 authority: *mut PolkitAuthority,
656 res: *mut gio::GAsyncResult,
657 error: *mut *mut glib::GError,
658 ) -> gboolean;
659 pub fn polkit_authority_unregister_authentication_agent_sync(
660 authority: *mut PolkitAuthority,
661 subject: *mut PolkitSubject,
662 object_path: *const c_char,
663 cancellable: *mut gio::GCancellable,
664 error: *mut *mut glib::GError,
665 ) -> gboolean;
666
667 pub fn polkit_authorization_result_get_type() -> GType;
671 pub fn polkit_authorization_result_new(
672 is_authorized: gboolean,
673 is_challenge: gboolean,
674 details: *mut PolkitDetails,
675 ) -> *mut PolkitAuthorizationResult;
676 pub fn polkit_authorization_result_get_details(
677 result: *mut PolkitAuthorizationResult,
678 ) -> *mut PolkitDetails;
679 #[cfg(feature = "v0_101")]
680 #[cfg_attr(docsrs, doc(cfg(feature = "v0_101")))]
681 pub fn polkit_authorization_result_get_dismissed(
682 result: *mut PolkitAuthorizationResult,
683 ) -> gboolean;
684 pub fn polkit_authorization_result_get_is_authorized(
685 result: *mut PolkitAuthorizationResult,
686 ) -> gboolean;
687 pub fn polkit_authorization_result_get_is_challenge(
688 result: *mut PolkitAuthorizationResult,
689 ) -> gboolean;
690 pub fn polkit_authorization_result_get_retains_authorization(
691 result: *mut PolkitAuthorizationResult,
692 ) -> gboolean;
693 pub fn polkit_authorization_result_get_temporary_authorization_id(
694 result: *mut PolkitAuthorizationResult,
695 ) -> *const c_char;
696
697 pub fn polkit_details_get_type() -> GType;
701 pub fn polkit_details_new() -> *mut PolkitDetails;
702 pub fn polkit_details_get_keys(details: *mut PolkitDetails) -> *mut *mut c_char;
703 pub fn polkit_details_insert(
704 details: *mut PolkitDetails,
705 key: *const c_char,
706 value: *const c_char,
707 );
708 pub fn polkit_details_lookup(details: *mut PolkitDetails, key: *const c_char) -> *const c_char;
709
710 pub fn polkit_permission_get_type() -> GType;
714 pub fn polkit_permission_new_finish(
715 res: *mut gio::GAsyncResult,
716 error: *mut *mut glib::GError,
717 ) -> *mut gio::GPermission;
718 pub fn polkit_permission_new_sync(
719 action_id: *const c_char,
720 subject: *mut PolkitSubject,
721 cancellable: *mut gio::GCancellable,
722 error: *mut *mut glib::GError,
723 ) -> *mut gio::GPermission;
724 pub fn polkit_permission_new(
725 action_id: *const c_char,
726 subject: *mut PolkitSubject,
727 cancellable: *mut gio::GCancellable,
728 callback: gio::GAsyncReadyCallback,
729 user_data: gpointer,
730 );
731 pub fn polkit_permission_get_action_id(permission: *mut PolkitPermission) -> *const c_char;
732 pub fn polkit_permission_get_subject(permission: *mut PolkitPermission) -> *mut PolkitSubject;
733
734 pub fn polkit_system_bus_name_get_type() -> GType;
738 pub fn polkit_system_bus_name_new(name: *const c_char) -> *mut PolkitSubject;
739 pub fn polkit_system_bus_name_get_name(
740 system_bus_name: *mut PolkitSystemBusName,
741 ) -> *const c_char;
742 pub fn polkit_system_bus_name_get_process_sync(
743 system_bus_name: *mut PolkitSystemBusName,
744 cancellable: *mut gio::GCancellable,
745 error: *mut *mut glib::GError,
746 ) -> *mut PolkitSubject;
747 pub fn polkit_system_bus_name_get_user_sync(
748 system_bus_name: *mut PolkitSystemBusName,
749 cancellable: *mut gio::GCancellable,
750 error: *mut *mut glib::GError,
751 ) -> *mut PolkitUnixUser;
752 pub fn polkit_system_bus_name_set_name(
753 system_bus_name: *mut PolkitSystemBusName,
754 name: *const c_char,
755 );
756
757 pub fn polkit_temporary_authorization_get_type() -> GType;
761 pub fn polkit_temporary_authorization_get_action_id(
762 authorization: *mut PolkitTemporaryAuthorization,
763 ) -> *const c_char;
764 pub fn polkit_temporary_authorization_get_id(
765 authorization: *mut PolkitTemporaryAuthorization,
766 ) -> *const c_char;
767 pub fn polkit_temporary_authorization_get_subject(
768 authorization: *mut PolkitTemporaryAuthorization,
769 ) -> *mut PolkitSubject;
770 pub fn polkit_temporary_authorization_get_time_expires(
771 authorization: *mut PolkitTemporaryAuthorization,
772 ) -> u64;
773 pub fn polkit_temporary_authorization_get_time_obtained(
774 authorization: *mut PolkitTemporaryAuthorization,
775 ) -> u64;
776
777 pub fn polkit_unix_group_get_type() -> GType;
781 pub fn polkit_unix_group_new(gid: c_int) -> *mut PolkitIdentity;
782 pub fn polkit_unix_group_new_for_name(
783 name: *const c_char,
784 error: *mut *mut glib::GError,
785 ) -> *mut PolkitIdentity;
786 pub fn polkit_unix_group_get_gid(group: *mut PolkitUnixGroup) -> c_int;
787 pub fn polkit_unix_group_set_gid(group: *mut PolkitUnixGroup, gid: c_int);
788
789 pub fn polkit_unix_netgroup_get_type() -> GType;
793 pub fn polkit_unix_netgroup_new(name: *const c_char) -> *mut PolkitIdentity;
794 pub fn polkit_unix_netgroup_get_name(group: *mut PolkitUnixNetgroup) -> *const c_char;
795 pub fn polkit_unix_netgroup_set_name(group: *mut PolkitUnixNetgroup, name: *const c_char);
796
797 pub fn polkit_unix_process_get_type() -> GType;
801 pub fn polkit_unix_process_new(pid: c_int) -> *mut PolkitSubject;
802 pub fn polkit_unix_process_new_for_owner(
803 pid: c_int,
804 start_time: u64,
805 uid: c_int,
806 ) -> *mut PolkitSubject;
807 pub fn polkit_unix_process_new_full(pid: c_int, start_time: u64) -> *mut PolkitSubject;
808 pub fn polkit_unix_process_get_owner(
809 process: *mut PolkitUnixProcess,
810 error: *mut *mut glib::GError,
811 ) -> c_int;
812 pub fn polkit_unix_process_get_pid(process: *mut PolkitUnixProcess) -> c_int;
813 pub fn polkit_unix_process_get_start_time(process: *mut PolkitUnixProcess) -> u64;
814 pub fn polkit_unix_process_get_uid(process: *mut PolkitUnixProcess) -> c_int;
815 pub fn polkit_unix_process_set_pid(process: *mut PolkitUnixProcess, pid: c_int);
816 pub fn polkit_unix_process_set_start_time(process: *mut PolkitUnixProcess, start_time: u64);
817 pub fn polkit_unix_process_set_uid(process: *mut PolkitUnixProcess, uid: c_int);
818
819 pub fn polkit_unix_session_get_type() -> GType;
823 pub fn polkit_unix_session_new(session_id: *const c_char) -> *mut PolkitSubject;
824 pub fn polkit_unix_session_new_for_process(
825 pid: c_int,
826 cancellable: *mut gio::GCancellable,
827 callback: gio::GAsyncReadyCallback,
828 user_data: gpointer,
829 );
830 pub fn polkit_unix_session_new_for_process_finish(
831 res: *mut gio::GAsyncResult,
832 error: *mut *mut glib::GError,
833 ) -> *mut PolkitSubject;
834 pub fn polkit_unix_session_new_for_process_sync(
835 pid: c_int,
836 cancellable: *mut gio::GCancellable,
837 error: *mut *mut glib::GError,
838 ) -> *mut PolkitSubject;
839 pub fn polkit_unix_session_get_session_id(session: *mut PolkitUnixSession) -> *const c_char;
840 pub fn polkit_unix_session_set_session_id(
841 session: *mut PolkitUnixSession,
842 session_id: *const c_char,
843 );
844
845 pub fn polkit_unix_user_get_type() -> GType;
849 pub fn polkit_unix_user_new(uid: c_int) -> *mut PolkitIdentity;
850 pub fn polkit_unix_user_new_for_name(
851 name: *const c_char,
852 error: *mut *mut glib::GError,
853 ) -> *mut PolkitIdentity;
854 pub fn polkit_unix_user_get_name(user: *mut PolkitUnixUser) -> *const c_char;
855 pub fn polkit_unix_user_get_uid(user: *mut PolkitUnixUser) -> c_int;
856 pub fn polkit_unix_user_set_uid(user: *mut PolkitUnixUser, uid: c_int);
857
858 pub fn polkit_identity_get_type() -> GType;
862 pub fn polkit_identity_from_string(
863 str: *const c_char,
864 error: *mut *mut glib::GError,
865 ) -> *mut PolkitIdentity;
866 pub fn polkit_identity_equal(a: *mut PolkitIdentity, b: *mut PolkitIdentity) -> gboolean;
867 pub fn polkit_identity_hash(identity: *mut PolkitIdentity) -> c_uint;
868 pub fn polkit_identity_to_string(identity: *mut PolkitIdentity) -> *mut c_char;
869
870 pub fn polkit_subject_get_type() -> GType;
874 pub fn polkit_subject_from_string(
875 str: *const c_char,
876 error: *mut *mut glib::GError,
877 ) -> *mut PolkitSubject;
878 pub fn polkit_subject_equal(a: *mut PolkitSubject, b: *mut PolkitSubject) -> gboolean;
879 pub fn polkit_subject_exists(
880 subject: *mut PolkitSubject,
881 cancellable: *mut gio::GCancellable,
882 callback: gio::GAsyncReadyCallback,
883 user_data: gpointer,
884 );
885 pub fn polkit_subject_exists_finish(
886 subject: *mut PolkitSubject,
887 res: *mut gio::GAsyncResult,
888 error: *mut *mut glib::GError,
889 ) -> gboolean;
890 pub fn polkit_subject_exists_sync(
891 subject: *mut PolkitSubject,
892 cancellable: *mut gio::GCancellable,
893 error: *mut *mut glib::GError,
894 ) -> gboolean;
895 pub fn polkit_subject_hash(subject: *mut PolkitSubject) -> c_uint;
896 pub fn polkit_subject_to_string(subject: *mut PolkitSubject) -> *mut c_char;
897
898}