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;
17use polkit_rs_sys as polkit;
18
19#[allow(unused_imports)]
20use libc::{FILE, intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t};
21#[cfg(unix)]
22#[allow(unused_imports)]
23use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
24#[allow(unused_imports)]
25use std::ffi::{
26 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
27};
28
29#[allow(unused_imports)]
30use glib::{GType, gboolean, gconstpointer, gpointer};
31
32pub type PolkitAgentRegisterFlags = c_uint;
34pub const POLKIT_AGENT_REGISTER_FLAGS_NONE: PolkitAgentRegisterFlags = 0;
35pub const POLKIT_AGENT_REGISTER_FLAGS_RUN_IN_THREAD: PolkitAgentRegisterFlags = 1;
36
37#[derive(Copy, Clone)]
39#[repr(C)]
40pub struct PolkitAgentListenerClass {
41 pub parent_class: gobject::GObjectClass,
42 pub initiate_authentication: Option<
43 unsafe extern "C" fn(
44 *mut PolkitAgentListener,
45 *const c_char,
46 *const c_char,
47 *const c_char,
48 *mut polkit::PolkitDetails,
49 *const c_char,
50 *mut glib::GList,
51 *mut gio::GCancellable,
52 gio::GAsyncReadyCallback,
53 gpointer,
54 ),
55 >,
56 pub initiate_authentication_finish: Option<
57 unsafe extern "C" fn(
58 *mut PolkitAgentListener,
59 *mut gio::GAsyncResult,
60 *mut *mut glib::GError,
61 ) -> gboolean,
62 >,
63 pub _polkit_reserved0: Option<unsafe extern "C" fn()>,
64 pub _polkit_reserved1: Option<unsafe extern "C" fn()>,
65 pub _polkit_reserved2: Option<unsafe extern "C" fn()>,
66 pub _polkit_reserved3: Option<unsafe extern "C" fn()>,
67 pub _polkit_reserved4: Option<unsafe extern "C" fn()>,
68 pub _polkit_reserved5: Option<unsafe extern "C" fn()>,
69 pub _polkit_reserved6: Option<unsafe extern "C" fn()>,
70 pub _polkit_reserved7: Option<unsafe extern "C" fn()>,
71}
72
73impl ::std::fmt::Debug for PolkitAgentListenerClass {
74 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
75 f.debug_struct(&format!("PolkitAgentListenerClass @ {self:p}"))
76 .field("parent_class", &self.parent_class)
77 .field("initiate_authentication", &self.initiate_authentication)
78 .field(
79 "initiate_authentication_finish",
80 &self.initiate_authentication_finish,
81 )
82 .field("_polkit_reserved0", &self._polkit_reserved0)
83 .field("_polkit_reserved1", &self._polkit_reserved1)
84 .field("_polkit_reserved2", &self._polkit_reserved2)
85 .field("_polkit_reserved3", &self._polkit_reserved3)
86 .field("_polkit_reserved4", &self._polkit_reserved4)
87 .field("_polkit_reserved5", &self._polkit_reserved5)
88 .field("_polkit_reserved6", &self._polkit_reserved6)
89 .field("_polkit_reserved7", &self._polkit_reserved7)
90 .finish()
91 }
92}
93
94#[repr(C)]
95#[allow(dead_code)]
96pub struct _PolkitAgentSessionClass {
97 _data: [u8; 0],
98 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
99}
100
101pub type PolkitAgentSessionClass = _PolkitAgentSessionClass;
102
103#[derive(Copy, Clone)]
105#[repr(C)]
106pub struct PolkitAgentListener {
107 pub parent_instance: gobject::GObject,
108}
109
110impl ::std::fmt::Debug for PolkitAgentListener {
111 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
112 f.debug_struct(&format!("PolkitAgentListener @ {self:p}"))
113 .field("parent_instance", &self.parent_instance)
114 .finish()
115 }
116}
117
118#[repr(C)]
119#[allow(dead_code)]
120pub struct PolkitAgentSession {
121 _data: [u8; 0],
122 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
123}
124
125impl ::std::fmt::Debug for PolkitAgentSession {
126 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
127 f.debug_struct(&format!("PolkitAgentSession @ {self:p}"))
128 .finish()
129 }
130}
131
132#[repr(C)]
133#[allow(dead_code)]
134pub struct PolkitAgentTextListener {
135 _data: [u8; 0],
136 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
137}
138
139impl ::std::fmt::Debug for PolkitAgentTextListener {
140 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
141 f.debug_struct(&format!("PolkitAgentTextListener @ {self:p}"))
142 .finish()
143 }
144}
145
146unsafe extern "C" {
147
148 pub fn polkit_agent_register_flags_get_type() -> GType;
152
153 pub fn polkit_agent_listener_get_type() -> GType;
157 pub fn polkit_agent_listener_unregister(registration_handle: gpointer);
158 pub fn polkit_agent_listener_initiate_authentication(
159 listener: *mut PolkitAgentListener,
160 action_id: *const c_char,
161 message: *const c_char,
162 icon_name: *const c_char,
163 details: *mut polkit::PolkitDetails,
164 cookie: *const c_char,
165 identities: *mut glib::GList,
166 cancellable: *mut gio::GCancellable,
167 callback: gio::GAsyncReadyCallback,
168 user_data: gpointer,
169 );
170 pub fn polkit_agent_listener_initiate_authentication_finish(
171 listener: *mut PolkitAgentListener,
172 res: *mut gio::GAsyncResult,
173 error: *mut *mut glib::GError,
174 ) -> gboolean;
175 pub fn polkit_agent_listener_register(
176 listener: *mut PolkitAgentListener,
177 flags: PolkitAgentRegisterFlags,
178 subject: *mut polkit::PolkitSubject,
179 object_path: *const c_char,
180 cancellable: *mut gio::GCancellable,
181 error: *mut *mut glib::GError,
182 ) -> gpointer;
183 pub fn polkit_agent_listener_register_with_options(
184 listener: *mut PolkitAgentListener,
185 flags: PolkitAgentRegisterFlags,
186 subject: *mut polkit::PolkitSubject,
187 object_path: *const c_char,
188 options: *mut glib::GVariant,
189 cancellable: *mut gio::GCancellable,
190 error: *mut *mut glib::GError,
191 ) -> gpointer;
192
193 pub fn polkit_agent_session_get_type() -> GType;
197 pub fn polkit_agent_session_new(
198 identity: *mut polkit::PolkitIdentity,
199 cookie: *const c_char,
200 ) -> *mut PolkitAgentSession;
201 pub fn polkit_agent_session_cancel(session: *mut PolkitAgentSession);
202 pub fn polkit_agent_session_initiate(session: *mut PolkitAgentSession);
203 pub fn polkit_agent_session_response(session: *mut PolkitAgentSession, response: *const c_char);
204
205 pub fn polkit_agent_text_listener_get_type() -> GType;
209 pub fn polkit_agent_text_listener_new(
210 cancellable: *mut gio::GCancellable,
211 error: *mut *mut glib::GError,
212 ) -> *mut PolkitAgentListener;
213
214 pub fn polkit_agent_register_listener(
218 listener: *mut PolkitAgentListener,
219 subject: *mut polkit::PolkitSubject,
220 object_path: *const c_char,
221 error: *mut *mut glib::GError,
222 ) -> gboolean;
223
224}