Blame libnm/nm-device-wimax.c

Packit Service b23acc
// SPDX-License-Identifier: LGPL-2.1+
Packit Service b23acc
/*
Packit Service b23acc
 * Copyright (C) 2011 - 2012 Red Hat, Inc.
Packit Service b23acc
 * Copyright (C) 2009 Novell, Inc.
Packit Service b23acc
 */
Packit Service b23acc
Packit Service b23acc
#include "nm-default.h"
Packit Service b23acc
Packit Service b23acc
#include "nm-device-wimax.h"
Packit Service b23acc
Packit Service b23acc
#include "nm-wimax-nsp.h"
Packit Service b23acc
Packit Service b23acc
/*****************************************************************************/
Packit Service b23acc
Packit Service b23acc
NM_GOBJECT_PROPERTIES_DEFINE_BASE (
Packit Service b23acc
	PROP_HW_ADDRESS,
Packit Service b23acc
	PROP_ACTIVE_NSP,
Packit Service b23acc
	PROP_CENTER_FREQ,
Packit Service b23acc
	PROP_RSSI,
Packit Service b23acc
	PROP_CINR,
Packit Service b23acc
	PROP_TX_POWER,
Packit Service b23acc
	PROP_BSID,
Packit Service b23acc
	PROP_NSPS,
Packit Service b23acc
);
Packit Service b23acc
Packit Service b23acc
enum {
Packit Service b23acc
	NSP_ADDED,
Packit Service b23acc
	NSP_REMOVED,
Packit Service b23acc
Packit Service b23acc
	LAST_SIGNAL
Packit Service b23acc
};
Packit Service b23acc
Packit Service b23acc
static guint signals[LAST_SIGNAL] = { 0 };
Packit Service b23acc
Packit Service b23acc
struct _NMDeviceWimax {
Packit Service b23acc
	NMDevice parent;
Packit Service b23acc
};
Packit Service b23acc
Packit Service b23acc
struct _NMDeviceWimaxClass {
Packit Service b23acc
	NMDeviceClass parent;
Packit Service b23acc
};
Packit Service b23acc
Packit Service b23acc
G_DEFINE_TYPE (NMDeviceWimax, nm_device_wimax, NM_TYPE_DEVICE)
Packit Service b23acc
Packit Service b23acc
#define NM_DEVICE_WIMAX_GET_PRIVATE(self) _NM_GET_PRIVATE(self, NMDeviceWimax, NM_IS_DEVICE_WIMAX, NMObject, NMDevice)
Packit Service b23acc
Packit Service b23acc
/*****************************************************************************/
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_hw_address:
Packit Service b23acc
 * @wimax: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets the hardware (MAC) address of the #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: the hardware address. This is the internal string used by the
Packit Service b23acc
 *          device, and must not be modified.
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
const char *
Packit Service b23acc
nm_device_wimax_get_hw_address (NMDeviceWimax *wimax)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (NULL);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_active_nsp:
Packit Service b23acc
 * @wimax: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets the active #NMWimaxNsp.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: (transfer full): the access point or %NULL if none is active
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
NMWimaxNsp *
Packit Service b23acc
nm_device_wimax_get_active_nsp (NMDeviceWimax *wimax)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (NULL);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_nsps:
Packit Service b23acc
 * @wimax: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets all the scanned NSPs of the #NMDeviceWimax.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: (element-type NMWimaxNsp): a #GPtrArray containing
Packit Service b23acc
 *          all the scanned #NMWimaxNsps.
Packit Service b23acc
 * The returned array is owned by the client and should not be modified.
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
const GPtrArray *
Packit Service b23acc
nm_device_wimax_get_nsps (NMDeviceWimax *wimax)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (NULL);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_nsp_by_path:
Packit Service b23acc
 * @wimax: a #NMDeviceWimax
Packit Service b23acc
 * @path: the object path of the NSP
Packit Service b23acc
 *
Packit Service b23acc
 * Gets a #NMWimaxNsp by path.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: (transfer none): the access point or %NULL if none is found.
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
NMWimaxNsp *
Packit Service b23acc
nm_device_wimax_get_nsp_by_path (NMDeviceWimax *wimax,
Packit Service b23acc
                                 const char *path)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (NULL);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_center_frequency:
Packit Service b23acc
 * @self: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets the center frequency (in KHz) of the radio channel the device is using
Packit Service b23acc
 * to communicate with the network when connected.  Has no meaning when the
Packit Service b23acc
 * device is not connected.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: the center frequency in KHz, or 0
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
guint
Packit Service b23acc
nm_device_wimax_get_center_frequency (NMDeviceWimax *self)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (0);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_rssi:
Packit Service b23acc
 * @self: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets the RSSI of the current radio link in dBm.  This value indicates how
Packit Service b23acc
 * strong the raw received RF signal from the base station is, but does not
