Request 'Select connection' dialog from UI
[Policy modules]


Classes

struct  policy_iap_ask_data

Defines

#define POLICY_IAP_ASK_TIMEOUT   10 * 1000

Functions

void icd_policy_init (struct icd_policy_api *policy_api, icd_policy_nw_add_fn add_network, icd_policy_request_merge_fn merge_requests)
static gboolean string_equal (const gchar *a, const gchar *b)
static void policy_iap_ask_flightmode_pending (DBusPendingCall *pending, void *user_data)
static void policy_iap_ask_flightmode (struct policy_iap_ask_data *data)
static void policy_iap_ask_pending (DBusPendingCall *pending, void *user_data)
static void policy_iap_ask_request (struct icd_policy_request *new_request, const GSList *existing_requests, icd_policy_request_new_cb_fn policy_done_cb, gpointer policy_token, gpointer *private)
static void policy_iap_ask_cancel_request (struct icd_policy_request *request, gpointer *private)

Define Documentation

#define POLICY_IAP_ASK_TIMEOUT   10 * 1000

Milliseconds to wait for UI to reply

Referenced by policy_iap_ask_flightmode(), and policy_iap_ask_request().


Function Documentation

void icd_policy_init ( struct icd_policy_api policy_api,
icd_policy_nw_add_fn  add_network,
icd_policy_request_merge_fn  merge_requests 
)

Policy module initialization function.

Parameters:
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

static void policy_iap_ask_cancel_request ( struct icd_policy_request request,
gpointer *  private 
) [static]

Cancel a pending call for ICD_UI_SHOW_CONNDLG_REQ

Parameters:
request the request to cancel
private GSList of pending calls

References ICD_NW_ATTR_LOCALMASK, ILOG_DEBUG, ILOG_ERR, icd_policy_request::network_attrs, icd_policy_request::network_id, icd_policy_request::network_type, policy_iap_ask_data::pending_call, policy_iap_ask_data::private, policy_iap_ask_data::request, and string_equal().

static void policy_iap_ask_flightmode ( struct policy_iap_ask_data data  )  [static]

static void policy_iap_ask_flightmode_pending ( DBusPendingCall *  pending,
void *  user_data 
) [static]

Callback function for the 'Exit flight mode' UI pending call reply.

Parameters:
pending the pending call
user_data data for the pending call

References ICD_POLICY_REJECTED, ICD_POLICY_WAITING, ILOG_DEBUG, policy_iap_ask_data::pending_call, policy_iap_ask_data::policy_done_cb, policy_iap_ask_data::policy_token, policy_iap_ask_data::private, and policy_iap_ask_data::request.

Referenced by policy_iap_ask_flightmode().

static void policy_iap_ask_pending ( DBusPendingCall *  pending,
void *  user_data 
) [static]

Callback function for the 'Select connection' UI pending call reply.

Parameters:
pending the pending call
user_data data for the pending call

References ICD_POLICY_REJECTED, ICD_POLICY_WAITING, ILOG_DEBUG, policy_iap_ask_data::pending_call, policy_iap_ask_data::policy_done_cb, policy_iap_ask_flightmode(), policy_iap_ask_data::policy_token, policy_iap_ask_data::private, and policy_iap_ask_data::request.

Referenced by policy_iap_ask_request().

static void policy_iap_ask_request ( struct icd_policy_request new_request,
const GSList *  existing_requests,
icd_policy_request_new_cb_fn  policy_done_cb,
gpointer  policy_token,
gpointer *  private 
) [static]

Request UI to show 'Select connection' dialog

Parameters:
new_request the new connection request
existing_requests currently existing requests
policy_done_cb callback to call when policy has been decided
policy_token token to pass to the callback
private the private memeber of the icd_request_api structure; GSList

References icd_policy_request::attrs, icd_dbus_send_system_mcall(), ICD_POLICY_ACCEPTED, ICD_POLICY_ATTRIBUTE_CONNECTIONS_FAILED, ICD_POLICY_ATTRIBUTE_NO_INTERACTION, ICD_POLICY_REJECTED, ILOG_CRIT, ILOG_DEBUG, icd_policy_request::network_id, policy_iap_ask_data::pending_call, policy_iap_ask_data::policy_done_cb, policy_iap_ask_pending(), POLICY_IAP_ASK_TIMEOUT, policy_iap_ask_data::policy_token, policy_iap_ask_data::private, and policy_iap_ask_data::request.

static gboolean string_equal ( const gchar *  a,
const gchar *  b 
) [static]

Helper function for comparing two strings where a NULL string is equal to another NULL string

Parameters:
a string A
b string B
Returns:
TRUE if equal, FALSE if unequal


Generated on Thu Mar 11 09:04:50 2010 for ICd2 by  doxygen 1.5.6