libnm-glib Reference Manual | ||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Implemented Interfaces | Properties | Signals |
Synopsis
#define NM_CLIENT_VERSION #define NM_CLIENT_STATE #define NM_CLIENT_STARTUP #define NM_CLIENT_MANAGER_RUNNING #define NM_CLIENT_NETWORKING_ENABLED #define NM_CLIENT_WIRELESS_ENABLED #define NM_CLIENT_WIRELESS_HARDWARE_ENABLED #define NM_CLIENT_WWAN_ENABLED #define NM_CLIENT_WWAN_HARDWARE_ENABLED #define NM_CLIENT_WIMAX_ENABLED #define NM_CLIENT_WIMAX_HARDWARE_ENABLED #define NM_CLIENT_ACTIVE_CONNECTIONS #define NM_CLIENT_CONNECTIVITY #define NM_CLIENT_PRIMARY_CONNECTION #define NM_CLIENT_ACTIVATING_CONNECTION #define NM_CLIENT_DEVICES enum NMClientPermission; enum NMClientPermissionResult; enum NMClientError; #define NM_CLIENT_ERROR GQuark nm_client_error_quark (void
); NMClient; NMClientClass; NMClient * nm_client_new (void
); void nm_client_new_async (GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); NMClient * nm_client_new_finish (GAsyncResult *result
,GError **error
); const GPtrArray * nm_client_get_devices (NMClient *client
); NMDevice * nm_client_get_device_by_path (NMClient *client
,const char *object_path
); NMDevice * nm_client_get_device_by_iface (NMClient *client
,const char *iface
); void (*NMClientActivateFn) (NMClient *client
,NMActiveConnection *active_connection
,GError *error
,gpointer user_data
); void nm_client_activate_connection (NMClient *client
,NMConnection *connection
,NMDevice *device
,const char *specific_object
,NMClientActivateFn callback
,gpointer user_data
); void (*NMClientAddActivateFn) (NMClient *client
,NMActiveConnection *connection
,const char *new_connection_path
,GError *error
,gpointer user_data
); void nm_client_add_and_activate_connection (NMClient *client
,NMConnection *partial
,NMDevice *device
,const char *specific_object
,NMClientAddActivateFn callback
,gpointer user_data
); void nm_client_deactivate_connection (NMClient *client
,NMActiveConnection *active
); gboolean nm_client_networking_get_enabled (NMClient *client
); void nm_client_networking_set_enabled (NMClient *client
,gboolean enabled
); gboolean nm_client_wireless_get_enabled (NMClient *client
); void nm_client_wireless_set_enabled (NMClient *client
,gboolean enabled
); gboolean nm_client_wireless_hardware_get_enabled (NMClient *client
); gboolean nm_client_wwan_get_enabled (NMClient *client
); void nm_client_wwan_set_enabled (NMClient *client
,gboolean enabled
); gboolean nm_client_wwan_hardware_get_enabled (NMClient *client
); gboolean nm_client_wimax_get_enabled (NMClient *client
); void nm_client_wimax_set_enabled (NMClient *client
,gboolean enabled
); gboolean nm_client_wimax_hardware_get_enabled (NMClient *client
); const char * nm_client_get_version (NMClient *client
); NMState nm_client_get_state (NMClient *client
); gboolean nm_client_get_startup (NMClient *client
); gboolean nm_client_get_manager_running (NMClient *client
); const GPtrArray * nm_client_get_active_connections (NMClient *client
); void nm_client_sleep (NMClient *client
,gboolean sleep_
); NMClientPermissionResult nm_client_get_permission_result (NMClient *client
,NMClientPermission permission
); gboolean nm_client_get_logging (NMClient *client
,char **level
,char **domains
,GError **error
); gboolean nm_client_set_logging (NMClient *client
,const char *level
,const char *domains
,GError **error
); NMConnectivityState nm_client_get_connectivity (NMClient *client
); NMConnectivityState nm_client_check_connectivity (NMClient *client
,GCancellable *cancellable
,GError **error
); void nm_client_check_connectivity_async (NMClient *client
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); NMConnectivityState nm_client_check_connectivity_finish (NMClient *client
,GAsyncResult *result
,GError **error
); NMActiveConnection * nm_client_get_primary_connection (NMClient *client
); NMActiveConnection * nm_client_get_activating_connection (NMClient *client
);
Properties
"activating-connection" NMActiveConnection* : Read "active-connections" NMObjectArray* : Read "connectivity" guint : Read "devices" NMObjectArray* : Read "manager-running" gboolean : Read "networking-enabled" gboolean : Read / Write "primary-connection" NMActiveConnection* : Read "startup" gboolean : Read "state" guint : Read "version" gchar* : Read "wimax-enabled" gboolean : Read / Write "wimax-hardware-enabled" gboolean : Read "wireless-enabled" gboolean : Read / Write "wireless-hardware-enabled" gboolean : Read "wwan-enabled" gboolean : Read / Write "wwan-hardware-enabled" gboolean : Read
Details
NM_CLIENT_WIRELESS_HARDWARE_ENABLED
#define NM_CLIENT_WIRELESS_HARDWARE_ENABLED "wireless-hardware-enabled"
enum NMClientPermission
typedef enum { NM_CLIENT_PERMISSION_NONE = 0, NM_CLIENT_PERMISSION_ENABLE_DISABLE_NETWORK = 1, NM_CLIENT_PERMISSION_ENABLE_DISABLE_WIFI = 2, NM_CLIENT_PERMISSION_ENABLE_DISABLE_WWAN = 3, NM_CLIENT_PERMISSION_ENABLE_DISABLE_WIMAX = 4, NM_CLIENT_PERMISSION_SLEEP_WAKE = 5, NM_CLIENT_PERMISSION_NETWORK_CONTROL = 6, NM_CLIENT_PERMISSION_WIFI_SHARE_PROTECTED = 7, NM_CLIENT_PERMISSION_WIFI_SHARE_OPEN = 8, NM_CLIENT_PERMISSION_SETTINGS_MODIFY_SYSTEM = 9, NM_CLIENT_PERMISSION_SETTINGS_MODIFY_OWN = 10, NM_CLIENT_PERMISSION_SETTINGS_MODIFY_HOSTNAME = 11, NM_CLIENT_PERMISSION_LAST = NM_CLIENT_PERMISSION_SETTINGS_MODIFY_HOSTNAME } NMClientPermission;
NMClientPermission values indicate various permissions that NetworkManager clients can obtain to perform certain tasks on behalf of the current user.
unknown or no permission | |
controls whether networking can be globally enabled or disabled | |
controls whether Wi-Fi can be globally enabled or disabled | |
controls whether WWAN (3G) can be globally enabled or disabled | |
controls whether WiMAX can be globally enabled or disabled | |
controls whether the client can ask NetworkManager to sleep and wake | |
controls whether networking connections can be started, stopped, and changed | |
controls whether a password protected Wi-Fi hotspot can be created | |
controls whether an open Wi-Fi hotspot can be created | |
controls whether connections that are available to all users can be modified | |
controls whether connections owned by the current user can be modified | |
controls whether the persistent hostname can be changed | |
a reserved boundary value |
enum NMClientPermissionResult
typedef enum { NM_CLIENT_PERMISSION_RESULT_UNKNOWN = 0, NM_CLIENT_PERMISSION_RESULT_YES, NM_CLIENT_PERMISSION_RESULT_AUTH, NM_CLIENT_PERMISSION_RESULT_NO } NMClientPermissionResult;
NMClientPermissionResult values indicate what authorizations and permissions the user requires to obtain a given NMClientPermission
unknown or no authorization | |
the permission is available | |
authorization is necessary before the permission is available | |
permission to perform the operation is denied by system policy |
enum NMClientError
typedef enum { NM_CLIENT_ERROR_UNKNOWN = 0, /*< nick=UnknownError >*/ NM_CLIENT_ERROR_MANAGER_NOT_RUNNING, /*< nick=ManagerNotRunning >*/ } NMClientError;
Describes errors that may result from operations involving a NMClient.
nm_client_error_quark ()
GQuark nm_client_error_quark (void
);
Registers an error quark for NMClient if necessary.
Returns : |
the error quark used for NMClient errors. |
Since 0.9.10
NMClientClass
typedef struct { NMObjectClass parent; /* Signals */ void (*device_added) (NMClient *client, NMDevice *device); void (*device_removed) (NMClient *client, NMDevice *device); void (*permission_changed) (NMClient *client, NMClientPermission permission, NMClientPermissionResult result); /* Padding for future expansion */ void (*_reserved1) (void); void (*_reserved2) (void); void (*_reserved3) (void); void (*_reserved4) (void); void (*_reserved5) (void); void (*_reserved6) (void); } NMClientClass;
nm_client_new ()
NMClient * nm_client_new (void
);
Creates a new NMClient.
Note that this will do blocking D-Bus calls to initialize the
client. You can use nm_client_new_async()
if you want to avoid
that.
NOTE: NMClient provides information about devices and a mechanism to control them. To access and modify network configuration data, use the NMRemoteSettings object.
Returns : |
a new NMClient or NULL on an error |
nm_client_new_async ()
void nm_client_new_async (GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Creates a new NMClient and begins asynchronously initializing it.
callback
will be called when it is done; use
nm_client_new_finish()
to get the result. Note that on an error,
the callback can be invoked with two first parameters as NULL.
NOTE: NMClient provides information about devices and a mechanism to control them. To access and modify network configuration data, use the NMRemoteSettings object.
|
a GCancellable, or NULL
|
|
callback to call when the client is created |
|
data for callback
|
nm_client_new_finish ()
NMClient * nm_client_new_finish (GAsyncResult *result
,GError **error
);
Gets the result of an nm_client_new_async()
call.
|
a GAsyncResult |
|
location for a GError, or NULL
|
Returns : |
a new NMClient, or NULL on error |
nm_client_get_devices ()
const GPtrArray * nm_client_get_devices (NMClient *client
);
Gets all the known network devices. Use nm_device_get_type()
or the
NM_IS_DEVICE_XXXX()
functions to determine what kind of device member of the
returned array is, and then you may use device-specific methods such as
nm_device_ethernet_get_hw_address()
.
nm_client_get_device_by_path ()
NMDevice * nm_client_get_device_by_path (NMClient *client
,const char *object_path
);
nm_client_get_device_by_iface ()
NMDevice * nm_client_get_device_by_iface (NMClient *client
,const char *iface
);
NMClientActivateFn ()
void (*NMClientActivateFn) (NMClient *client
,NMActiveConnection *active_connection
,GError *error
,gpointer user_data
);
nm_client_activate_connection ()
void nm_client_activate_connection (NMClient *client
,NMConnection *connection
,NMDevice *device
,const char *specific_object
,NMClientActivateFn callback
,gpointer user_data
);
Starts a connection to a particular network using the configuration settings
from connection
and the network device device
. Certain connection types
also take a "specific object" which is the object path of a connection-
specific object, like an NMAccessPoint for Wi-Fi connections, or an
NMWimaxNsp for WiMAX connections, to which you wish to connect. If the
specific object is not given, NetworkManager can, in some cases, automatically
determine which network to connect to given the settings in connection
.
If connection
is not given for a device-based activation, NetworkManager
picks the best available connection for the device and activates it.
Note that the callback is invoked when NetworkManager has started activating the new connection, not when it finishes. You can used the returned NMActiveConnection object (in particular, "state") to track the activation to its completion.
|
a NMClient |
|
an NMConnection. [allow-none] |
|
the NMDevice. [allow-none] |
|
the object path of a connection-type-specific
object this activation should use. This parameter is currently ignored for
wired and mobile broadband connections, and the value of NULL should be used
(ie, no specific object). For Wi-Fi or WiMAX connections, pass the object
path of a NMAccessPoint or NMWimaxNsp owned by device , which you can
get using nm_object_get_path() , and which will be used to complete the
details of the newly added connection. [allow-none]
|
|
the function to call when the call is done. [scope async][allow-none] |
|
user data to pass to the callback function. [closure] |
NMClientAddActivateFn ()
void (*NMClientAddActivateFn) (NMClient *client
,NMActiveConnection *connection
,const char *new_connection_path
,GError *error
,gpointer user_data
);
nm_client_add_and_activate_connection ()
void nm_client_add_and_activate_connection (NMClient *client
,NMConnection *partial
,NMDevice *device
,const char *specific_object
,NMClientAddActivateFn callback
,gpointer user_data
);
Adds a new connection using the given details (if any) as a template, automatically filling in missing settings with the capabilities of the given device and specific object. The new connection is then activated. Cannot be used for VPN connections at this time.
Note that the callback is invoked when NetworkManager has started activating the new connection, not when it finishes. You can used the returned NMActiveConnection object (in particular, "state") to track the activation to its completion.
|
a NMClient |
|
an NMConnection to add; the connection may be
partially filled (or even NULL ) and will be completed by NetworkManager
using the given device and specific_object before being added. [allow-none]
|
|
the NMDevice |
|
the object path of a connection-type-specific
object this activation should use. This parameter is currently ignored for
wired and mobile broadband connections, and the value of NULL should be used
(ie, no specific object). For Wi-Fi or WiMAX connections, pass the object
path of a NMAccessPoint or NMWimaxNsp owned by device , which you can
get using nm_object_get_path() , and which will be used to complete the
details of the newly added connection. [allow-none]
|
|
the function to call when the call is done. [scope async][allow-none] |
|
user data to pass to the callback function. [closure] |
nm_client_deactivate_connection ()
void nm_client_deactivate_connection (NMClient *client
,NMActiveConnection *active
);
Deactivates an active NMActiveConnection.
|
a NMClient |
|
the NMActiveConnection to deactivate |
nm_client_networking_get_enabled ()
gboolean nm_client_networking_get_enabled (NMClient *client
);
Whether networking is enabled or disabled.
nm_client_networking_set_enabled ()
void nm_client_networking_set_enabled (NMClient *client
,gboolean enabled
);
Enables or disables networking. When networking is disabled, all controlled interfaces are disconnected and deactivated. When networking is enabled, all controlled interfaces are available for activation.
nm_client_wireless_get_enabled ()
gboolean nm_client_wireless_get_enabled (NMClient *client
);
Determines whether the wireless is enabled.
nm_client_wireless_set_enabled ()
void nm_client_wireless_set_enabled (NMClient *client
,gboolean enabled
);
Enables or disables wireless devices.
nm_client_wireless_hardware_get_enabled ()
gboolean nm_client_wireless_hardware_get_enabled
(NMClient *client
);
Determines whether the wireless hardware is enabled.
nm_client_wwan_get_enabled ()
gboolean nm_client_wwan_get_enabled (NMClient *client
);
Determines whether WWAN is enabled.
nm_client_wwan_set_enabled ()
void nm_client_wwan_set_enabled (NMClient *client
,gboolean enabled
);
Enables or disables WWAN devices.
nm_client_wwan_hardware_get_enabled ()
gboolean nm_client_wwan_hardware_get_enabled (NMClient *client
);
Determines whether the WWAN hardware is enabled.
nm_client_wimax_get_enabled ()
gboolean nm_client_wimax_get_enabled (NMClient *client
);
Determines whether WiMAX is enabled.
nm_client_wimax_set_enabled ()
void nm_client_wimax_set_enabled (NMClient *client
,gboolean enabled
);
Enables or disables WiMAX devices.
nm_client_wimax_hardware_get_enabled ()
gboolean nm_client_wimax_hardware_get_enabled
(NMClient *client
);
Determines whether the WiMAX hardware is enabled.
nm_client_get_version ()
const char * nm_client_get_version (NMClient *client
);
Gets NetworkManager version.
|
a NMClient |
Returns : |
string with the version |
nm_client_get_state ()
NMState nm_client_get_state (NMClient *client
);
Gets the current daemon state.
nm_client_get_startup ()
gboolean nm_client_get_startup (NMClient *client
);
Tests whether the daemon is still in the process of activating connections at startup.
|
a NMClient |
Returns : |
whether the daemon is still starting up |
Since 0.9.10
nm_client_get_manager_running ()
gboolean nm_client_get_manager_running (NMClient *client
);
Determines whether the daemon is running.
nm_client_get_active_connections ()
const GPtrArray * nm_client_get_active_connections (NMClient *client
);
Gets the active connections.
|
a NMClient |
Returns : |
a GPtrArray containing all the active NMActiveConnections. The returned array is owned by the client and should not be modified. [transfer none][element-type NMClient.ActiveConnection] |
nm_client_sleep ()
void nm_client_sleep (NMClient *client
,gboolean sleep_
);
Deprecated; use nm_client_networking_set_enabled()
instead.
nm_client_get_permission_result ()
NMClientPermissionResult nm_client_get_permission_result (NMClient *client
,NMClientPermission permission
);
Requests the result of a specific permission, which indicates whether the client can or cannot perform the action the permission represents
|
a NMClient |
|
the permission for which to return the result, one of NMClientPermission |
Returns : |
the permission's result, one of NMClientPermissionResult |
nm_client_get_logging ()
gboolean nm_client_get_logging (NMClient *client
,char **level
,char **domains
,GError **error
);
Gets NetworkManager current logging level and domains.
|
a NMClient |
|
return location for logging level string. [allow-none] |
|
return location for log domains string. The string is a list of domains separated by ",". [allow-none] |
|
return location for a GError, or NULL . [allow-none]
|
Returns : |
TRUE on success, FALSE otherwise |
Since 0.9.8
nm_client_set_logging ()
gboolean nm_client_set_logging (NMClient *client
,const char *level
,const char *domains
,GError **error
);
Sets NetworkManager logging level and/or domains.
|
a NMClient |
|
logging level to set (NULL or an empty string for no change). [allow-none]
|
|
logging domains to set. The string should be a list of log
domains separated by ",". (NULL or an empty string for no change). [allow-none]
|
|
return location for a GError, or NULL . [allow-none]
|
Returns : |
TRUE on success, FALSE otherwise |
Since 0.9.8
nm_client_get_connectivity ()
NMConnectivityState nm_client_get_connectivity (NMClient *client
);
Gets the current network connectivity state. Contrast
nm_client_check_connectivity()
and
nm_client_check_connectivity_async()
, which re-check the
connectivity state first before returning any information.
|
an NMClient |
Returns : |
the current connectivity state |
Since 0.9.8.6
nm_client_check_connectivity ()
NMConnectivityState nm_client_check_connectivity (NMClient *client
,GCancellable *cancellable
,GError **error
);
Updates the network connectivity state and returns the (new)
current state. Contrast nm_client_get_connectivity()
, which returns
the most recent known state without re-checking.
This is a blocking call; use nm_client_check_connectivity_async()
if you do not want to block.
|
an NMClient |
|
a GCancellable |
|
return location for a GError |
Returns : |
the (new) current connectivity state |
Since 0.9.8.6
nm_client_check_connectivity_async ()
void nm_client_check_connectivity_async (NMClient *client
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously updates the network connectivity state and invokes
callback
when complete. Contrast nm_client_get_connectivity()
,
which (immediately) returns the most recent known state without
re-checking, and nm_client_check_connectivity()
, which blocks.
|
an NMClient |
|
a GCancellable |
|
callback to call with the result |
|
data for callback . |
Since 0.9.8.6
nm_client_check_connectivity_finish ()
NMConnectivityState nm_client_check_connectivity_finish (NMClient *client
,GAsyncResult *result
,GError **error
);
Retrieves the result of an nm_client_check_connectivity_async()
call.
|
an NMClient |
|
the GAsyncResult |
|
return location for a GError |
Returns : |
the (new) current connectivity state |
Since 0.9.8.6
nm_client_get_primary_connection ()
NMActiveConnection * nm_client_get_primary_connection (NMClient *client
);
Gets the NMActiveConnection corresponding to the primary active network device.
In particular, when there is no VPN active, or the VPN does not have the default route, this returns the active connection that has the default route. If there is a VPN active with the default route, then this function returns the active connection that contains the route to the VPN endpoint.
If there is no default route, or the default route is over a
non-NetworkManager-recognized device, this will return NULL
.
|
an NMClient |
Returns : |
the appropriate NMActiveConnection, if any. [transfer none] |
Since 0.9.8.6
nm_client_get_activating_connection ()
NMActiveConnection * nm_client_get_activating_connection
(NMClient *client
);
Gets the NMActiveConnection corresponding to a currently-activating connection that is expected to become the new "primary-connection" upon successful activation.
|
an NMClient |
Returns : |
the appropriate NMActiveConnection, if any. [transfer none] |
Since 0.9.8.6
Property Details
The "activating-connection"
property
"activating-connection" NMActiveConnection* : Read
The NMActiveConnection of the activating connection that is likely to become the new "primary-connection".
Since 0.9.8.6
The "connectivity"
property
"connectivity" guint : Read
The network connectivity state.
Allowed values: <= 4
Default value: 0
Since 0.9.8.6
The "manager-running"
property
"manager-running" gboolean : Read
Whether NetworkManager is running.
Default value: FALSE
The "networking-enabled"
property
"networking-enabled" gboolean : Read / Write
Is networking enabled.
Default value: TRUE
The "primary-connection"
property
"primary-connection" NMActiveConnection* : Read
The NMActiveConnection of the device with the default route;
see nm_client_get_primary_connection()
for more details.
Since 0.9.8.6
The "startup"
property
"startup" gboolean : Read
Whether the daemon is still starting up.
Default value: FALSE
Since 0.9.10
The "state"
property
"state" guint : Read
The current daemon state.
Allowed values: <= 70
Default value: 0
The "wimax-enabled"
property
"wimax-enabled" gboolean : Read / Write
Is WiMAX enabled.
Default value: FALSE
The "wimax-hardware-enabled"
property
"wimax-hardware-enabled" gboolean : Read
Is WiMAX hardware enabled.
Default value: FALSE
The "wireless-enabled"
property
"wireless-enabled" gboolean : Read / Write
Is wireless enabled.
Default value: FALSE
The "wireless-hardware-enabled"
property
"wireless-hardware-enabled" gboolean : Read
Is wireless hardware enabled.
Default value: TRUE
The "wwan-enabled"
property
"wwan-enabled" gboolean : Read / Write
Is WWAN enabled.
Default value: FALSE
The "wwan-hardware-enabled"
property
"wwan-hardware-enabled" gboolean : Read
Is WWAN hardware enabled.
Default value: FALSE
Signal Details
The "device-added"
signal
void user_function (NMClient *client,
GObject *device,
gpointer user_data) : Run First
Notifies that a NMDevice is added.
|
the client that received the signal |
|
the new device. [type NMClient.Device] |
|
user data set when the signal handler was connected. |
The "device-removed"
signal
void user_function (NMClient *client,
GObject *device,
gpointer user_data) : Run First
Notifies that a NMDevice is removed.
|
the client that received the signal |
|
the removed device. [type NMClient.Device] |
|
user data set when the signal handler was connected. |
The "permission-changed"
signal
void user_function (NMClient *client,
guint permission,
guint result,
gpointer user_data) : Run First
Notifies that a permission has changed
|
the client that received the signal |
|
a permission from NMClientPermission |
|
the permission's result, one of NMClientPermissionResult |
|
user data set when the signal handler was connected. |