Packit Service b23acc
 * indicate the overall quality of the radio link.  Has no meaning when the
Packit Service b23acc
 * device is not connected.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: the RSSI in dBm, or 0
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
int
Packit Service b23acc
nm_device_wimax_get_rssi (NMDeviceWimax *self)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (0);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_cinr:
Packit Service b23acc
 * @self: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets the CINR (Carrier to Interference + Noise Ratio) of the current radio
Packit Service b23acc
 * link in dB.  CINR is a more accurate measure of radio link quality.  Has no
Packit Service b23acc
 * meaning when the device is not connected.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: the CINR in dB, or 0
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
int
Packit Service b23acc
nm_device_wimax_get_cinr (NMDeviceWimax *self)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (0);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_tx_power:
Packit Service b23acc
 * @self: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Average power of the last burst transmitted by the device, in units of
Packit Service b23acc
 * 0.5 dBm.  i.e. a TxPower of -11 represents an actual device TX power of
Packit Service b23acc
 * -5.5 dBm.  Has no meaning when the device is not connected.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: the TX power in dBm, or 0
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
int
Packit Service b23acc
nm_device_wimax_get_tx_power (NMDeviceWimax *self)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (0);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/**
Packit Service b23acc
 * nm_device_wimax_get_bsid:
Packit Service b23acc
 * @self: a #NMDeviceWimax
Packit Service b23acc
 *
Packit Service b23acc
 * Gets the ID of the serving Base Station when the device is connected.
Packit Service b23acc
 *
Packit Service b23acc
 * Returns: the ID of the serving Base Station, or %NULL
Packit Service b23acc
 *
Packit Service b23acc
 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
 **/
