diff options
author | laforge <laforge@99fdad57-331a-0410-800a-d7fa5415bdb3> | 2007-08-17 08:32:14 +0000 |
---|---|---|
committer | laforge <laforge@99fdad57-331a-0410-800a-d7fa5415bdb3> | 2007-08-17 08:32:14 +0000 |
commit | 86c7ff07f100489d085efd6541b8c104a44209e0 (patch) | |
tree | c22d7172cec161430b130032f7b3ec8678d34afa /include | |
parent | 34fbfd275b710d3662eb490f6a59f58285892f70 (diff) |
From: Andrzej Zaborowski <balrog@zabor.org>
Date: Tue, 31 Jul 2007 22:26:36 +0200
Subject: [PATCH] Operations on the preferred operators list.
This makes use of the AT+CPOL variants to add / delete / list entries in the
preferred operators list on the SIM. There's some inconsistency, similarly as
with operator selection, in that we return operator names in long
alphanumeric format but we take only operators in numeric format as
parameters. Either the client will have to convert between the formats or
we should always use for example the long alphanumeric format, or maybe
do something else.
git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2725 99fdad57-331a-0410-800a-d7fa5415bdb3
Diffstat (limited to 'include')
-rw-r--r-- | include/gsmd/usock.h | 11 | ||||
-rw-r--r-- | include/libgsmd/misc.h | 6 |
2 files changed, 17 insertions, 0 deletions
diff --git a/include/gsmd/usock.h b/include/gsmd/usock.h index ce5c25e..0f9f05c 100644 --- a/include/gsmd/usock.h +++ b/include/gsmd/usock.h @@ -70,6 +70,11 @@ enum gsmd_msg_network { GSMD_NETWORK_OPER_LIST = 6, GSMD_NETWORK_CIND_GET = 7, GSMD_NETWORK_DEREGISTER = 8, + GSMD_NETWORK_GET_NUMBER = 9, + GSMD_NETWORK_PREF_LIST = 10, + GSMD_NETWORK_PREF_DEL = 11, + GSMD_NETWORK_PREF_ADD = 12, + GSMD_NETWORK_PREF_SPACE = 13, }; enum gsmd_msg_sms { @@ -458,6 +463,12 @@ struct gsmd_msg_oper { gsmd_oper_numeric opname_num; }; +struct gsmd_msg_prefoper { + int index; + int is_last; + char opname_longalpha[16]; +}; + struct gsmd_msg_hdr { u_int8_t version; u_int8_t msg_type; diff --git a/include/libgsmd/misc.h b/include/libgsmd/misc.h index 9988518..d673c31 100644 --- a/include/libgsmd/misc.h +++ b/include/libgsmd/misc.h @@ -62,6 +62,12 @@ enum lgsm_netreg_state { extern int lgsm_get_netreg_state(struct lgsm_handle *lh, enum lgsm_netreg_state *state); +/* Preferred operator list management */ +extern int lgsm_prefoper_list(struct lgsm_handle *lh); +extern int lgsm_prefoper_delete(struct lgsm_handle *lh, int index); +extern int lgsm_prefoper_add(struct lgsm_handle *lh, gsmd_oper_numeric oper); +extern int lgsm_prefoper_get_space(struct lgsm_handle *lh); + /* CLIP, CLIR, COLP, Call Forwarding, Call Waiting, Call Deflecting */ /* TBD */ |