obus

Pure Ocaml implementation of the D-Bus protocol
Library obus.network_manager
Module Nm_device
include OBus_proxy.Private
type t = private OBus_proxy.proxy
val of_proxy : OBus_proxy.proxy -> t
val to_proxy : t -> OBus_proxy.proxy
Common interface
Types
type state = [
| `Unknown(*

The device is in an unknown state.

*)
| `Unmanaged(*

The device is not managed by NetworkManager.

*)
| `Unavailable(*

The device cannot be used (carrier off, rfkill, etc)

*)
| `Disconnected(*

The device is not connected.

*)
| `Prepare(*

The device is preparing to connect.

*)
| `Config(*

The device is being configured.

*)
| `Need_auth(*

The device is awaiting secrets necessary to continue connection.

*)
| `Ip_config(*

The IP settings of the device are being requested and configured.

*)
| `Activated(*

The device is active.

*)
| `Failed(*

The device is in a failure state following an attempt to activate it.

*)
]
type state_reason = [
| `Unknown(*

The reason for the device state change is unknown.

*)
| `None(*

The state change is normal.

*)
| `Now_managed(*

The device is now managed.

*)
| `Now_unmanaged(*

The device is no longer managed.

*)
| `Config_failed(*

The device could not be readied for configuration.

*)
| `Config_unavailable(*

IP configuration could not be reserved (no available address, timeout, etc).

*)
| `Config_expired(*

The IP configuration is no longer valid.

*)
| `No_secrets(*

Secrets were required, but not provided.

*)
| `Supplicant_disconnect(*

The 802.1X supplicant disconnected from the access point or authentication server.

*)
| `Supplicant_config_failed(*

Configuration of the 802.1X supplicant failed.

*)
| `Supplicant_failed(*

The 802.1X supplicant quit or failed unexpectedly.

*)
| `Supplicant_timeout(*

The 802.1X supplicant took too long to authenticate.

*)
| `Ppp_start_failed(*

The PPP service failed to start within the allowed time.

*)
| `Ppp_disconnect(*

The PPP service disconnected unexpectedly.

*)
| `Ppp_failed(*

The PPP service quit or failed unexpectedly.

*)
| `Dhcp_start_failed(*

The DHCP service failed to start within the allowed time.

*)
| `Dhcp_error(*

The DHCP service reported an unexpected error.

*)
| `Dhcp_failed(*

The DHCP service quit or failed unexpectedly.

*)
| `Shared_start_failed(*

The shared connection service failed to start.

*)
| `Shared_failed(*

The shared connection service quit or failed unexpectedly.

*)
| `Autoip_start_failed(*

The AutoIP service failed to start.

*)
| `Autoip_error(*

The AutoIP service reported an unexpected error.

*)
| `Autoip_failed(*

The AutoIP service quit or failed unexpectedly.

*)
| `Modem_busy(*

Dialing failed because the line was busy.

*)
| `Modem_no_dial_tone(*

Dialing failed because there was no dial tone.

*)
| `Modem_no_carrier(*

Dialing failed because there was carrier.

*)
| `Modem_dial_timeout(*

Dialing timed out.

*)
| `Modem_dial_failed(*

Dialing failed.

*)
| `Modem_init_failed(*

Modem initialization failed.

*)
| `Gsm_apn_failed(*

Failed to select the specified GSM APN.

*)
| `Gsm_registration_not_searching(*

Not searching for networks.

*)
| `Gsm_registration_denied(*

Network registration was denied.

*)
| `Gsm_registration_timeout(*

Network registration timed out.

*)
| `Gsm_registration_failed(*

Failed to register with the requested GSM network.

*)
| `Gsm_pin_check_failed(*

PIN check failed.

*)
| `Firmware_missing(*

Necessary firmware for the device may be missing.

*)
| `Removed(*

The device was removed.

*)
| `Sleeping(*

NetworkManager went to sleep.

*)
| `Connection_removed(*

The device's active connection was removed or disappeared.

*)
| `User_requested(*

A user or client requested the disconnection.

*)
| `Carrier(*

The device's carrier/link changed.

*)
| `Connection_assumed(*

The device's existing connection was assumed.

*)
| `Supplicant_available(*

The 802.1x supplicant is now available.

*)
]
type typ = [
| `Unknown(*

The device type is unknown.

*)
| `Ethernet(*

The device is wired Ethernet device.

*)
| `Wifi(*

The device is an 802.11 WiFi device.

*)
| `Gsm(*

The device is a GSM-based cellular WAN device.

*)
| `Cdma(*

The device is a CDMA/IS-95-based cellular WAN device.

*)
]
type capability = [
| `Nm_supported(*

The device is supported by NetworkManager.

*)
| `Carrier_detect(*

The device supports carrier detection.

*)
]
Methods
val disconnect : t -> unit Lwt.t
Signals
val state_changed : t -> (state * state * state_reason) OBus_signal.t
Properties
val udi : t -> string OBus_property.r
val interface : t -> string OBus_property.r
val driver : t -> string OBus_property.r
val capabilities : t -> capability list OBus_property.r
val ip4_address : t -> int32 OBus_property.r
val state : t -> state OBus_property.r
val ip4_config : t -> Nm_ip4_config.t OBus_property.r
val dhcp4_config : t -> Nm_dhcp4_config.t OBus_property.r
val ip6_config : t -> Nm_ip6_config.t OBus_property.r
val managed : t -> bool OBus_property.r
val device_type : t -> typ OBus_property.r
val properties : t -> OBus_property.group
Specific device interfaces
module Bluetooth : sig ... end
module Cdma : sig ... end
module Gsm : sig ... end
module Olpc_mesh : sig ... end
module Serial : sig ... end
module Wired : sig ... end
module Wireless : sig ... end