diff options
Diffstat (limited to 'gril/grilreply.h')
-rw-r--r-- | gril/grilreply.h | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/gril/grilreply.h b/gril/grilreply.h new file mode 100644 index 00000000..b4197625 --- /dev/null +++ b/gril/grilreply.h @@ -0,0 +1,185 @@ +/* + * + * RIL library with GLib integration + * + * Copyright (C) 2008-2011 Intel Corporation. All rights reserved. + * Copyright (C) 2012-2014 Canonical Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +#ifndef __GRILREPLY_H +#define __GRILREPLY_H + +#include <ofono/types.h> +#include <ofono/sim.h> + +#include "gril.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct reply_operator { + char *lalpha; + char *salpha; + char *numeric; + char *status; + int tech; +}; + +struct reply_avail_ops { + guint num_ops; + GSList *list; +}; + +struct reply_reg_state { + int status; + int lac; + int ci; + int tech; +}; + +struct reply_data_reg_state { + struct reply_reg_state reg_state; + unsigned int max_cids; +}; + +struct reply_sim_io { + int sw1; + int sw2; + int hex_len; + unsigned char *hex_response; +}; + +#define MAX_UICC_APPS 16 + +struct reply_sim_app { + guint app_type; + guint app_state; + guint perso_substate; + char *aid_str; + char *app_str; + guint pin_replaced; + guint pin1_state; + guint pin2_state; +}; + +struct reply_sim_status { + guint card_state; + guint pin_state; + guint gsm_umts_index; + guint cdma_index; + guint ims_index; + guint num_apps; + struct reply_sim_app *apps[MAX_UICC_APPS]; +}; + +struct reply_clir { + int status; + int provisioned; +}; + +struct reply_oem_hook { + int length; + void *data; +}; + +void g_ril_reply_free_avail_ops(struct reply_avail_ops *reply); + +struct reply_avail_ops *g_ril_reply_parse_avail_ops(GRil *gril, + const struct ril_msg *message); +void g_ril_reply_free_operator(struct reply_operator *reply); + +struct reply_operator *g_ril_reply_parse_operator(GRil *gril, + const struct ril_msg *message); + +void g_ril_reply_free_sim_io(struct reply_sim_io *reply); + +struct reply_sim_io *g_ril_reply_parse_sim_io(GRil *gril, + const struct ril_msg *message); + +gchar *g_ril_reply_parse_imsi(GRil *gril, const struct ril_msg *message); + +struct reply_reg_state *g_ril_reply_parse_voice_reg_state(GRil *gril, + const struct ril_msg *message); +struct reply_data_reg_state *g_ril_reply_parse_data_reg_state(GRil *gril, + const struct ril_msg *message); + +void g_ril_reply_free_sim_status(struct reply_sim_status *status); + +struct reply_sim_status *g_ril_reply_parse_sim_status(GRil *gril, + const struct ril_msg *message); + +struct ofono_phone_number *g_ril_reply_parse_get_smsc_address( + GRil *gril, + const struct ril_msg *message); + +int g_ril_reply_parse_sms_response(GRil *gril, const struct ril_msg *message); + +GSList *g_ril_reply_parse_get_calls(GRil *gril, const struct ril_msg *message); + +enum ofono_disconnect_reason g_ril_reply_parse_call_fail_cause( + GRil *gril, const struct ril_msg *message); + +int g_ril_reply_parse_get_mute(GRil *gril, const struct ril_msg *message); + +char *g_ril_reply_parse_baseband_version(GRil *gril, + const struct ril_msg *message); + +char *g_ril_reply_parse_get_imei(GRil *gril, + const struct ril_msg *message); + +int g_ril_reply_parse_query_call_waiting(GRil *gril, + const struct ril_msg *message); + +int g_ril_reply_parse_query_clip(GRil *gril, + const struct ril_msg *message); + +void g_ril_reply_free_get_clir(struct reply_clir *rclir); + +struct reply_clir *g_ril_reply_parse_get_clir(GRil *gril, + const struct ril_msg *message); + +struct ofono_call_forwarding_condition + *g_ril_reply_parse_query_call_fwd(GRil *gril, + const struct ril_msg *message, + unsigned int *list_size); + +int g_ril_reply_parse_get_preferred_network_type(GRil *gril, + const struct ril_msg *message); + +int g_ril_reply_parse_query_facility_lock(GRil *gril, + const struct ril_msg *message); + +int g_ril_reply_parse_set_facility_lock(GRil *gril, + const struct ril_msg *message); + +int *g_ril_reply_parse_retries(GRil *gril, const struct ril_msg *message, + enum ofono_sim_password_type passwd_type); + +void g_ril_reply_free_oem_hook(struct reply_oem_hook *oem_hook); + +struct reply_oem_hook *g_ril_reply_oem_hook_raw(GRil *gril, + const struct ril_msg *message); + +struct parcel_str_array *g_ril_reply_oem_hook_strings(GRil *gril, + const struct ril_msg *message); + +#ifdef __cplusplus +} +#endif + +#endif /* __GRILREPLY_H */ |