libsecret_sys/
lib.rs

1// Generated by gir (https://github.com/gtk-rs/gir @ e06125dad46a)
2// from
3// from gir-files (https://github.com/gtk-rs/gir-files.git @ 01066bc7d926)
4// DO NOT EDIT
5
6#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8    clippy::approx_constant,
9    clippy::type_complexity,
10    clippy::unreadable_literal,
11    clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use gio_sys as gio;
16use glib_sys as glib;
17use gobject_sys as gobject;
18
19#[cfg(unix)]
20#[allow(unused_imports)]
21use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
22#[allow(unused_imports)]
23use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
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::{gboolean, gconstpointer, gpointer, GType};
31
32// Enums
33pub type SecretError = c_int;
34pub const SECRET_ERROR_PROTOCOL: SecretError = 1;
35pub const SECRET_ERROR_IS_LOCKED: SecretError = 2;
36pub const SECRET_ERROR_NO_SUCH_OBJECT: SecretError = 3;
37pub const SECRET_ERROR_ALREADY_EXISTS: SecretError = 4;
38pub const SECRET_ERROR_INVALID_FILE_FORMAT: SecretError = 5;
39#[cfg(feature = "v0_21_2")]
40#[cfg_attr(docsrs, doc(cfg(feature = "v0_21_2")))]
41pub const SECRET_ERROR_MISMATCHED_SCHEMA: SecretError = 6;
42#[cfg(feature = "v0_21_2")]
43#[cfg_attr(docsrs, doc(cfg(feature = "v0_21_2")))]
44pub const SECRET_ERROR_NO_MATCHING_ATTRIBUTE: SecretError = 7;
45#[cfg(feature = "v0_21_2")]
46#[cfg_attr(docsrs, doc(cfg(feature = "v0_21_2")))]
47pub const SECRET_ERROR_WRONG_TYPE: SecretError = 8;
48#[cfg(feature = "v0_21_2")]
49#[cfg_attr(docsrs, doc(cfg(feature = "v0_21_2")))]
50pub const SECRET_ERROR_EMPTY_TABLE: SecretError = 9;
51
52pub type SecretSchemaAttributeType = c_int;
53pub const SECRET_SCHEMA_ATTRIBUTE_STRING: SecretSchemaAttributeType = 0;
54pub const SECRET_SCHEMA_ATTRIBUTE_INTEGER: SecretSchemaAttributeType = 1;
55pub const SECRET_SCHEMA_ATTRIBUTE_BOOLEAN: SecretSchemaAttributeType = 2;
56
57pub type SecretSchemaType = c_int;
58pub const SECRET_SCHEMA_TYPE_NOTE: SecretSchemaType = 0;
59pub const SECRET_SCHEMA_TYPE_COMPAT_NETWORK: SecretSchemaType = 1;
60
61// Constants
62pub const SECRET_COLLECTION_DEFAULT: &[u8] = b"default\0";
63pub const SECRET_COLLECTION_SESSION: &[u8] = b"session\0";
64
65// Flags
66pub type SecretCollectionCreateFlags = c_uint;
67pub const SECRET_COLLECTION_CREATE_NONE: SecretCollectionCreateFlags = 0;
68
69pub type SecretCollectionFlags = c_uint;
70pub const SECRET_COLLECTION_NONE: SecretCollectionFlags = 0;
71pub const SECRET_COLLECTION_LOAD_ITEMS: SecretCollectionFlags = 2;
72
73pub type SecretItemCreateFlags = c_uint;
74pub const SECRET_ITEM_CREATE_NONE: SecretItemCreateFlags = 0;
75pub const SECRET_ITEM_CREATE_REPLACE: SecretItemCreateFlags = 2;
76
77pub type SecretItemFlags = c_uint;
78pub const SECRET_ITEM_NONE: SecretItemFlags = 0;
79pub const SECRET_ITEM_LOAD_SECRET: SecretItemFlags = 2;
80
81pub type SecretSchemaFlags = c_uint;
82pub const SECRET_SCHEMA_NONE: SecretSchemaFlags = 0;
83pub const SECRET_SCHEMA_DONT_MATCH_NAME: SecretSchemaFlags = 2;
84
85pub type SecretSearchFlags = c_uint;
86pub const SECRET_SEARCH_NONE: SecretSearchFlags = 0;
87pub const SECRET_SEARCH_ALL: SecretSearchFlags = 2;
88pub const SECRET_SEARCH_UNLOCK: SecretSearchFlags = 4;
89pub const SECRET_SEARCH_LOAD_SECRETS: SecretSearchFlags = 8;
90
91pub type SecretServiceFlags = c_uint;
92pub const SECRET_SERVICE_NONE: SecretServiceFlags = 0;
93pub const SECRET_SERVICE_OPEN_SESSION: SecretServiceFlags = 2;
94pub const SECRET_SERVICE_LOAD_COLLECTIONS: SecretServiceFlags = 4;
95
96// Records
97#[derive(Copy, Clone)]
98#[repr(C)]
99pub struct SecretCollectionClass {
100    pub parent_class: gio::GDBusProxyClass,
101    pub padding: [gpointer; 8],
102}
103
104impl ::std::fmt::Debug for SecretCollectionClass {
105    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
106        f.debug_struct(&format!("SecretCollectionClass @ {self:p}"))
107            .field("parent_class", &self.parent_class)
108            .finish()
109    }
110}
111
112#[repr(C)]
113#[allow(dead_code)]
114pub struct _SecretCollectionPrivate {
115    _data: [u8; 0],
116    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
117}
118
119pub type SecretCollectionPrivate = _SecretCollectionPrivate;
120
121#[derive(Copy, Clone)]
122#[repr(C)]
123pub struct SecretItemClass {
124    pub parent_class: gio::GDBusProxyClass,
125    pub padding: [gpointer; 4],
126}
127
128impl ::std::fmt::Debug for SecretItemClass {
129    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
130        f.debug_struct(&format!("SecretItemClass @ {self:p}"))
131            .field("parent_class", &self.parent_class)
132            .finish()
133    }
134}
135
136#[repr(C)]
137#[allow(dead_code)]
138pub struct _SecretItemPrivate {
139    _data: [u8; 0],
140    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
141}
142
143pub type SecretItemPrivate = _SecretItemPrivate;
144
145#[derive(Copy, Clone)]
146#[repr(C)]
147pub struct SecretPromptClass {
148    pub parent_class: gio::GDBusProxyClass,
149    pub padding: [gpointer; 8],
150}
151
152impl ::std::fmt::Debug for SecretPromptClass {
153    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
154        f.debug_struct(&format!("SecretPromptClass @ {self:p}"))
155            .field("parent_class", &self.parent_class)
156            .finish()
157    }
158}
159
160#[repr(C)]
161#[allow(dead_code)]
162pub struct _SecretPromptPrivate {
163    _data: [u8; 0],
164    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
165}
166
167pub type SecretPromptPrivate = _SecretPromptPrivate;
168
169#[derive(Copy, Clone)]
170#[repr(C)]
171pub struct SecretRetrievableInterface {
172    pub parent_iface: gobject::GTypeInterface,
173    pub retrieve_secret: Option<
174        unsafe extern "C" fn(
175            *mut SecretRetrievable,
176            *mut gio::GCancellable,
177            gio::GAsyncReadyCallback,
178            gpointer,
179        ),
180    >,
181    pub retrieve_secret_finish: Option<
182        unsafe extern "C" fn(
183            *mut SecretRetrievable,
184            *mut gio::GAsyncResult,
185            *mut *mut glib::GError,
186        ) -> *mut SecretValue,
187    >,
188}
189
190impl ::std::fmt::Debug for SecretRetrievableInterface {
191    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
192        f.debug_struct(&format!("SecretRetrievableInterface @ {self:p}"))
193            .field("parent_iface", &self.parent_iface)
194            .field("retrieve_secret", &self.retrieve_secret)
195            .field("retrieve_secret_finish", &self.retrieve_secret_finish)
196            .finish()
197    }
198}
199
200#[derive(Copy, Clone)]
201#[repr(C)]
202pub struct SecretSchema {
203    pub name: *const c_char,
204    pub flags: SecretSchemaFlags,
205    pub attributes: [SecretSchemaAttribute; 32],
206    pub reserved: c_int,
207    pub reserved1: gpointer,
208    pub reserved2: gpointer,
209    pub reserved3: gpointer,
210    pub reserved4: gpointer,
211    pub reserved5: gpointer,
212    pub reserved6: gpointer,
213    pub reserved7: gpointer,
214}
215
216impl ::std::fmt::Debug for SecretSchema {
217    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
218        f.debug_struct(&format!("SecretSchema @ {self:p}"))
219            .field("name", &self.name)
220            .field("flags", &self.flags)
221            .field("attributes", &self.attributes)
222            .finish()
223    }
224}
225
226#[derive(Copy, Clone)]
227#[repr(C)]
228pub struct SecretSchemaAttribute {
229    pub name: *const c_char,
230    pub type_: SecretSchemaAttributeType,
231}
232
233impl ::std::fmt::Debug for SecretSchemaAttribute {
234    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
235        f.debug_struct(&format!("SecretSchemaAttribute @ {self:p}"))
236            .field("name", &self.name)
237            .field("type_", &self.type_)
238            .finish()
239    }
240}
241
242#[derive(Copy, Clone)]
243#[repr(C)]
244pub struct SecretServiceClass {
245    pub parent_class: gio::GDBusProxyClass,
246    pub collection_gtype: GType,
247    pub item_gtype: GType,
248    pub prompt_sync: Option<
249        unsafe extern "C" fn(
250            *mut SecretService,
251            *mut SecretPrompt,
252            *mut gio::GCancellable,
253            *const glib::GVariantType,
254            *mut *mut glib::GError,
255        ) -> *mut glib::GVariant,
256    >,
257    pub prompt_async: Option<
258        unsafe extern "C" fn(
259            *mut SecretService,
260            *mut SecretPrompt,
261            *const glib::GVariantType,
262            *mut gio::GCancellable,
263            gio::GAsyncReadyCallback,
264            gpointer,
265        ),
266    >,
267    pub prompt_finish: Option<
268        unsafe extern "C" fn(
269            *mut SecretService,
270            *mut gio::GAsyncResult,
271            *mut *mut glib::GError,
272        ) -> *mut glib::GVariant,
273    >,
274    pub get_collection_gtype: Option<unsafe extern "C" fn(*mut SecretService) -> GType>,
275    pub get_item_gtype: Option<unsafe extern "C" fn(*mut SecretService) -> GType>,
276    pub padding: [gpointer; 14],
277}
278
279impl ::std::fmt::Debug for SecretServiceClass {
280    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
281        f.debug_struct(&format!("SecretServiceClass @ {self:p}"))
282            .field("parent_class", &self.parent_class)
283            .field("collection_gtype", &self.collection_gtype)
284            .field("item_gtype", &self.item_gtype)
285            .field("prompt_sync", &self.prompt_sync)
286            .field("prompt_async", &self.prompt_async)
287            .field("prompt_finish", &self.prompt_finish)
288            .field("get_collection_gtype", &self.get_collection_gtype)
289            .field("get_item_gtype", &self.get_item_gtype)
290            .finish()
291    }
292}
293
294#[repr(C)]
295#[allow(dead_code)]
296pub struct _SecretServicePrivate {
297    _data: [u8; 0],
298    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
299}
300
301pub type SecretServicePrivate = _SecretServicePrivate;
302
303#[repr(C)]
304#[allow(dead_code)]
305pub struct SecretValue {
306    _data: [u8; 0],
307    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
308}
309
310impl ::std::fmt::Debug for SecretValue {
311    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
312        f.debug_struct(&format!("SecretValue @ {self:p}")).finish()
313    }
314}
315
316// Classes
317#[derive(Copy, Clone)]
318#[repr(C)]
319pub struct SecretCollection {
320    pub parent: gio::GDBusProxy,
321    pub pv: *mut SecretCollectionPrivate,
322}
323
324impl ::std::fmt::Debug for SecretCollection {
325    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
326        f.debug_struct(&format!("SecretCollection @ {self:p}"))
327            .field("parent", &self.parent)
328            .finish()
329    }
330}
331
332#[derive(Copy, Clone)]
333#[repr(C)]
334pub struct SecretItem {
335    pub parent_instance: gio::GDBusProxy,
336    pub pv: *mut SecretItemPrivate,
337}
338
339impl ::std::fmt::Debug for SecretItem {
340    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
341        f.debug_struct(&format!("SecretItem @ {self:p}"))
342            .field("parent_instance", &self.parent_instance)
343            .finish()
344    }
345}
346
347#[derive(Copy, Clone)]
348#[repr(C)]
349pub struct SecretPrompt {
350    pub parent_instance: gio::GDBusProxy,
351    pub pv: *mut SecretPromptPrivate,
352}
353
354impl ::std::fmt::Debug for SecretPrompt {
355    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
356        f.debug_struct(&format!("SecretPrompt @ {self:p}"))
357            .field("parent_instance", &self.parent_instance)
358            .finish()
359    }
360}
361
362#[derive(Copy, Clone)]
363#[repr(C)]
364pub struct SecretService {
365    pub parent: gio::GDBusProxy,
366    pub pv: *mut SecretServicePrivate,
367}
368
369impl ::std::fmt::Debug for SecretService {
370    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
371        f.debug_struct(&format!("SecretService @ {self:p}"))
372            .field("parent", &self.parent)
373            .finish()
374    }
375}
376
377// Interfaces
378#[repr(C)]
379#[allow(dead_code)]
380pub struct SecretBackend {
381    _data: [u8; 0],
382    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
383}
384
385impl ::std::fmt::Debug for SecretBackend {
386    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
387        write!(f, "SecretBackend @ {self:p}")
388    }
389}
390
391#[repr(C)]
392#[allow(dead_code)]
393pub struct SecretRetrievable {
394    _data: [u8; 0],
395    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
396}
397
398impl ::std::fmt::Debug for SecretRetrievable {
399    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
400        write!(f, "SecretRetrievable @ {self:p}")
401    }
402}
403
404extern "C" {
405
406    //=========================================================================
407    // SecretBackendFlags
408    //=========================================================================
409    #[cfg(feature = "v0_19")]
410    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
411    pub fn secret_backend_flags_get_type() -> GType;
412
413    //=========================================================================
414    // SecretError
415    //=========================================================================
416    pub fn secret_error_get_type() -> GType;
417    pub fn secret_error_get_quark() -> glib::GQuark;
418
419    //=========================================================================
420    // SecretSchemaAttributeType
421    //=========================================================================
422    pub fn secret_schema_attribute_type_get_type() -> GType;
423
424    //=========================================================================
425    // SecretSchemaType
426    //=========================================================================
427    #[cfg(feature = "v0_18_6")]
428    #[cfg_attr(docsrs, doc(cfg(feature = "v0_18_6")))]
429    pub fn secret_schema_type_get_type() -> GType;
430
431    //=========================================================================
432    // SecretCollectionCreateFlags
433    //=========================================================================
434    pub fn secret_collection_create_flags_get_type() -> GType;
435
436    //=========================================================================
437    // SecretCollectionFlags
438    //=========================================================================
439    pub fn secret_collection_flags_get_type() -> GType;
440
441    //=========================================================================
442    // SecretItemCreateFlags
443    //=========================================================================
444    pub fn secret_item_create_flags_get_type() -> GType;
445
446    //=========================================================================
447    // SecretItemFlags
448    //=========================================================================
449    pub fn secret_item_flags_get_type() -> GType;
450
451    //=========================================================================
452    // SecretSchemaFlags
453    //=========================================================================
454    pub fn secret_schema_flags_get_type() -> GType;
455
456    //=========================================================================
457    // SecretSearchFlags
458    //=========================================================================
459    pub fn secret_search_flags_get_type() -> GType;
460
461    //=========================================================================
462    // SecretServiceFlags
463    //=========================================================================
464    pub fn secret_service_flags_get_type() -> GType;
465
466    //=========================================================================
467    // SecretSchema
468    //=========================================================================
469    pub fn secret_schema_get_type() -> GType;
470    pub fn secret_schema_new(
471        name: *const c_char,
472        flags: SecretSchemaFlags,
473        ...
474    ) -> *mut SecretSchema;
475    pub fn secret_schema_newv(
476        name: *const c_char,
477        flags: SecretSchemaFlags,
478        attribute_names_and_types: *mut glib::GHashTable,
479    ) -> *mut SecretSchema;
480    pub fn secret_schema_ref(schema: *mut SecretSchema) -> *mut SecretSchema;
481    pub fn secret_schema_unref(schema: *mut SecretSchema);
482
483    //=========================================================================
484    // SecretSchemaAttribute
485    //=========================================================================
486    pub fn secret_schema_attribute_get_type() -> GType;
487
488    //=========================================================================
489    // SecretValue
490    //=========================================================================
491    pub fn secret_value_get_type() -> GType;
492    pub fn secret_value_new(
493        secret: *const c_char,
494        length: ssize_t,
495        content_type: *const c_char,
496    ) -> *mut SecretValue;
497    pub fn secret_value_new_full(
498        secret: *mut c_char,
499        length: ssize_t,
500        content_type: *const c_char,
501        destroy: glib::GDestroyNotify,
502    ) -> *mut SecretValue;
503    pub fn secret_value_get(value: *mut SecretValue, length: *mut size_t) -> *const u8;
504    pub fn secret_value_get_content_type(value: *mut SecretValue) -> *const c_char;
505    pub fn secret_value_get_text(value: *mut SecretValue) -> *const c_char;
506    pub fn secret_value_ref(value: *mut SecretValue) -> *mut SecretValue;
507    pub fn secret_value_unref(value: gpointer);
508    #[cfg(feature = "v0_19")]
509    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
510    pub fn secret_value_unref_to_password(
511        value: *mut SecretValue,
512        length: *mut size_t,
513    ) -> *mut c_char;
514
515    //=========================================================================
516    // SecretCollection
517    //=========================================================================
518    pub fn secret_collection_get_type() -> GType;
519    pub fn secret_collection_new_for_dbus_path_finish(
520        result: *mut gio::GAsyncResult,
521        error: *mut *mut glib::GError,
522    ) -> *mut SecretCollection;
523    pub fn secret_collection_new_for_dbus_path_sync(
524        service: *mut SecretService,
525        collection_path: *const c_char,
526        flags: SecretCollectionFlags,
527        cancellable: *mut gio::GCancellable,
528        error: *mut *mut glib::GError,
529    ) -> *mut SecretCollection;
530    pub fn secret_collection_create(
531        service: *mut SecretService,
532        label: *const c_char,
533        alias: *const c_char,
534        flags: SecretCollectionCreateFlags,
535        cancellable: *mut gio::GCancellable,
536        callback: gio::GAsyncReadyCallback,
537        user_data: gpointer,
538    );
539    pub fn secret_collection_create_finish(
540        result: *mut gio::GAsyncResult,
541        error: *mut *mut glib::GError,
542    ) -> *mut SecretCollection;
543    pub fn secret_collection_create_sync(
544        service: *mut SecretService,
545        label: *const c_char,
546        alias: *const c_char,
547        flags: SecretCollectionCreateFlags,
548        cancellable: *mut gio::GCancellable,
549        error: *mut *mut glib::GError,
550    ) -> *mut SecretCollection;
551    pub fn secret_collection_for_alias(
552        service: *mut SecretService,
553        alias: *const c_char,
554        flags: SecretCollectionFlags,
555        cancellable: *mut gio::GCancellable,
556        callback: gio::GAsyncReadyCallback,
557        user_data: gpointer,
558    );
559    pub fn secret_collection_for_alias_finish(
560        result: *mut gio::GAsyncResult,
561        error: *mut *mut glib::GError,
562    ) -> *mut SecretCollection;
563    pub fn secret_collection_for_alias_sync(
564        service: *mut SecretService,
565        alias: *const c_char,
566        flags: SecretCollectionFlags,
567        cancellable: *mut gio::GCancellable,
568        error: *mut *mut glib::GError,
569    ) -> *mut SecretCollection;
570    pub fn secret_collection_new_for_dbus_path(
571        service: *mut SecretService,
572        collection_path: *const c_char,
573        flags: SecretCollectionFlags,
574        cancellable: *mut gio::GCancellable,
575        callback: gio::GAsyncReadyCallback,
576        user_data: gpointer,
577    );
578    pub fn secret_collection_delete(
579        self_: *mut SecretCollection,
580        cancellable: *mut gio::GCancellable,
581        callback: gio::GAsyncReadyCallback,
582        user_data: gpointer,
583    );
584    pub fn secret_collection_delete_finish(
585        self_: *mut SecretCollection,
586        result: *mut gio::GAsyncResult,
587        error: *mut *mut glib::GError,
588    ) -> gboolean;
589    pub fn secret_collection_delete_sync(
590        self_: *mut SecretCollection,
591        cancellable: *mut gio::GCancellable,
592        error: *mut *mut glib::GError,
593    ) -> gboolean;
594    pub fn secret_collection_get_created(self_: *mut SecretCollection) -> u64;
595    pub fn secret_collection_get_flags(self_: *mut SecretCollection) -> SecretCollectionFlags;
596    pub fn secret_collection_get_items(self_: *mut SecretCollection) -> *mut glib::GList;
597    pub fn secret_collection_get_label(self_: *mut SecretCollection) -> *mut c_char;
598    pub fn secret_collection_get_locked(self_: *mut SecretCollection) -> gboolean;
599    pub fn secret_collection_get_modified(self_: *mut SecretCollection) -> u64;
600    pub fn secret_collection_get_service(self_: *mut SecretCollection) -> *mut SecretService;
601    pub fn secret_collection_load_items(
602        self_: *mut SecretCollection,
603        cancellable: *mut gio::GCancellable,
604        callback: gio::GAsyncReadyCallback,
605        user_data: gpointer,
606    );
607    pub fn secret_collection_load_items_finish(
608        self_: *mut SecretCollection,
609        result: *mut gio::GAsyncResult,
610        error: *mut *mut glib::GError,
611    ) -> gboolean;
612    pub fn secret_collection_load_items_sync(
613        self_: *mut SecretCollection,
614        cancellable: *mut gio::GCancellable,
615        error: *mut *mut glib::GError,
616    ) -> gboolean;
617    pub fn secret_collection_refresh(self_: *mut SecretCollection);
618    pub fn secret_collection_search(
619        self_: *mut SecretCollection,
620        schema: *const SecretSchema,
621        attributes: *mut glib::GHashTable,
622        flags: SecretSearchFlags,
623        cancellable: *mut gio::GCancellable,
624        callback: gio::GAsyncReadyCallback,
625        user_data: gpointer,
626    );
627    pub fn secret_collection_search_finish(
628        self_: *mut SecretCollection,
629        result: *mut gio::GAsyncResult,
630        error: *mut *mut glib::GError,
631    ) -> *mut glib::GList;
632    pub fn secret_collection_search_for_dbus_paths(
633        collection: *mut SecretCollection,
634        schema: *const SecretSchema,
635        attributes: *mut glib::GHashTable,
636        cancellable: *mut gio::GCancellable,
637        callback: gio::GAsyncReadyCallback,
638        user_data: gpointer,
639    );
640    pub fn secret_collection_search_for_dbus_paths_finish(
641        collection: *mut SecretCollection,
642        result: *mut gio::GAsyncResult,
643        error: *mut *mut glib::GError,
644    ) -> *mut *mut c_char;
645    pub fn secret_collection_search_for_dbus_paths_sync(
646        collection: *mut SecretCollection,
647        schema: *const SecretSchema,
648        attributes: *mut glib::GHashTable,
649        cancellable: *mut gio::GCancellable,
650        error: *mut *mut glib::GError,
651    ) -> *mut *mut c_char;
652    pub fn secret_collection_search_sync(
653        self_: *mut SecretCollection,
654        schema: *const SecretSchema,
655        attributes: *mut glib::GHashTable,
656        flags: SecretSearchFlags,
657        cancellable: *mut gio::GCancellable,
658        error: *mut *mut glib::GError,
659    ) -> *mut glib::GList;
660    pub fn secret_collection_set_label(
661        self_: *mut SecretCollection,
662        label: *const c_char,
663        cancellable: *mut gio::GCancellable,
664        callback: gio::GAsyncReadyCallback,
665        user_data: gpointer,
666    );
667    pub fn secret_collection_set_label_finish(
668        self_: *mut SecretCollection,
669        result: *mut gio::GAsyncResult,
670        error: *mut *mut glib::GError,
671    ) -> gboolean;
672    pub fn secret_collection_set_label_sync(
673        self_: *mut SecretCollection,
674        label: *const c_char,
675        cancellable: *mut gio::GCancellable,
676        error: *mut *mut glib::GError,
677    ) -> gboolean;
678
679    //=========================================================================
680    // SecretItem
681    //=========================================================================
682    pub fn secret_item_get_type() -> GType;
683    pub fn secret_item_new_for_dbus_path_finish(
684        result: *mut gio::GAsyncResult,
685        error: *mut *mut glib::GError,
686    ) -> *mut SecretItem;
687    pub fn secret_item_new_for_dbus_path_sync(
688        service: *mut SecretService,
689        item_path: *const c_char,
690        flags: SecretItemFlags,
691        cancellable: *mut gio::GCancellable,
692        error: *mut *mut glib::GError,
693    ) -> *mut SecretItem;
694    pub fn secret_item_create(
695        collection: *mut SecretCollection,
696        schema: *const SecretSchema,
697        attributes: *mut glib::GHashTable,
698        label: *const c_char,
699        value: *mut SecretValue,
700        flags: SecretItemCreateFlags,
701        cancellable: *mut gio::GCancellable,
702        callback: gio::GAsyncReadyCallback,
703        user_data: gpointer,
704    );
705    pub fn secret_item_create_finish(
706        result: *mut gio::GAsyncResult,
707        error: *mut *mut glib::GError,
708    ) -> *mut SecretItem;
709    pub fn secret_item_create_sync(
710        collection: *mut SecretCollection,
711        schema: *const SecretSchema,
712        attributes: *mut glib::GHashTable,
713        label: *const c_char,
714        value: *mut SecretValue,
715        flags: SecretItemCreateFlags,
716        cancellable: *mut gio::GCancellable,
717        error: *mut *mut glib::GError,
718    ) -> *mut SecretItem;
719    pub fn secret_item_load_secrets(
720        items: *mut glib::GList,
721        cancellable: *mut gio::GCancellable,
722        callback: gio::GAsyncReadyCallback,
723        user_data: gpointer,
724    );
725    pub fn secret_item_load_secrets_finish(
726        result: *mut gio::GAsyncResult,
727        error: *mut *mut glib::GError,
728    ) -> gboolean;
729    pub fn secret_item_load_secrets_sync(
730        items: *mut glib::GList,
731        cancellable: *mut gio::GCancellable,
732        error: *mut *mut glib::GError,
733    ) -> gboolean;
734    pub fn secret_item_new_for_dbus_path(
735        service: *mut SecretService,
736        item_path: *const c_char,
737        flags: SecretItemFlags,
738        cancellable: *mut gio::GCancellable,
739        callback: gio::GAsyncReadyCallback,
740        user_data: gpointer,
741    );
742    pub fn secret_item_delete(
743        self_: *mut SecretItem,
744        cancellable: *mut gio::GCancellable,
745        callback: gio::GAsyncReadyCallback,
746        user_data: gpointer,
747    );
748    pub fn secret_item_delete_finish(
749        self_: *mut SecretItem,
750        result: *mut gio::GAsyncResult,
751        error: *mut *mut glib::GError,
752    ) -> gboolean;
753    pub fn secret_item_delete_sync(
754        self_: *mut SecretItem,
755        cancellable: *mut gio::GCancellable,
756        error: *mut *mut glib::GError,
757    ) -> gboolean;
758    pub fn secret_item_get_attributes(self_: *mut SecretItem) -> *mut glib::GHashTable;
759    pub fn secret_item_get_created(self_: *mut SecretItem) -> u64;
760    pub fn secret_item_get_flags(self_: *mut SecretItem) -> SecretItemFlags;
761    pub fn secret_item_get_label(self_: *mut SecretItem) -> *mut c_char;
762    pub fn secret_item_get_locked(self_: *mut SecretItem) -> gboolean;
763    pub fn secret_item_get_modified(self_: *mut SecretItem) -> u64;
764    pub fn secret_item_get_schema_name(self_: *mut SecretItem) -> *mut c_char;
765    pub fn secret_item_get_secret(self_: *mut SecretItem) -> *mut SecretValue;
766    pub fn secret_item_get_service(self_: *mut SecretItem) -> *mut SecretService;
767    pub fn secret_item_load_secret(
768        self_: *mut SecretItem,
769        cancellable: *mut gio::GCancellable,
770        callback: gio::GAsyncReadyCallback,
771        user_data: gpointer,
772    );
773    pub fn secret_item_load_secret_finish(
774        self_: *mut SecretItem,
775        result: *mut gio::GAsyncResult,
776        error: *mut *mut glib::GError,
777    ) -> gboolean;
778    pub fn secret_item_load_secret_sync(
779        self_: *mut SecretItem,
780        cancellable: *mut gio::GCancellable,
781        error: *mut *mut glib::GError,
782    ) -> gboolean;
783    pub fn secret_item_refresh(self_: *mut SecretItem);
784    pub fn secret_item_set_attributes(
785        self_: *mut SecretItem,
786        schema: *const SecretSchema,
787        attributes: *mut glib::GHashTable,
788        cancellable: *mut gio::GCancellable,
789        callback: gio::GAsyncReadyCallback,
790        user_data: gpointer,
791    );
792    pub fn secret_item_set_attributes_finish(
793        self_: *mut SecretItem,
794        result: *mut gio::GAsyncResult,
795        error: *mut *mut glib::GError,
796    ) -> gboolean;
797    pub fn secret_item_set_attributes_sync(
798        self_: *mut SecretItem,
799        schema: *const SecretSchema,
800        attributes: *mut glib::GHashTable,
801        cancellable: *mut gio::GCancellable,
802        error: *mut *mut glib::GError,
803    ) -> gboolean;
804    pub fn secret_item_set_label(
805        self_: *mut SecretItem,
806        label: *const c_char,
807        cancellable: *mut gio::GCancellable,
808        callback: gio::GAsyncReadyCallback,
809        user_data: gpointer,
810    );
811    pub fn secret_item_set_label_finish(
812        self_: *mut SecretItem,
813        result: *mut gio::GAsyncResult,
814        error: *mut *mut glib::GError,
815    ) -> gboolean;
816    pub fn secret_item_set_label_sync(
817        self_: *mut SecretItem,
818        label: *const c_char,
819        cancellable: *mut gio::GCancellable,
820        error: *mut *mut glib::GError,
821    ) -> gboolean;
822    pub fn secret_item_set_secret(
823        self_: *mut SecretItem,
824        value: *mut SecretValue,
825        cancellable: *mut gio::GCancellable,
826        callback: gio::GAsyncReadyCallback,
827        user_data: gpointer,
828    );
829    pub fn secret_item_set_secret_finish(
830        self_: *mut SecretItem,
831        result: *mut gio::GAsyncResult,
832        error: *mut *mut glib::GError,
833    ) -> gboolean;
834    pub fn secret_item_set_secret_sync(
835        self_: *mut SecretItem,
836        value: *mut SecretValue,
837        cancellable: *mut gio::GCancellable,
838        error: *mut *mut glib::GError,
839    ) -> gboolean;
840
841    //=========================================================================
842    // SecretPrompt
843    //=========================================================================
844    pub fn secret_prompt_get_type() -> GType;
845    pub fn secret_prompt_perform(
846        self_: *mut SecretPrompt,
847        window_id: *const c_char,
848        return_type: *const glib::GVariantType,
849        cancellable: *mut gio::GCancellable,
850        callback: gio::GAsyncReadyCallback,
851        user_data: gpointer,
852    );
853    pub fn secret_prompt_perform_finish(
854        self_: *mut SecretPrompt,
855        result: *mut gio::GAsyncResult,
856        error: *mut *mut glib::GError,
857    ) -> *mut glib::GVariant;
858    pub fn secret_prompt_perform_sync(
859        self_: *mut SecretPrompt,
860        window_id: *const c_char,
861        cancellable: *mut gio::GCancellable,
862        return_type: *const glib::GVariantType,
863        error: *mut *mut glib::GError,
864    ) -> *mut glib::GVariant;
865    pub fn secret_prompt_run(
866        self_: *mut SecretPrompt,
867        window_id: *const c_char,
868        cancellable: *mut gio::GCancellable,
869        return_type: *const glib::GVariantType,
870        error: *mut *mut glib::GError,
871    ) -> *mut glib::GVariant;
872
873    //=========================================================================
874    // SecretService
875    //=========================================================================
876    pub fn secret_service_get_type() -> GType;
877    pub fn secret_service_disconnect();
878    pub fn secret_service_get(
879        flags: SecretServiceFlags,
880        cancellable: *mut gio::GCancellable,
881        callback: gio::GAsyncReadyCallback,
882        user_data: gpointer,
883    );
884    pub fn secret_service_get_finish(
885        result: *mut gio::GAsyncResult,
886        error: *mut *mut glib::GError,
887    ) -> *mut SecretService;
888    pub fn secret_service_get_sync(
889        flags: SecretServiceFlags,
890        cancellable: *mut gio::GCancellable,
891        error: *mut *mut glib::GError,
892    ) -> *mut SecretService;
893    pub fn secret_service_open(
894        service_gtype: GType,
895        service_bus_name: *const c_char,
896        flags: SecretServiceFlags,
897        cancellable: *mut gio::GCancellable,
898        callback: gio::GAsyncReadyCallback,
899        user_data: gpointer,
900    );
901    pub fn secret_service_open_finish(
902        result: *mut gio::GAsyncResult,
903        error: *mut *mut glib::GError,
904    ) -> *mut SecretService;
905    pub fn secret_service_open_sync(
906        service_gtype: GType,
907        service_bus_name: *const c_char,
908        flags: SecretServiceFlags,
909        cancellable: *mut gio::GCancellable,
910        error: *mut *mut glib::GError,
911    ) -> *mut SecretService;
912    pub fn secret_service_clear(
913        service: *mut SecretService,
914        schema: *const SecretSchema,
915        attributes: *mut glib::GHashTable,
916        cancellable: *mut gio::GCancellable,
917        callback: gio::GAsyncReadyCallback,
918        user_data: gpointer,
919    );
920    pub fn secret_service_clear_finish(
921        service: *mut SecretService,
922        result: *mut gio::GAsyncResult,
923        error: *mut *mut glib::GError,
924    ) -> gboolean;
925    pub fn secret_service_clear_sync(
926        service: *mut SecretService,
927        schema: *const SecretSchema,
928        attributes: *mut glib::GHashTable,
929        cancellable: *mut gio::GCancellable,
930        error: *mut *mut glib::GError,
931    ) -> gboolean;
932    pub fn secret_service_create_collection_dbus_path(
933        self_: *mut SecretService,
934        properties: *mut glib::GHashTable,
935        alias: *const c_char,
936        flags: SecretCollectionCreateFlags,
937        cancellable: *mut gio::GCancellable,
938        callback: gio::GAsyncReadyCallback,
939        user_data: gpointer,
940    );
941    pub fn secret_service_create_collection_dbus_path_finish(
942        self_: *mut SecretService,
943        result: *mut gio::GAsyncResult,
944        error: *mut *mut glib::GError,
945    ) -> *mut c_char;
946    pub fn secret_service_create_collection_dbus_path_sync(
947        self_: *mut SecretService,
948        properties: *mut glib::GHashTable,
949        alias: *const c_char,
950        flags: SecretCollectionCreateFlags,
951        cancellable: *mut gio::GCancellable,
952        error: *mut *mut glib::GError,
953    ) -> *mut c_char;
954    pub fn secret_service_create_item_dbus_path(
955        self_: *mut SecretService,
956        collection_path: *const c_char,
957        properties: *mut glib::GHashTable,
958        value: *mut SecretValue,
959        flags: SecretItemCreateFlags,
960        cancellable: *mut gio::GCancellable,
961        callback: gio::GAsyncReadyCallback,
962        user_data: gpointer,
963    );
964    pub fn secret_service_create_item_dbus_path_finish(
965        self_: *mut SecretService,
966        result: *mut gio::GAsyncResult,
967        error: *mut *mut glib::GError,
968    ) -> *mut c_char;
969    pub fn secret_service_create_item_dbus_path_sync(
970        self_: *mut SecretService,
971        collection_path: *const c_char,
972        properties: *mut glib::GHashTable,
973        value: *mut SecretValue,
974        flags: SecretItemCreateFlags,
975        cancellable: *mut gio::GCancellable,
976        error: *mut *mut glib::GError,
977    ) -> *mut c_char;
978    pub fn secret_service_decode_dbus_secret(
979        service: *mut SecretService,
980        value: *mut glib::GVariant,
981    ) -> *mut SecretValue;
982    pub fn secret_service_delete_item_dbus_path(
983        self_: *mut SecretService,
984        item_path: *const c_char,
985        cancellable: *mut gio::GCancellable,
986        callback: gio::GAsyncReadyCallback,
987        user_data: gpointer,
988    );
989    pub fn secret_service_delete_item_dbus_path_finish(
990        self_: *mut SecretService,
991        result: *mut gio::GAsyncResult,
992        error: *mut *mut glib::GError,
993    ) -> gboolean;
994    pub fn secret_service_delete_item_dbus_path_sync(
995        self_: *mut SecretService,
996        item_path: *const c_char,
997        cancellable: *mut gio::GCancellable,
998        error: *mut *mut glib::GError,
999    ) -> gboolean;
1000    pub fn secret_service_encode_dbus_secret(
1001        service: *mut SecretService,
1002        value: *mut SecretValue,
1003    ) -> *mut glib::GVariant;
1004    pub fn secret_service_ensure_session(
1005        self_: *mut SecretService,
1006        cancellable: *mut gio::GCancellable,
1007        callback: gio::GAsyncReadyCallback,
1008        user_data: gpointer,
1009    );
1010    pub fn secret_service_ensure_session_finish(
1011        self_: *mut SecretService,
1012        result: *mut gio::GAsyncResult,
1013        error: *mut *mut glib::GError,
1014    ) -> gboolean;
1015    pub fn secret_service_ensure_session_sync(
1016        self_: *mut SecretService,
1017        cancellable: *mut gio::GCancellable,
1018        error: *mut *mut glib::GError,
1019    ) -> gboolean;
1020    pub fn secret_service_get_collection_gtype(self_: *mut SecretService) -> GType;
1021    pub fn secret_service_get_collections(self_: *mut SecretService) -> *mut glib::GList;
1022    pub fn secret_service_get_flags(self_: *mut SecretService) -> SecretServiceFlags;
1023    pub fn secret_service_get_item_gtype(self_: *mut SecretService) -> GType;
1024    pub fn secret_service_get_secret_for_dbus_path(
1025        self_: *mut SecretService,
1026        item_path: *const c_char,
1027        cancellable: *mut gio::GCancellable,
1028        callback: gio::GAsyncReadyCallback,
1029        user_data: gpointer,
1030    );
1031    pub fn secret_service_get_secret_for_dbus_path_finish(
1032        self_: *mut SecretService,
1033        result: *mut gio::GAsyncResult,
1034        error: *mut *mut glib::GError,
1035    ) -> *mut SecretValue;
1036    pub fn secret_service_get_secret_for_dbus_path_sync(
1037        self_: *mut SecretService,
1038        item_path: *const c_char,
1039        cancellable: *mut gio::GCancellable,
1040        error: *mut *mut glib::GError,
1041    ) -> *mut SecretValue;
1042    pub fn secret_service_get_secrets_for_dbus_paths(
1043        self_: *mut SecretService,
1044        item_paths: *mut *const c_char,
1045        cancellable: *mut gio::GCancellable,
1046        callback: gio::GAsyncReadyCallback,
1047        user_data: gpointer,
1048    );
1049    pub fn secret_service_get_secrets_for_dbus_paths_finish(
1050        self_: *mut SecretService,
1051        result: *mut gio::GAsyncResult,
1052        error: *mut *mut glib::GError,
1053    ) -> *mut glib::GHashTable;
1054    pub fn secret_service_get_secrets_for_dbus_paths_sync(
1055        self_: *mut SecretService,
1056        item_paths: *mut *const c_char,
1057        cancellable: *mut gio::GCancellable,
1058        error: *mut *mut glib::GError,
1059    ) -> *mut glib::GHashTable;
1060    pub fn secret_service_get_session_algorithms(self_: *mut SecretService) -> *const c_char;
1061    pub fn secret_service_get_session_dbus_path(self_: *mut SecretService) -> *const c_char;
1062    pub fn secret_service_load_collections(
1063        self_: *mut SecretService,
1064        cancellable: *mut gio::GCancellable,
1065        callback: gio::GAsyncReadyCallback,
1066        user_data: gpointer,
1067    );
1068    pub fn secret_service_load_collections_finish(
1069        self_: *mut SecretService,
1070        result: *mut gio::GAsyncResult,
1071        error: *mut *mut glib::GError,
1072    ) -> gboolean;
1073    pub fn secret_service_load_collections_sync(
1074        self_: *mut SecretService,
1075        cancellable: *mut gio::GCancellable,
1076        error: *mut *mut glib::GError,
1077    ) -> gboolean;
1078    pub fn secret_service_lock(
1079        service: *mut SecretService,
1080        objects: *mut glib::GList,
1081        cancellable: *mut gio::GCancellable,
1082        callback: gio::GAsyncReadyCallback,
1083        user_data: gpointer,
1084    );
1085    pub fn secret_service_lock_dbus_paths(
1086        self_: *mut SecretService,
1087        paths: *mut *const c_char,
1088        cancellable: *mut gio::GCancellable,
1089        callback: gio::GAsyncReadyCallback,
1090        user_data: gpointer,
1091    );
1092    pub fn secret_service_lock_dbus_paths_finish(
1093        self_: *mut SecretService,
1094        result: *mut gio::GAsyncResult,
1095        locked: *mut *mut *mut c_char,
1096        error: *mut *mut glib::GError,
1097    ) -> c_int;
1098    pub fn secret_service_lock_dbus_paths_sync(
1099        self_: *mut SecretService,
1100        paths: *mut *const c_char,
1101        cancellable: *mut gio::GCancellable,
1102        locked: *mut *mut *mut c_char,
1103        error: *mut *mut glib::GError,
1104    ) -> c_int;
1105    pub fn secret_service_lock_finish(
1106        service: *mut SecretService,
1107        result: *mut gio::GAsyncResult,
1108        locked: *mut *mut glib::GList,
1109        error: *mut *mut glib::GError,
1110    ) -> c_int;
1111    pub fn secret_service_lock_sync(
1112        service: *mut SecretService,
1113        objects: *mut glib::GList,
1114        cancellable: *mut gio::GCancellable,
1115        locked: *mut *mut glib::GList,
1116        error: *mut *mut glib::GError,
1117    ) -> c_int;
1118    pub fn secret_service_lookup(
1119        service: *mut SecretService,
1120        schema: *const SecretSchema,
1121        attributes: *mut glib::GHashTable,
1122        cancellable: *mut gio::GCancellable,
1123        callback: gio::GAsyncReadyCallback,
1124        user_data: gpointer,
1125    );
1126    pub fn secret_service_lookup_finish(
1127        service: *mut SecretService,
1128        result: *mut gio::GAsyncResult,
1129        error: *mut *mut glib::GError,
1130    ) -> *mut SecretValue;
1131    pub fn secret_service_lookup_sync(
1132        service: *mut SecretService,
1133        schema: *const SecretSchema,
1134        attributes: *mut glib::GHashTable,
1135        cancellable: *mut gio::GCancellable,
1136        error: *mut *mut glib::GError,
1137    ) -> *mut SecretValue;
1138    pub fn secret_service_prompt(
1139        self_: *mut SecretService,
1140        prompt: *mut SecretPrompt,
1141        return_type: *const glib::GVariantType,
1142        cancellable: *mut gio::GCancellable,
1143        callback: gio::GAsyncReadyCallback,
1144        user_data: gpointer,
1145    );
1146    pub fn secret_service_prompt_at_dbus_path(
1147        self_: *mut SecretService,
1148        prompt_path: *const c_char,
1149        return_type: *const glib::GVariantType,
1150        cancellable: *mut gio::GCancellable,
1151        callback: gio::GAsyncReadyCallback,
1152        user_data: gpointer,
1153    );
1154    pub fn secret_service_prompt_at_dbus_path_finish(
1155        self_: *mut SecretService,
1156        result: *mut gio::GAsyncResult,
1157        error: *mut *mut glib::GError,
1158    ) -> *mut glib::GVariant;
1159    pub fn secret_service_prompt_at_dbus_path_sync(
1160        self_: *mut SecretService,
1161        prompt_path: *const c_char,
1162        cancellable: *mut gio::GCancellable,
1163        return_type: *const glib::GVariantType,
1164        error: *mut *mut glib::GError,
1165    ) -> *mut glib::GVariant;
1166    pub fn secret_service_prompt_finish(
1167        self_: *mut SecretService,
1168        result: *mut gio::GAsyncResult,
1169        error: *mut *mut glib::GError,
1170    ) -> *mut glib::GVariant;
1171    pub fn secret_service_prompt_sync(
1172        self_: *mut SecretService,
1173        prompt: *mut SecretPrompt,
1174        cancellable: *mut gio::GCancellable,
1175        return_type: *const glib::GVariantType,
1176        error: *mut *mut glib::GError,
1177    ) -> *mut glib::GVariant;
1178    pub fn secret_service_read_alias_dbus_path(
1179        self_: *mut SecretService,
1180        alias: *const c_char,
1181        cancellable: *mut gio::GCancellable,
1182        callback: gio::GAsyncReadyCallback,
1183        user_data: gpointer,
1184    );
1185    pub fn secret_service_read_alias_dbus_path_finish(
1186        self_: *mut SecretService,
1187        result: *mut gio::GAsyncResult,
1188        error: *mut *mut glib::GError,
1189    ) -> *mut c_char;
1190    pub fn secret_service_read_alias_dbus_path_sync(
1191        self_: *mut SecretService,
1192        alias: *const c_char,
1193        cancellable: *mut gio::GCancellable,
1194        error: *mut *mut glib::GError,
1195    ) -> *mut c_char;
1196    pub fn secret_service_search(
1197        service: *mut SecretService,
1198        schema: *const SecretSchema,
1199        attributes: *mut glib::GHashTable,
1200        flags: SecretSearchFlags,
1201        cancellable: *mut gio::GCancellable,
1202        callback: gio::GAsyncReadyCallback,
1203        user_data: gpointer,
1204    );
1205    pub fn secret_service_search_finish(
1206        service: *mut SecretService,
1207        result: *mut gio::GAsyncResult,
1208        error: *mut *mut glib::GError,
1209    ) -> *mut glib::GList;
1210    pub fn secret_service_search_for_dbus_paths(
1211        self_: *mut SecretService,
1212        schema: *const SecretSchema,
1213        attributes: *mut glib::GHashTable,
1214        cancellable: *mut gio::GCancellable,
1215        callback: gio::GAsyncReadyCallback,
1216        user_data: gpointer,
1217    );
1218    pub fn secret_service_search_for_dbus_paths_finish(
1219        self_: *mut SecretService,
1220        result: *mut gio::GAsyncResult,
1221        unlocked: *mut *mut *mut c_char,
1222        locked: *mut *mut *mut c_char,
1223        error: *mut *mut glib::GError,
1224    ) -> gboolean;
1225    pub fn secret_service_search_for_dbus_paths_sync(
1226        self_: *mut SecretService,
1227        schema: *const SecretSchema,
1228        attributes: *mut glib::GHashTable,
1229        cancellable: *mut gio::GCancellable,
1230        unlocked: *mut *mut *mut c_char,
1231        locked: *mut *mut *mut c_char,
1232        error: *mut *mut glib::GError,
1233    ) -> gboolean;
1234    pub fn secret_service_search_sync(
1235        service: *mut SecretService,
1236        schema: *const SecretSchema,
1237        attributes: *mut glib::GHashTable,
1238        flags: SecretSearchFlags,
1239        cancellable: *mut gio::GCancellable,
1240        error: *mut *mut glib::GError,
1241    ) -> *mut glib::GList;
1242    pub fn secret_service_set_alias(
1243        service: *mut SecretService,
1244        alias: *const c_char,
1245        collection: *mut SecretCollection,
1246        cancellable: *mut gio::GCancellable,
1247        callback: gio::GAsyncReadyCallback,
1248        user_data: gpointer,
1249    );
1250    pub fn secret_service_set_alias_finish(
1251        service: *mut SecretService,
1252        result: *mut gio::GAsyncResult,
1253        error: *mut *mut glib::GError,
1254    ) -> gboolean;
1255    pub fn secret_service_set_alias_sync(
1256        service: *mut SecretService,
1257        alias: *const c_char,
1258        collection: *mut SecretCollection,
1259        cancellable: *mut gio::GCancellable,
1260        error: *mut *mut glib::GError,
1261    ) -> gboolean;
1262    pub fn secret_service_set_alias_to_dbus_path(
1263        self_: *mut SecretService,
1264        alias: *const c_char,
1265        collection_path: *const c_char,
1266        cancellable: *mut gio::GCancellable,
1267        callback: gio::GAsyncReadyCallback,
1268        user_data: gpointer,
1269    );
1270    pub fn secret_service_set_alias_to_dbus_path_finish(
1271        self_: *mut SecretService,
1272        result: *mut gio::GAsyncResult,
1273        error: *mut *mut glib::GError,
1274    ) -> gboolean;
1275    pub fn secret_service_set_alias_to_dbus_path_sync(
1276        self_: *mut SecretService,
1277        alias: *const c_char,
1278        collection_path: *const c_char,
1279        cancellable: *mut gio::GCancellable,
1280        error: *mut *mut glib::GError,
1281    ) -> gboolean;
1282    pub fn secret_service_store(
1283        service: *mut SecretService,
1284        schema: *const SecretSchema,
1285        attributes: *mut glib::GHashTable,
1286        collection: *const c_char,
1287        label: *const c_char,
1288        value: *mut SecretValue,
1289        cancellable: *mut gio::GCancellable,
1290        callback: gio::GAsyncReadyCallback,
1291        user_data: gpointer,
1292    );
1293    pub fn secret_service_store_finish(
1294        service: *mut SecretService,
1295        result: *mut gio::GAsyncResult,
1296        error: *mut *mut glib::GError,
1297    ) -> gboolean;
1298    pub fn secret_service_store_sync(
1299        service: *mut SecretService,
1300        schema: *const SecretSchema,
1301        attributes: *mut glib::GHashTable,
1302        collection: *const c_char,
1303        label: *const c_char,
1304        value: *mut SecretValue,
1305        cancellable: *mut gio::GCancellable,
1306        error: *mut *mut glib::GError,
1307    ) -> gboolean;
1308    pub fn secret_service_unlock(
1309        service: *mut SecretService,
1310        objects: *mut glib::GList,
1311        cancellable: *mut gio::GCancellable,
1312        callback: gio::GAsyncReadyCallback,
1313        user_data: gpointer,
1314    );
1315    pub fn secret_service_unlock_dbus_paths(
1316        self_: *mut SecretService,
1317        paths: *mut *const c_char,
1318        cancellable: *mut gio::GCancellable,
1319        callback: gio::GAsyncReadyCallback,
1320        user_data: gpointer,
1321    );
1322    pub fn secret_service_unlock_dbus_paths_finish(
1323        self_: *mut SecretService,
1324        result: *mut gio::GAsyncResult,
1325        unlocked: *mut *mut *mut c_char,
1326        error: *mut *mut glib::GError,
1327    ) -> c_int;
1328    pub fn secret_service_unlock_dbus_paths_sync(
1329        self_: *mut SecretService,
1330        paths: *mut *const c_char,
1331        cancellable: *mut gio::GCancellable,
1332        unlocked: *mut *mut *mut c_char,
1333        error: *mut *mut glib::GError,
1334    ) -> c_int;
1335    pub fn secret_service_unlock_finish(
1336        service: *mut SecretService,
1337        result: *mut gio::GAsyncResult,
1338        unlocked: *mut *mut glib::GList,
1339        error: *mut *mut glib::GError,
1340    ) -> c_int;
1341    pub fn secret_service_unlock_sync(
1342        service: *mut SecretService,
1343        objects: *mut glib::GList,
1344        cancellable: *mut gio::GCancellable,
1345        unlocked: *mut *mut glib::GList,
1346        error: *mut *mut glib::GError,
1347    ) -> c_int;
1348
1349    //=========================================================================
1350    // SecretBackend
1351    //=========================================================================
1352    #[cfg(feature = "v0_19")]
1353    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1354    pub fn secret_backend_get_type() -> GType;
1355    //#[cfg(feature = "v0_19")]
1356    //#[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1357    //pub fn secret_backend_get(flags: /*Ignored*/SecretBackendFlags, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
1358    #[cfg(feature = "v0_19")]
1359    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1360    pub fn secret_backend_get_finish(
1361        result: *mut gio::GAsyncResult,
1362        error: *mut *mut glib::GError,
1363    ) -> *mut SecretBackend;
1364
1365    //=========================================================================
1366    // SecretRetrievable
1367    //=========================================================================
1368    #[cfg(feature = "v0_19")]
1369    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1370    pub fn secret_retrievable_get_type() -> GType;
1371    #[cfg(feature = "v0_19")]
1372    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1373    pub fn secret_retrievable_get_attributes(
1374        self_: *mut SecretRetrievable,
1375    ) -> *mut glib::GHashTable;
1376    #[cfg(feature = "v0_19")]
1377    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1378    pub fn secret_retrievable_get_created(self_: *mut SecretRetrievable) -> u64;
1379    #[cfg(feature = "v0_19")]
1380    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1381    pub fn secret_retrievable_get_label(self_: *mut SecretRetrievable) -> *mut c_char;
1382    #[cfg(feature = "v0_19")]
1383    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1384    pub fn secret_retrievable_get_modified(self_: *mut SecretRetrievable) -> u64;
1385    #[cfg(feature = "v0_19")]
1386    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1387    pub fn secret_retrievable_retrieve_secret(
1388        self_: *mut SecretRetrievable,
1389        cancellable: *mut gio::GCancellable,
1390        callback: gio::GAsyncReadyCallback,
1391        user_data: gpointer,
1392    );
1393    #[cfg(feature = "v0_19")]
1394    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1395    pub fn secret_retrievable_retrieve_secret_finish(
1396        self_: *mut SecretRetrievable,
1397        result: *mut gio::GAsyncResult,
1398        error: *mut *mut glib::GError,
1399    ) -> *mut SecretValue;
1400    #[cfg(feature = "v0_19")]
1401    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1402    pub fn secret_retrievable_retrieve_secret_sync(
1403        self_: *mut SecretRetrievable,
1404        cancellable: *mut gio::GCancellable,
1405        error: *mut *mut glib::GError,
1406    ) -> *mut SecretValue;
1407
1408    //=========================================================================
1409    // Other functions
1410    //=========================================================================
1411    pub fn secret_attributes_build(schema: *const SecretSchema, ...) -> *mut glib::GHashTable;
1412    //pub fn secret_attributes_buildv(schema: *const SecretSchema, va: /*Unimplemented*/va_list) -> *mut glib::GHashTable;
1413    #[cfg(feature = "v0_21_2")]
1414    #[cfg_attr(docsrs, doc(cfg(feature = "v0_21_2")))]
1415    pub fn secret_attributes_validate(
1416        schema: *const SecretSchema,
1417        attributes: *mut glib::GHashTable,
1418        error: *mut *mut glib::GError,
1419    ) -> gboolean;
1420    #[cfg(feature = "v0_18_6")]
1421    #[cfg_attr(docsrs, doc(cfg(feature = "v0_18_6")))]
1422    pub fn secret_get_schema(type_: SecretSchemaType) -> *const SecretSchema;
1423    pub fn secret_password_clear(
1424        schema: *const SecretSchema,
1425        cancellable: *mut gio::GCancellable,
1426        callback: gio::GAsyncReadyCallback,
1427        user_data: gpointer,
1428        ...
1429    );
1430    pub fn secret_password_clear_finish(
1431        result: *mut gio::GAsyncResult,
1432        error: *mut *mut glib::GError,
1433    ) -> gboolean;
1434    pub fn secret_password_clear_sync(
1435        schema: *const SecretSchema,
1436        cancellable: *mut gio::GCancellable,
1437        error: *mut *mut glib::GError,
1438        ...
1439    ) -> gboolean;
1440    pub fn secret_password_clearv(
1441        schema: *const SecretSchema,
1442        attributes: *mut glib::GHashTable,
1443        cancellable: *mut gio::GCancellable,
1444        callback: gio::GAsyncReadyCallback,
1445        user_data: gpointer,
1446    );
1447    pub fn secret_password_clearv_sync(
1448        schema: *const SecretSchema,
1449        attributes: *mut glib::GHashTable,
1450        cancellable: *mut gio::GCancellable,
1451        error: *mut *mut glib::GError,
1452    ) -> gboolean;
1453    pub fn secret_password_free(password: *mut c_char);
1454    pub fn secret_password_lookup(
1455        schema: *const SecretSchema,
1456        cancellable: *mut gio::GCancellable,
1457        callback: gio::GAsyncReadyCallback,
1458        user_data: gpointer,
1459        ...
1460    );
1461    #[cfg(feature = "v0_19")]
1462    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1463    pub fn secret_password_lookup_binary_finish(
1464        result: *mut gio::GAsyncResult,
1465        error: *mut *mut glib::GError,
1466    ) -> *mut SecretValue;
1467    #[cfg(feature = "v0_19")]
1468    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1469    pub fn secret_password_lookup_binary_sync(
1470        schema: *const SecretSchema,
1471        cancellable: *mut gio::GCancellable,
1472        error: *mut *mut glib::GError,
1473        ...
1474    ) -> *mut SecretValue;
1475    pub fn secret_password_lookup_finish(
1476        result: *mut gio::GAsyncResult,
1477        error: *mut *mut glib::GError,
1478    ) -> *mut c_char;
1479    pub fn secret_password_lookup_nonpageable_finish(
1480        result: *mut gio::GAsyncResult,
1481        error: *mut *mut glib::GError,
1482    ) -> *mut c_char;
1483    pub fn secret_password_lookup_nonpageable_sync(
1484        schema: *const SecretSchema,
1485        cancellable: *mut gio::GCancellable,
1486        error: *mut *mut glib::GError,
1487        ...
1488    ) -> *mut c_char;
1489    pub fn secret_password_lookup_sync(
1490        schema: *const SecretSchema,
1491        cancellable: *mut gio::GCancellable,
1492        error: *mut *mut glib::GError,
1493        ...
1494    ) -> *mut c_char;
1495    pub fn secret_password_lookupv(
1496        schema: *const SecretSchema,
1497        attributes: *mut glib::GHashTable,
1498        cancellable: *mut gio::GCancellable,
1499        callback: gio::GAsyncReadyCallback,
1500        user_data: gpointer,
1501    );
1502    #[cfg(feature = "v0_19")]
1503    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1504    pub fn secret_password_lookupv_binary_sync(
1505        schema: *const SecretSchema,
1506        attributes: *mut glib::GHashTable,
1507        cancellable: *mut gio::GCancellable,
1508        error: *mut *mut glib::GError,
1509    ) -> *mut SecretValue;
1510    pub fn secret_password_lookupv_nonpageable_sync(
1511        schema: *const SecretSchema,
1512        attributes: *mut glib::GHashTable,
1513        cancellable: *mut gio::GCancellable,
1514        error: *mut *mut glib::GError,
1515    ) -> *mut c_char;
1516    pub fn secret_password_lookupv_sync(
1517        schema: *const SecretSchema,
1518        attributes: *mut glib::GHashTable,
1519        cancellable: *mut gio::GCancellable,
1520        error: *mut *mut glib::GError,
1521    ) -> *mut c_char;
1522    #[cfg(feature = "v0_19")]
1523    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1524    pub fn secret_password_search(
1525        schema: *const SecretSchema,
1526        flags: SecretSearchFlags,
1527        cancellable: *mut gio::GCancellable,
1528        callback: gio::GAsyncReadyCallback,
1529        user_data: gpointer,
1530        ...
1531    );
1532    #[cfg(feature = "v0_19")]
1533    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1534    pub fn secret_password_search_finish(
1535        result: *mut gio::GAsyncResult,
1536        error: *mut *mut glib::GError,
1537    ) -> *mut glib::GList;
1538    #[cfg(feature = "v0_19")]
1539    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1540    pub fn secret_password_search_sync(
1541        schema: *const SecretSchema,
1542        flags: SecretSearchFlags,
1543        cancellable: *mut gio::GCancellable,
1544        error: *mut *mut glib::GError,
1545        ...
1546    ) -> *mut glib::GList;
1547    #[cfg(feature = "v0_19")]
1548    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1549    pub fn secret_password_searchv(
1550        schema: *const SecretSchema,
1551        attributes: *mut glib::GHashTable,
1552        flags: SecretSearchFlags,
1553        cancellable: *mut gio::GCancellable,
1554        callback: gio::GAsyncReadyCallback,
1555        user_data: gpointer,
1556    );
1557    #[cfg(feature = "v0_19")]
1558    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1559    pub fn secret_password_searchv_sync(
1560        schema: *const SecretSchema,
1561        attributes: *mut glib::GHashTable,
1562        flags: SecretSearchFlags,
1563        cancellable: *mut gio::GCancellable,
1564        error: *mut *mut glib::GError,
1565    ) -> *mut glib::GList;
1566    pub fn secret_password_store(
1567        schema: *const SecretSchema,
1568        collection: *const c_char,
1569        label: *const c_char,
1570        password: *const c_char,
1571        cancellable: *mut gio::GCancellable,
1572        callback: gio::GAsyncReadyCallback,
1573        user_data: gpointer,
1574        ...
1575    );
1576    #[cfg(feature = "v0_19")]
1577    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1578    pub fn secret_password_store_binary(
1579        schema: *const SecretSchema,
1580        collection: *const c_char,
1581        label: *const c_char,
1582        value: *mut SecretValue,
1583        cancellable: *mut gio::GCancellable,
1584        callback: gio::GAsyncReadyCallback,
1585        user_data: gpointer,
1586        ...
1587    );
1588    #[cfg(feature = "v0_19")]
1589    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1590    pub fn secret_password_store_binary_sync(
1591        schema: *const SecretSchema,
1592        collection: *const c_char,
1593        label: *const c_char,
1594        value: *mut SecretValue,
1595        cancellable: *mut gio::GCancellable,
1596        error: *mut *mut glib::GError,
1597        ...
1598    ) -> gboolean;
1599    pub fn secret_password_store_finish(
1600        result: *mut gio::GAsyncResult,
1601        error: *mut *mut glib::GError,
1602    ) -> gboolean;
1603    pub fn secret_password_store_sync(
1604        schema: *const SecretSchema,
1605        collection: *const c_char,
1606        label: *const c_char,
1607        password: *const c_char,
1608        cancellable: *mut gio::GCancellable,
1609        error: *mut *mut glib::GError,
1610        ...
1611    ) -> gboolean;
1612    pub fn secret_password_storev(
1613        schema: *const SecretSchema,
1614        attributes: *mut glib::GHashTable,
1615        collection: *const c_char,
1616        label: *const c_char,
1617        password: *const c_char,
1618        cancellable: *mut gio::GCancellable,
1619        callback: gio::GAsyncReadyCallback,
1620        user_data: gpointer,
1621    );
1622    #[cfg(feature = "v0_19")]
1623    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1624    pub fn secret_password_storev_binary(
1625        schema: *const SecretSchema,
1626        attributes: *mut glib::GHashTable,
1627        collection: *const c_char,
1628        label: *const c_char,
1629        value: *mut SecretValue,
1630        cancellable: *mut gio::GCancellable,
1631        callback: gio::GAsyncReadyCallback,
1632        user_data: gpointer,
1633    );
1634    #[cfg(feature = "v0_19")]
1635    #[cfg_attr(docsrs, doc(cfg(feature = "v0_19")))]
1636    pub fn secret_password_storev_binary_sync(
1637        schema: *const SecretSchema,
1638        attributes: *mut glib::GHashTable,
1639        collection: *const c_char,
1640        label: *const c_char,
1641        value: *mut SecretValue,
1642        cancellable: *mut gio::GCancellable,
1643        error: *mut *mut glib::GError,
1644    ) -> gboolean;
1645    pub fn secret_password_storev_sync(
1646        schema: *const SecretSchema,
1647        attributes: *mut glib::GHashTable,
1648        collection: *const c_char,
1649        label: *const c_char,
1650        password: *const c_char,
1651        cancellable: *mut gio::GCancellable,
1652        error: *mut *mut glib::GError,
1653    ) -> gboolean;
1654    pub fn secret_password_wipe(password: *mut c_char);
1655
1656}