diff options
author | Tony Espy <espy@canonical.com> | 2015-10-13 18:07:52 +0200 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2015-10-13 16:02:11 -0500 |
commit | 9c2af753c0ca7e344019e33911bc590f35f81b12 (patch) | |
tree | 25611b0d70fedde1397eb3002c32e7d26f77ab6f /gril/grilrequest.h | |
parent | ab9fedc6ef3bde5855b2776acfae59aaae3e787a (diff) | |
download | ofono-9c2af753c0ca7e344019e33911bc590f35f81b12.tar.bz2 |
gril: Library to communicate with rild
gril is a library used to communicate with rild, the Android telephony
daemon. Communication happens using a named socket over which binder
parcels are transmitted.
Co-authored-by: Tony Espy <espy@canonical.com>
Co-authored-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
Co-authored-by: Alfonso Sanchez-Beato <alfonso.sanchez-beato@canonical.com>
Co-authored-by: Mikko Hurskainen <mikko.hurskainen@nomovok.com>
Co-authored-by: You-Sheng Yang <vicamo.yang@canonical.com>
Co-authored-by: Ratchanan Srirattanamet <peathot@hotmail.com>
Diffstat (limited to 'gril/grilrequest.h')
-rw-r--r-- | gril/grilrequest.h | 293 |
1 files changed, 293 insertions, 0 deletions
diff --git a/gril/grilrequest.h b/gril/grilrequest.h new file mode 100644 index 00000000..a8ee38db --- /dev/null +++ b/gril/grilrequest.h @@ -0,0 +1,293 @@ +/* + * + * RIL library with GLib integration + * + * Copyright (C) 2008-2011 Intel Corporation. All rights reserved. + * Copyright (C) 2012-2014 Canonical Ltd. + * Copyright (C) 2015 Ratchanan Srirattanamet. + * + * 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 __GRILREQUEST_H +#define __GRILREQUEST_H + +#include <ofono/types.h> +#include <ofono/modem.h> +#include <ofono/sim.h> + +#include "gril.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct req_call_fwd { + int action; + int type; + int cls; + const struct ofono_phone_number *number; + int time; +}; + +struct req_deactivate_data_call { + gint cid; + guint reason; +}; + +struct req_setup_data_call { + guint tech; + guint data_profile; + gchar *apn; + gchar *username; + gchar *password; + guint auth_type; + guint protocol; + unsigned req_cid; +}; + +struct req_sim_read_info { + guint app_type; + gchar *aid_str; + int fileid; + const unsigned char *path; + unsigned int path_len; +}; + + +struct req_sim_read_binary { + guint app_type; + gchar *aid_str; + int fileid; + const unsigned char *path; + unsigned int path_len; + int start; + int length; +}; + + +struct req_sim_read_record { + guint app_type; + gchar *aid_str; + int fileid; + const unsigned char *path; + unsigned int path_len; + int record; + int length; +}; + +struct req_sim_write_binary { + guint app_type; + gchar *aid_str; + int fileid; + const unsigned char *path; + unsigned int path_len; + int start; + int length; + const unsigned char *data; +}; + +enum req_record_access_mode { + GRIL_REC_ACCESS_MODE_CURRENT, + GRIL_REC_ACCESS_MODE_ABSOLUTE, + GRIL_REC_ACCESS_MODE_NEXT, + GRIL_REC_ACCESS_MODE_PREVIOUS, +}; + +struct req_sim_write_record { + guint app_type; + gchar *aid_str; + int fileid; + const unsigned char *path; + unsigned int path_len; + enum req_record_access_mode mode; + int record; + int length; + const unsigned char *data; +}; + +struct req_pin_change_state { + const gchar *aid_str; + enum ofono_sim_password_type passwd_type; + int enable; + const char *passwd; +}; + +struct req_sms_cmgs { + const unsigned char *pdu; + int pdu_len; + int tpdu_len; +}; + +gboolean g_ril_request_deactivate_data_call(GRil *gril, + const struct req_deactivate_data_call *req, + struct parcel *rilp, + struct ofono_error *error); + +void g_ril_request_power(GRil *gril, + gboolean power, + struct parcel *rilp); + +void g_ril_request_set_net_select_manual(GRil *gril, + const char *mccmnc, + struct parcel *rilp); + +gboolean g_ril_request_setup_data_call(GRil *gril, + const struct req_setup_data_call *req, + struct parcel *rilp, + struct ofono_error *error); + +gboolean g_ril_request_sim_read_info(GRil *gril, + const struct req_sim_read_info *req, + struct parcel *rilp); + +gboolean g_ril_request_sim_read_binary(GRil *gril, + const struct req_sim_read_binary *req, + struct parcel *rilp); + +gboolean g_ril_request_sim_read_record(GRil *gril, + const struct req_sim_read_record *req, + struct parcel *rilp); + +gboolean g_ril_request_sim_write_binary(GRil *gril, + const struct req_sim_write_binary *req, + struct parcel *rilp); + +gboolean g_ril_request_sim_write_record(GRil *gril, + const struct req_sim_write_record *req, + struct parcel *rilp); + +void g_ril_request_read_imsi(GRil *gril, + const gchar *aid_str, + struct parcel *rilp); + +void g_ril_request_pin_send(GRil *gril, + const char *passwd, + const gchar *aid_str, + struct parcel *rilp); + +gboolean g_ril_request_pin_change_state(GRil *gril, + const struct req_pin_change_state *req, + struct parcel *rilp); + +void g_ril_request_pin_send_puk(GRil *gril, + const char *puk, + const char *passwd, + const gchar *aid_str, + struct parcel *rilp); + +void g_ril_request_change_passwd(GRil *gril, + const char *old_passwd, + const char *new_passwd, + const gchar *aid_str, + struct parcel *rilp); + +void g_ril_request_sms_cmgs(GRil *gril, + const struct req_sms_cmgs *req, + struct parcel *rilp); + +void g_ril_request_sms_acknowledge(GRil *gril, struct parcel *rilp); + +void g_ril_request_set_smsc_address(GRil *gril, + const struct ofono_phone_number *sca, + struct parcel *rilp); + +void g_ril_request_dial(GRil *gril, + const struct ofono_phone_number *ph, + enum ofono_clir_option clir, + struct parcel *rilp); + +void g_ril_request_hangup(GRil *gril, + unsigned call_id, + struct parcel *rilp); + +void g_ril_request_dtmf(GRil *gril, + char dtmf_char, + struct parcel *rilp); + +void g_ril_request_separate_conn(GRil *gril, + int call_id, + struct parcel *rilp); + +void g_ril_request_set_supp_svc_notif(GRil *gril, + struct parcel *rilp); + +void g_ril_request_set_mute(GRil *gril, + int muted, + struct parcel *rilp); + +void g_ril_request_send_ussd(GRil *gril, + const char *ussd, + struct parcel *rilp); + +void g_ril_request_set_call_waiting(GRil *gril, + int enabled, int serviceclass, + struct parcel *rilp); + +void g_ril_request_query_call_waiting(GRil *gril, + int serviceclass, + struct parcel *rilp); + +void g_ril_request_set_clir(GRil *gril, + int mode, + struct parcel *rilp); + +void g_ril_request_screen_state(GRil *gril, + int state, + struct parcel *rilp); + +void g_ril_request_call_fwd(GRil *gril, const struct req_call_fwd *req, + struct parcel *rilp); + +void g_ril_request_set_preferred_network_type(GRil *gril, int net_type, + struct parcel *rilp); + +void g_ril_request_query_facility_lock(GRil *gril, const char *facility, + const char *password, int services, + struct parcel *rilp); + +void g_ril_request_set_facility_lock(GRil *gril, const char *facility, + int enable, const char *passwd, + int services, struct parcel *rilp); + +void g_ril_request_change_barring_password(GRil *gril, const char *facility, + const char *old_passwd, + const char *new_passwd, + struct parcel *rilp); + +void g_ril_request_oem_hook_raw(GRil *gril, const void *payload, size_t length, + struct parcel *rilp); + +void g_ril_request_oem_hook_strings(GRil *gril, const char **strs, int num_str, + struct parcel *rilp); + +void g_ril_request_set_initial_attach_apn(GRil *gril, const char *apn, + int proto, + const char *user, + const char *passwd, + const char *mccmnc, + struct parcel *rilp); + +void g_ril_request_set_uicc_subscription(GRil *gril, int slot_id, + int app_index, + int sub_id, + int sub_status, + struct parcel *rilp); + +#ifdef __cplusplus +} +#endif + +#endif /* __GRILREQUEST_H */ |