From 348c9af2fce8d0d53341d9861494b5c13f9796f1 Mon Sep 17 00:00:00 2001 From: laforge Date: Fri, 17 Aug 2007 08:29:08 +0000 Subject: From: Andrzej Zaborowski Date: Thu, 26 Jul 2007 00:32:38 +0200 Subject: [PATCH] SMSC and Preferred Storage operations. This adds setting and retrieval of SMS storage stats (memory type, used entries, all entries), and of the default service centre (SMSC) number for outgoing messages. The operation of setting a new SMSC number is untested because my SIM doesn't seem to allow this (that or I did something wrong). New "libgmsd-tool -m shell" commands for testing are also added. Other changes in this patch: * The third, optional, parameter to +CMGL: is a string, not an integer as I wrongly assumed earlier, this is now corrected. * Rename libgsmd API functions starting with lgsmd_.. to lgsm_.. for consistency with all other identifiers. * Move lgsm_send_simple() to libgsmd.c and add a prototype in lgsm_internals.h, this eliminates some compile-time warnings. git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@2720 99fdad57-331a-0410-800a-d7fa5415bdb3 --- include/gsmd/sms.h | 3 +++ include/gsmd/usock.h | 23 +++++++++++++++++++++++ 2 files changed, 26 insertions(+) (limited to 'include/gsmd') diff --git a/include/gsmd/sms.h b/include/gsmd/sms.h index ac16509..3192472 100644 --- a/include/gsmd/sms.h +++ b/include/gsmd/sms.h @@ -11,6 +11,9 @@ int sms_pdu_make_smssubmit(char *dest, const struct gsmd_sms_submit *src); int sms_pdu_to_msg(struct gsmd_sms_list *dst, const u_int8_t *src, int pdulen, int len); +extern const char *ts0705_memtype_name[]; +int parse_memtype(char *memtype); + #endif /* __GSMD__ */ #endif diff --git a/include/gsmd/usock.h b/include/gsmd/usock.h index b60e28e..bcff129 100644 --- a/include/gsmd/usock.h +++ b/include/gsmd/usock.h @@ -329,6 +329,29 @@ struct gsmd_sms_list { int is_last; }; +/* Refer to GSM 07.05 subclause 3.1 */ +enum ts0705_mem_type { + GSM0705_MEMTYPE_NONE, + GSM0705_MEMTYPE_BROADCAST, + GSM0705_MEMTYPE_ME_MESSAGE, + GSM0705_MEMTYPE_MT, + GSM0705_MEMTYPE_SIM, + GSM0705_MEMTYPE_TA, + GSM0705_MEMTYPE_SR, +}; + +/* Refer to GSM 07.05 subclause 3.2.2 */ +struct __gsmd_sms_storage { + u_int8_t memtype; + u_int8_t pad[3]; + u_int16_t used; + u_int16_t total; +} __attribute__ ((packed)); + +struct gsmd_sms_storage { + struct __gsmd_sms_storage mem[3]; +} __attribute__ ((packed)); + /* Refer to GSM 07.07 subclause 8.12 */ struct gsmd_phonebook_readrg { u_int8_t index1; -- cgit v1.2.3