gio/auto/
unix_credentials_message.rs1use crate::{ffi, Credentials, SocketControlMessage};
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9 #[doc(alias = "GUnixCredentialsMessage")]
10 pub struct UnixCredentialsMessage(Object<ffi::GUnixCredentialsMessage, ffi::GUnixCredentialsMessageClass>) @extends SocketControlMessage;
11
12 match fn {
13 type_ => || ffi::g_unix_credentials_message_get_type(),
14 }
15}
16
17impl UnixCredentialsMessage {
18 pub const NONE: Option<&'static UnixCredentialsMessage> = None;
19
20 #[doc(alias = "g_unix_credentials_message_new")]
21 pub fn new() -> UnixCredentialsMessage {
22 unsafe {
23 SocketControlMessage::from_glib_full(ffi::g_unix_credentials_message_new())
24 .unsafe_cast()
25 }
26 }
27
28 #[doc(alias = "g_unix_credentials_message_new_with_credentials")]
29 #[doc(alias = "new_with_credentials")]
30 pub fn with_credentials(credentials: &Credentials) -> UnixCredentialsMessage {
31 unsafe {
32 SocketControlMessage::from_glib_full(
33 ffi::g_unix_credentials_message_new_with_credentials(credentials.to_glib_none().0),
34 )
35 .unsafe_cast()
36 }
37 }
38
39 #[doc(alias = "g_unix_credentials_message_is_supported")]
40 pub fn is_supported() -> bool {
41 unsafe { from_glib(ffi::g_unix_credentials_message_is_supported()) }
42 }
43}
44
45impl Default for UnixCredentialsMessage {
46 fn default() -> Self {
47 Self::new()
48 }
49}
50
51pub trait UnixCredentialsMessageExt: IsA<UnixCredentialsMessage> + 'static {
52 #[doc(alias = "g_unix_credentials_message_get_credentials")]
53 #[doc(alias = "get_credentials")]
54 fn credentials(&self) -> Credentials {
55 unsafe {
56 from_glib_none(ffi::g_unix_credentials_message_get_credentials(
57 self.as_ref().to_glib_none().0,
58 ))
59 }
60 }
61}
62
63impl<O: IsA<UnixCredentialsMessage>> UnixCredentialsMessageExt for O {}