astal_network_sys/
lib.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from ../../girs
3// from ../../gtk-girs
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;
18use nm_rs_sys as nm;
19
20#[cfg(unix)]
21#[allow(unused_imports)]
22use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
23#[allow(unused_imports)]
24use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
25#[allow(unused_imports)]
26use std::ffi::{
27    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
28};
29
30#[allow(unused_imports)]
31use glib::{gboolean, gconstpointer, gpointer, GType};
32
33// Enums
34pub type AstalNetworkConnectivity = c_int;
35pub const ASTAL_NETWORK_CONNECTIVITY_UNKNOWN: AstalNetworkConnectivity = 0;
36pub const ASTAL_NETWORK_CONNECTIVITY_NONE: AstalNetworkConnectivity = 1;
37pub const ASTAL_NETWORK_CONNECTIVITY_PORTAL: AstalNetworkConnectivity = 2;
38pub const ASTAL_NETWORK_CONNECTIVITY_LIMITED: AstalNetworkConnectivity = 3;
39pub const ASTAL_NETWORK_CONNECTIVITY_FULL: AstalNetworkConnectivity = 4;
40
41pub type AstalNetworkDeviceState = c_int;
42pub const ASTAL_NETWORK_DEVICE_STATE_UNKNOWN: AstalNetworkDeviceState = 0;
43pub const ASTAL_NETWORK_DEVICE_STATE_UNMANAGED: AstalNetworkDeviceState = 10;
44pub const ASTAL_NETWORK_DEVICE_STATE_UNAVAILABLE: AstalNetworkDeviceState = 20;
45pub const ASTAL_NETWORK_DEVICE_STATE_DISCONNECTED: AstalNetworkDeviceState = 30;
46pub const ASTAL_NETWORK_DEVICE_STATE_PREPARE: AstalNetworkDeviceState = 40;
47pub const ASTAL_NETWORK_DEVICE_STATE_CONFIG: AstalNetworkDeviceState = 50;
48pub const ASTAL_NETWORK_DEVICE_STATE_NEED_AUTH: AstalNetworkDeviceState = 60;
49pub const ASTAL_NETWORK_DEVICE_STATE_IP_CONFIG: AstalNetworkDeviceState = 70;
50pub const ASTAL_NETWORK_DEVICE_STATE_IP_CHECK: AstalNetworkDeviceState = 80;
51pub const ASTAL_NETWORK_DEVICE_STATE_SECONDARIES: AstalNetworkDeviceState = 90;
52pub const ASTAL_NETWORK_DEVICE_STATE_ACTIVATED: AstalNetworkDeviceState = 100;
53pub const ASTAL_NETWORK_DEVICE_STATE_DEACTIVATING: AstalNetworkDeviceState = 110;
54pub const ASTAL_NETWORK_DEVICE_STATE_FAILED: AstalNetworkDeviceState = 120;
55
56pub type AstalNetworkInternet = c_int;
57pub const ASTAL_NETWORK_INTERNET_CONNECTED: AstalNetworkInternet = 0;
58pub const ASTAL_NETWORK_INTERNET_CONNECTING: AstalNetworkInternet = 1;
59pub const ASTAL_NETWORK_INTERNET_DISCONNECTED: AstalNetworkInternet = 2;
60
61pub type AstalNetworkPrimary = c_int;
62pub const ASTAL_NETWORK_PRIMARY_UNKNOWN: AstalNetworkPrimary = 0;
63pub const ASTAL_NETWORK_PRIMARY_WIRED: AstalNetworkPrimary = 1;
64pub const ASTAL_NETWORK_PRIMARY_WIFI: AstalNetworkPrimary = 2;
65
66pub type AstalNetworkState = c_int;
67pub const ASTAL_NETWORK_STATE_UNKNOWN: AstalNetworkState = 0;
68pub const ASTAL_NETWORK_STATE_ASLEEP: AstalNetworkState = 10;
69pub const ASTAL_NETWORK_STATE_DISCONNECTED: AstalNetworkState = 20;
70pub const ASTAL_NETWORK_STATE_DISCONNECTING: AstalNetworkState = 30;
71pub const ASTAL_NETWORK_STATE_CONNECTING: AstalNetworkState = 40;
72pub const ASTAL_NETWORK_STATE_CONNECTED_LOCAL: AstalNetworkState = 50;
73pub const ASTAL_NETWORK_STATE_CONNECTED_SITE: AstalNetworkState = 60;
74pub const ASTAL_NETWORK_STATE_CONNECTED_GLOBAL: AstalNetworkState = 70;
75
76// Constants
77pub const ASTAL_NETWORK_MAJOR_VERSION: c_int = 0;
78pub const ASTAL_NETWORK_MINOR_VERSION: c_int = 1;
79pub const ASTAL_NETWORK_MICRO_VERSION: c_int = 0;
80pub const ASTAL_NETWORK_VERSION: &[u8] = b"0.1.0\0";
81
82// Records
83#[derive(Copy, Clone)]
84#[repr(C)]
85pub struct AstalNetworkAccessPointClass {
86    pub parent_class: gobject::GObjectClass,
87}
88
89impl ::std::fmt::Debug for AstalNetworkAccessPointClass {
90    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
91        f.debug_struct(&format!("AstalNetworkAccessPointClass @ {self:p}"))
92            .finish()
93    }
94}
95
96#[repr(C)]
97#[allow(dead_code)]
98pub struct _AstalNetworkAccessPointPrivate {
99    _data: [u8; 0],
100    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
101}
102
103pub type AstalNetworkAccessPointPrivate = _AstalNetworkAccessPointPrivate;
104
105#[derive(Copy, Clone)]
106#[repr(C)]
107pub struct AstalNetworkNetworkClass {
108    pub parent_class: gobject::GObjectClass,
109}
110
111impl ::std::fmt::Debug for AstalNetworkNetworkClass {
112    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
113        f.debug_struct(&format!("AstalNetworkNetworkClass @ {self:p}"))
114            .finish()
115    }
116}
117
118#[repr(C)]
119#[allow(dead_code)]
120pub struct _AstalNetworkNetworkPrivate {
121    _data: [u8; 0],
122    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
123}
124
125pub type AstalNetworkNetworkPrivate = _AstalNetworkNetworkPrivate;
126
127#[derive(Copy, Clone)]
128#[repr(C)]
129pub struct AstalNetworkWifiClass {
130    pub parent_class: gobject::GObjectClass,
131}
132
133impl ::std::fmt::Debug for AstalNetworkWifiClass {
134    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
135        f.debug_struct(&format!("AstalNetworkWifiClass @ {self:p}"))
136            .finish()
137    }
138}
139
140#[repr(C)]
141#[allow(dead_code)]
142pub struct _AstalNetworkWifiPrivate {
143    _data: [u8; 0],
144    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
145}
146
147pub type AstalNetworkWifiPrivate = _AstalNetworkWifiPrivate;
148
149#[derive(Copy, Clone)]
150#[repr(C)]
151pub struct AstalNetworkWiredClass {
152    pub parent_class: gobject::GObjectClass,
153}
154
155impl ::std::fmt::Debug for AstalNetworkWiredClass {
156    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
157        f.debug_struct(&format!("AstalNetworkWiredClass @ {self:p}"))
158            .finish()
159    }
160}
161
162#[repr(C)]
163#[allow(dead_code)]
164pub struct _AstalNetworkWiredPrivate {
165    _data: [u8; 0],
166    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
167}
168
169pub type AstalNetworkWiredPrivate = _AstalNetworkWiredPrivate;
170
171// Classes
172#[derive(Copy, Clone)]
173#[repr(C)]
174pub struct AstalNetworkAccessPoint {
175    pub parent_instance: gobject::GObject,
176    pub priv_: *mut AstalNetworkAccessPointPrivate,
177    pub ap: *mut nm::NMAccessPoint,
178}
179
180impl ::std::fmt::Debug for AstalNetworkAccessPoint {
181    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
182        f.debug_struct(&format!("AstalNetworkAccessPoint @ {self:p}"))
183            .field("ap", &self.ap)
184            .finish()
185    }
186}
187
188#[derive(Copy, Clone)]
189#[repr(C)]
190pub struct AstalNetworkNetwork {
191    pub parent_instance: gobject::GObject,
192    pub priv_: *mut AstalNetworkNetworkPrivate,
193}
194
195impl ::std::fmt::Debug for AstalNetworkNetwork {
196    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
197        f.debug_struct(&format!("AstalNetworkNetwork @ {self:p}"))
198            .finish()
199    }
200}
201
202#[derive(Copy, Clone)]
203#[repr(C)]
204pub struct AstalNetworkWifi {
205    pub parent_instance: gobject::GObject,
206    pub priv_: *mut AstalNetworkWifiPrivate,
207}
208
209impl ::std::fmt::Debug for AstalNetworkWifi {
210    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
211        f.debug_struct(&format!("AstalNetworkWifi @ {self:p}"))
212            .finish()
213    }
214}
215
216#[derive(Copy, Clone)]
217#[repr(C)]
218pub struct AstalNetworkWired {
219    pub parent_instance: gobject::GObject,
220    pub priv_: *mut AstalNetworkWiredPrivate,
221    pub connection: *mut nm::NMActiveConnection,
222}
223
224impl ::std::fmt::Debug for AstalNetworkWired {
225    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
226        f.debug_struct(&format!("AstalNetworkWired @ {self:p}"))
227            .field("connection", &self.connection)
228            .finish()
229    }
230}
231
232extern "C" {
233
234    //=========================================================================
235    // AstalNetworkConnectivity
236    //=========================================================================
237    pub fn astal_network_connectivity_get_type() -> GType;
238
239    //=========================================================================
240    // AstalNetworkDeviceState
241    //=========================================================================
242    pub fn astal_network_device_state_get_type() -> GType;
243
244    //=========================================================================
245    // AstalNetworkInternet
246    //=========================================================================
247    pub fn astal_network_internet_get_type() -> GType;
248
249    //=========================================================================
250    // AstalNetworkPrimary
251    //=========================================================================
252    pub fn astal_network_primary_get_type() -> GType;
253
254    //=========================================================================
255    // AstalNetworkState
256    //=========================================================================
257    pub fn astal_network_state_get_type() -> GType;
258
259    //=========================================================================
260    // AstalNetworkAccessPoint
261    //=========================================================================
262    pub fn astal_network_access_point_get_type() -> GType;
263    pub fn astal_network_access_point_get_connections(
264        self_: *mut AstalNetworkAccessPoint,
265    ) -> *mut glib::GPtrArray;
266    pub fn astal_network_access_point_get_path(self_: *mut AstalNetworkAccessPoint) -> *mut c_char;
267    pub fn astal_network_access_point_activate(
268        self_: *mut AstalNetworkAccessPoint,
269        password: *const c_char,
270        _callback_: gio::GAsyncReadyCallback,
271        _callback__target: *mut c_void,
272    );
273    pub fn astal_network_access_point_activate_finish(
274        self_: *mut AstalNetworkAccessPoint,
275        _res_: *mut gio::GAsyncResult,
276        error: *mut *mut glib::GError,
277    );
278    pub fn astal_network_access_point_get_bandwidth(self_: *mut AstalNetworkAccessPoint) -> c_uint;
279    pub fn astal_network_access_point_get_bssid(self_: *mut AstalNetworkAccessPoint)
280        -> *mut c_char;
281    pub fn astal_network_access_point_get_frequency(self_: *mut AstalNetworkAccessPoint) -> c_uint;
282    pub fn astal_network_access_point_get_last_seen(self_: *mut AstalNetworkAccessPoint) -> c_int;
283    pub fn astal_network_access_point_get_max_bitrate(
284        self_: *mut AstalNetworkAccessPoint,
285    ) -> c_uint;
286    pub fn astal_network_access_point_get_strength(self_: *mut AstalNetworkAccessPoint) -> u8;
287    pub fn astal_network_access_point_get_icon_name(
288        self_: *mut AstalNetworkAccessPoint,
289    ) -> *const c_char;
290    pub fn astal_network_access_point_get_mode(
291        self_: *mut AstalNetworkAccessPoint,
292    ) -> nm::NM80211Mode;
293    pub fn astal_network_access_point_get_flags(
294        self_: *mut AstalNetworkAccessPoint,
295    ) -> nm::NM80211ApFlags;
296    pub fn astal_network_access_point_get_rsn_flags(
297        self_: *mut AstalNetworkAccessPoint,
298    ) -> nm::NM80211ApSecurityFlags;
299    pub fn astal_network_access_point_get_wpa_flags(
300        self_: *mut AstalNetworkAccessPoint,
301    ) -> nm::NM80211ApSecurityFlags;
302    pub fn astal_network_access_point_get_requires_password(
303        self_: *mut AstalNetworkAccessPoint,
304    ) -> gboolean;
305    pub fn astal_network_access_point_get_ssid(self_: *mut AstalNetworkAccessPoint) -> *mut c_char;
306
307    //=========================================================================
308    // AstalNetworkNetwork
309    //=========================================================================
310    pub fn astal_network_network_get_type() -> GType;
311    pub fn astal_network_network_get_default() -> *mut AstalNetworkNetwork;
312    pub fn astal_network_network_new() -> *mut AstalNetworkNetwork;
313    pub fn astal_network_network_get_client(self_: *mut AstalNetworkNetwork) -> *mut nm::NMClient;
314    pub fn astal_network_network_get_wifi(self_: *mut AstalNetworkNetwork)
315        -> *mut AstalNetworkWifi;
316    pub fn astal_network_network_get_wired(
317        self_: *mut AstalNetworkNetwork,
318    ) -> *mut AstalNetworkWired;
319    pub fn astal_network_network_get_primary(
320        self_: *mut AstalNetworkNetwork,
321    ) -> AstalNetworkPrimary;
322    pub fn astal_network_network_get_connectivity(
323        self_: *mut AstalNetworkNetwork,
324    ) -> AstalNetworkConnectivity;
325    pub fn astal_network_network_get_state(self_: *mut AstalNetworkNetwork) -> AstalNetworkState;
326
327    //=========================================================================
328    // AstalNetworkWifi
329    //=========================================================================
330    pub fn astal_network_wifi_get_type() -> GType;
331    pub fn astal_network_wifi_scan(self_: *mut AstalNetworkWifi);
332    pub fn astal_network_wifi_deactivate_connection(
333        self_: *mut AstalNetworkWifi,
334        _callback_: gio::GAsyncReadyCallback,
335        _callback__target: *mut c_void,
336    );
337    pub fn astal_network_wifi_deactivate_connection_finish(
338        self_: *mut AstalNetworkWifi,
339        _res_: *mut gio::GAsyncResult,
340        error: *mut *mut glib::GError,
341    );
342    pub fn astal_network_wifi_get_device(self_: *mut AstalNetworkWifi) -> *mut nm::NMDeviceWifi;
343    pub fn astal_network_wifi_set_device(
344        self_: *mut AstalNetworkWifi,
345        value: *mut nm::NMDeviceWifi,
346    );
347    pub fn astal_network_wifi_get_active_connection(
348        self_: *mut AstalNetworkWifi,
349    ) -> *mut nm::NMActiveConnection;
350    pub fn astal_network_wifi_get_active_access_point(
351        self_: *mut AstalNetworkWifi,
352    ) -> *mut AstalNetworkAccessPoint;
353    pub fn astal_network_wifi_get_access_points(self_: *mut AstalNetworkWifi) -> *mut glib::GList;
354    pub fn astal_network_wifi_get_enabled(self_: *mut AstalNetworkWifi) -> gboolean;
355    pub fn astal_network_wifi_set_enabled(self_: *mut AstalNetworkWifi, value: gboolean);
356    pub fn astal_network_wifi_get_internet(self_: *mut AstalNetworkWifi) -> AstalNetworkInternet;
357    pub fn astal_network_wifi_get_bandwidth(self_: *mut AstalNetworkWifi) -> c_uint;
358    pub fn astal_network_wifi_get_ssid(self_: *mut AstalNetworkWifi) -> *const c_char;
359    pub fn astal_network_wifi_get_strength(self_: *mut AstalNetworkWifi) -> u8;
360    pub fn astal_network_wifi_get_frequency(self_: *mut AstalNetworkWifi) -> c_uint;
361    pub fn astal_network_wifi_get_state(self_: *mut AstalNetworkWifi) -> AstalNetworkDeviceState;
362    pub fn astal_network_wifi_get_icon_name(self_: *mut AstalNetworkWifi) -> *const c_char;
363    pub fn astal_network_wifi_get_is_hotspot(self_: *mut AstalNetworkWifi) -> gboolean;
364    pub fn astal_network_wifi_get_scanning(self_: *mut AstalNetworkWifi) -> gboolean;
365
366    //=========================================================================
367    // AstalNetworkWired
368    //=========================================================================
369    pub fn astal_network_wired_get_type() -> GType;
370    pub fn astal_network_wired_get_device(
371        self_: *mut AstalNetworkWired,
372    ) -> *mut nm::NMDeviceEthernet;
373    pub fn astal_network_wired_set_device(
374        self_: *mut AstalNetworkWired,
375        value: *mut nm::NMDeviceEthernet,
376    );
377    pub fn astal_network_wired_get_speed(self_: *mut AstalNetworkWired) -> c_uint;
378    pub fn astal_network_wired_get_internet(self_: *mut AstalNetworkWired) -> AstalNetworkInternet;
379    pub fn astal_network_wired_get_state(self_: *mut AstalNetworkWired) -> AstalNetworkDeviceState;
380    pub fn astal_network_wired_get_icon_name(self_: *mut AstalNetworkWired) -> *const c_char;
381
382    //=========================================================================
383    // Other functions
384    //=========================================================================
385    pub fn astal_network_primary_to_string(self_: AstalNetworkPrimary) -> *mut c_char;
386    pub fn astal_network_primary_from_connection_type(type_: *const c_char) -> AstalNetworkPrimary;
387    pub fn astal_network_state_to_string(self_: AstalNetworkState) -> *mut c_char;
388    pub fn astal_network_connectivity_to_string(self_: AstalNetworkConnectivity) -> *mut c_char;
389    pub fn astal_network_device_state_to_string(self_: AstalNetworkDeviceState) -> *mut c_char;
390    pub fn astal_network_internet_from_device(device: *mut nm::NMDevice) -> AstalNetworkInternet;
391    pub fn astal_network_internet_to_string(self_: AstalNetworkInternet) -> *mut c_char;
392    pub fn astal_network_get_default() -> *mut AstalNetworkNetwork;
393
394}