Packit Service b23acc
const char *
Packit Service b23acc
nm_device_wimax_get_bsid (NMDeviceWimax *self)
Packit Service b23acc
{
Packit Service b23acc
	g_return_val_if_reached (0);
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
/*****************************************************************************/
Packit Service b23acc
Packit Service b23acc
static void
Packit Service b23acc
get_property (GObject *object,
Packit Service b23acc
              guint prop_id,
Packit Service b23acc
              GValue *value,
Packit Service b23acc
              GParamSpec *pspec)
Packit Service b23acc
{
Packit Service b23acc
	g_return_if_reached ();
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
static void
Packit Service b23acc
nm_device_wimax_init (NMDeviceWimax *device)
Packit Service b23acc
{
Packit Service b23acc
	g_return_if_reached ();
Packit Service b23acc
}
Packit Service b23acc
Packit Service b23acc
static void
Packit Service b23acc
nm_device_wimax_class_init (NMDeviceWimaxClass *wimax_class)
Packit Service b23acc
{
Packit Service b23acc
	GObjectClass *object_class = G_OBJECT_CLASS (wimax_class);
Packit Service b23acc
Packit Service b23acc
	object_class->get_property = get_property;
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:hw-address:
Packit Service b23acc
	 *
Packit Service b23acc
	 * The hardware (MAC) address of the device.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_HW_ADDRESS] =
Packit Service b23acc
	    g_param_spec_string (NM_DEVICE_WIMAX_HW_ADDRESS, "", "",
Packit Service b23acc
	                         NULL,
Packit Service b23acc
	                         G_PARAM_READABLE |
Packit Service b23acc
	                         G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:active-nsp:
Packit Service b23acc
	 *
Packit Service b23acc
	 * The active #NMWimaxNsp of the device.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_ACTIVE_NSP] =
Packit Service b23acc
	    g_param_spec_object (NM_DEVICE_WIMAX_ACTIVE_NSP, "", "",
Packit Service b23acc
	                         NM_TYPE_WIMAX_NSP,
Packit Service b23acc
	                         G_PARAM_READABLE |
Packit Service b23acc
	                         G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:center-frequency:
Packit Service b23acc
	 *
Packit Service b23acc
	 * The center frequency (in KHz) of the radio channel the device is using to
Packit Service b23acc
	 * communicate with the network when connected.  Has no meaning when the
Packit Service b23acc
	 * device is not connected.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_CENTER_FREQ] =
Packit Service b23acc
	    g_param_spec_uint (NM_DEVICE_WIMAX_CENTER_FREQUENCY, "", "",
Packit Service b23acc
	                       0, G_MAXUINT, 0,
Packit Service b23acc
	                       G_PARAM_READABLE |
Packit Service b23acc
	                       G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:rssi:
Packit Service b23acc
	 *
Packit Service b23acc
	 * RSSI of the current radio link in dBm.  This value indicates how strong
Packit Service b23acc
	 * the raw received RF signal from the base station is, but does not
Packit Service b23acc
	 * indicate the overall quality of the radio link.  Has no meaning when the
Packit Service b23acc
	 * device is not connected.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_RSSI] =
Packit Service b23acc
	    g_param_spec_int (NM_DEVICE_WIMAX_RSSI, "", "",
Packit Service b23acc
	                      G_MININT, G_MAXINT, 0,
Packit Service b23acc
	                      G_PARAM_READABLE |
Packit Service b23acc
	                      G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:cinr:
Packit Service b23acc
	 *
Packit Service b23acc
	 * CINR (Carrier to Interference + Noise Ratio) of the current radio link
Packit Service b23acc
	 * in dB.  CINR is a more accurate measure of radio link quality.  Has no
Packit Service b23acc
	 * meaning when the device is not connected.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_CINR] =
Packit Service b23acc
	    g_param_spec_int (NM_DEVICE_WIMAX_CINR, "", "",
Packit Service b23acc
	                      G_MININT, G_MAXINT, 0,
Packit Service b23acc
	                      G_PARAM_READABLE |
Packit Service b23acc
	                      G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:tx-power:
Packit Service b23acc
	 *
Packit Service b23acc
	 * Average power of the last burst transmitted by the device, in units of
Packit Service b23acc
	 * 0.5 dBm.  i.e. a TxPower of -11 represents an actual device TX power of
Packit Service b23acc
	 * -5.5 dBm.  Has no meaning when the device is not connected.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_TX_POWER] =
Packit Service b23acc
	    g_param_spec_int (NM_DEVICE_WIMAX_TX_POWER, "", "",
Packit Service b23acc
	                      G_MININT, G_MAXINT, 0,
Packit Service b23acc
	                      G_PARAM_READABLE |
Packit Service b23acc
	                      G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:bsid:
Packit Service b23acc
	 *
Packit Service b23acc
	 * The ID of the serving base station as received from the network.  Has
Packit Service b23acc
	 * no meaning when the device is not connected.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_BSID] =
Packit Service b23acc
	    g_param_spec_string (NM_DEVICE_WIMAX_BSID, "", "",
Packit Service b23acc
	                         NULL,
Packit Service b23acc
	                         G_PARAM_READABLE |
Packit Service b23acc
	                         G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax:nsps: (type GPtrArray(NMWimaxNsp))
Packit Service b23acc
	 *
Packit Service b23acc
	 * List of all WiMAX Network Service Providers the device can see.
Packit Service b23acc
	 **/
Packit Service b23acc
	obj_properties[PROP_NSPS] =
Packit Service b23acc
	    g_param_spec_boxed (NM_DEVICE_WIMAX_NSPS, "", "",
Packit Service b23acc
	                        G_TYPE_PTR_ARRAY,
Packit Service b23acc
	                        G_PARAM_READABLE |
Packit Service b23acc
	                        G_PARAM_STATIC_STRINGS);
Packit Service b23acc
Packit Service b23acc
	g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax::nsp-added:
Packit Service b23acc
	 * @self: the wimax device that received the signal
Packit Service b23acc
	 * @nsp: the new NSP
Packit Service b23acc
	 *
Packit Service b23acc
	 * Notifies that a #NMWimaxNsp is added to the wimax device.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	signals[NSP_ADDED] =
Packit Service b23acc
	    g_signal_new ("nsp-added",
Packit Service b23acc
	                  G_OBJECT_CLASS_TYPE (object_class),
Packit Service b23acc
	                  G_SIGNAL_RUN_FIRST,
Packit Service b23acc
	                  0, NULL, NULL,
Packit Service b23acc
	                  g_cclosure_marshal_VOID__OBJECT,
Packit Service b23acc
	                  G_TYPE_NONE, 1,
Packit Service b23acc
	                  G_TYPE_OBJECT);
Packit Service b23acc
Packit Service b23acc
	/**
Packit Service b23acc
	 * NMDeviceWimax::nsp-removed:
Packit Service b23acc
	 * @self: the wimax device that received the signal
Packit Service b23acc
	 * @nsp: the removed NSP
Packit Service b23acc
	 *
Packit Service b23acc
	 * Notifies that a #NMWimaxNsp is removed from the wimax device.
Packit Service b23acc
	 *
Packit Service b23acc
	 * Deprecated: 1.2: WiMAX is no longer supported.
Packit Service b23acc
	 **/
Packit Service b23acc
	signals[NSP_REMOVED] =
Packit Service b23acc
	    g_signal_new ("nsp-removed",
Packit Service b23acc
	                  G_OBJECT_CLASS_TYPE (object_class),
Packit Service b23acc
	                  G_SIGNAL_RUN_FIRST,
Packit Service b23acc
	                  0, NULL, NULL,
Packit Service b23acc
	                  g_cclosure_marshal_VOID__OBJECT,
Packit Service b23acc
	                  G_TYPE_NONE, 1,
Packit Service b23acc
	                  G_TYPE_OBJECT);
Packit Service b23acc
}