Classes | |
struct | always_online_data |
Defines | |
#define | POLICY_ALWAYS_ONLINE_MCE_TIMEOUT 5000 |
#define | POLICY_ALWAYS_ONLINE_MCE_FILTER "member='" MCE_DEVICE_MODE_SIG "'" |
#define | POLICY_ALWAYS_ONLINE_IAP_TIMEOUT 500 |
Functions | |
static void | policy_always_online_run (struct always_online_data *data, gboolean immediately) |
void | icd_policy_init (struct icd_policy_api *policy_api, icd_policy_nw_add_fn add_network, icd_policy_request_merge_fn merge_requests, icd_policy_request_make_new_fn make_request, icd_policy_scan_start_fn not_used_1, icd_policy_scan_stop_fn not_used_2, icd_policy_nw_close_fn not_used_3, icd_policy_network_priority_fn priority) |
static void | policy_always_online_cancel_timer (struct always_online_data *data) |
static void | policy_always_online_make_request (struct always_online_data *data) |
static gboolean | policy_always_online_make_request_cb (gpointer user_data) |
static void | policy_always_online_connected (struct icd_policy_request *network, GSList *existing_connections, gpointer *private) |
static void | policy_always_online_disconnected (struct icd_policy_request *network, const gchar *err_str, GSList *existing_connections, gpointer *private) |
static void | policy_always_online_flightmode (DBusMessage *message, struct always_online_data *data) |
static DBusHandlerResult | policy_always_online_flightmode_sig (DBusConnection *connection, DBusMessage *message, void *user_data) |
static void | policy_always_online_flightmode_cb (DBusPendingCall *pending, void *user_data) |
static gboolean | policy_always_online_flightmode_init (struct always_online_data *data) |
static void | policy_always_online_cancel_pending (struct always_online_data *data) |
static void | policy_always_online_destruct (gpointer *private) |
static guint | policy_always_online_count_iaps (void) |
static gboolean | policy_always_online_check (gpointer user_data) |
static void | policy_always_online_nw_params_changed (GConfClient *client, guint cnxn_id, GConfEntry *entry, gpointer user_data) |
static void | policy_always_online_connections_changed (GConfClient *client, guint cnxn_id, GConfEntry *entry, gpointer user_data) |
static gboolean | policy_always_online_gconf_init (struct always_online_data *data) |
#define POLICY_ALWAYS_ONLINE_IAP_TIMEOUT 500 |
how long to wait befor counting IAPs after gconf has changed
#define POLICY_ALWAYS_ONLINE_MCE_FILTER "member='" MCE_DEVICE_MODE_SIG "'" |
extra filter for mce signals
#define POLICY_ALWAYS_ONLINE_MCE_TIMEOUT 5000 |
timeout for MCE method call
void icd_policy_init | ( | struct icd_policy_api * | policy_api, | |
icd_policy_nw_add_fn | add_network, | |||
icd_policy_request_merge_fn | merge_requests, | |||
icd_policy_request_make_new_fn | make_request, | |||
icd_policy_scan_start_fn | not_used_1, | |||
icd_policy_scan_stop_fn | not_used_2, | |||
icd_policy_nw_close_fn | not_used_3, | |||
icd_policy_network_priority_fn | priority | |||
) |
Policy module initialization function.
policy_api | policy API structure to be filled in by the module | |
add_network | function to add a network in response to a policy | |
merge_requests | function to merge requests | |
make_request | function for creating a new request |
static void policy_always_online_cancel_pending | ( | struct always_online_data * | data | ) | [static] |
Cancel pending call to MCE
data | always online policy data |
static void policy_always_online_cancel_timer | ( | struct always_online_data * | data | ) | [static] |
Cancel always online timer
data | always online policy data |
static gboolean policy_always_online_check | ( | gpointer | user_data | ) | [static] |
Check the number of IAPs in gconf and whether always online gconf settings were changed. Connect automatically when needed
user_data | always_online_policy_data |
static void policy_always_online_connected | ( | struct icd_policy_request * | network, | |
GSList * | existing_connections, | |||
gpointer * | private | |||
) | [static] |
Informational policy called when a network has been successfully connected
network | the network to connect | |
existing_connections | existing network connections | |
private | private data |
static void policy_always_online_connections_changed | ( | GConfClient * | client, | |
guint | cnxn_id, | |||
GConfEntry * | entry, | |||
gpointer | user_data | |||
) | [static] |
Notice a changed value in gconf
client | GConf client | |
cnxn_id | connection id | |
entry | GConf entry | |
user_data | always online policy data |
static guint policy_always_online_count_iaps | ( | void | ) | [static] |
Count how many IAPs there are in GConf
static void policy_always_online_destruct | ( | gpointer * | private | ) | [static] |
Policy module destruction function. Will be called before unloading the module.
private | a reference to the private data |
static void policy_always_online_disconnected | ( | struct icd_policy_request * | network, | |
const gchar * | err_str, | |||
GSList * | existing_connections, | |||
gpointer * | private | |||
) | [static] |
Informational policy called when a network has been disconnected
network | the network to connect | |
err_str | NULL if the network was disconnected normally, any ICD_DBUS_ERROR_* from osso-ic-dbus.h on error | |
existing_connections | existing network connections | |
private | private data |
static void policy_always_online_flightmode | ( | DBusMessage * | message, | |
struct always_online_data * | data | |||
) | [static] |
Parse flight mode message
message | the D-Bus message | |
data | always online policy data |
static void policy_always_online_flightmode_cb | ( | DBusPendingCall * | pending, | |
void * | user_data | |||
) | [static] |
Flight mode status pending call callback
pending | the pending call | |
user_data | always online policy data |
static gboolean policy_always_online_flightmode_init | ( | struct always_online_data * | data | ) | [static] |
Initialize flight mode information fetching from MCE
data | always online policy data |
static DBusHandlerResult policy_always_online_flightmode_sig | ( | DBusConnection * | connection, | |
DBusMessage * | message, | |||
void * | user_data | |||
) | [static] |
Flight mode signal handling function; used also by policy_always_online_flightmode_cb()
connection | D-Bus connection or NULL if called from policy_always_online_flightmode_cb() | |
message | D-Bus flight mode status message | |
user_data | always online policy data |
static gboolean policy_always_online_gconf_init | ( | struct always_online_data * | data | ) | [static] |
Initialize GConf notifications
data | always online policy data |
static void policy_always_online_make_request | ( | struct always_online_data * | data | ) | [static] |
Make a request for OSSO_IAP_ANY, no user prompting
data | always online policy data |
static gboolean policy_always_online_make_request_cb | ( | gpointer | user_data | ) | [static] |
Timeout callback for a new request
user_data | always online policy data |
static void policy_always_online_nw_params_changed | ( | GConfClient * | client, | |
guint | cnxn_id, | |||
GConfEntry * | entry, | |||
gpointer | user_data | |||
) | [static] |
Notice a changed value in gconf
client | GConf client | |
cnxn_id | connection id | |
entry | GConf entry | |
user_data | always online policy data |
static void policy_always_online_run | ( | struct always_online_data * | data, | |
gboolean | immediately | |||
) | [static] |
Check if always online is set and run either immediately or set a timeout according to settings
data | always online policy data | |
immediately | whether to start immediately or after a timeout |