diff options
author | Antti Paila <antti.paila@nokia.com> | 2011-03-03 09:22:39 +0200 |
---|---|---|
committer | Aki Niemi <aki.niemi@nokia.com> | 2011-03-03 18:56:05 +0200 |
commit | 1a97158e04cb3043b8fb36a4118f1c9b8c79ff5b (patch) | |
tree | 36ecdd990ce2922f1b0bee8cb1ae3763dbe07780 /gisi/iter.h | |
parent | abe5e874830eff2e9bd5f3405951666b7e8d1385 (diff) | |
download | ofono-1a97158e04cb3043b8fb36a4118f1c9b8c79ff5b.tar.gz |
gisi: Consumer functions for ISI message iterator
Diffstat (limited to 'gisi/iter.h')
-rw-r--r-- | gisi/iter.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gisi/iter.h b/gisi/iter.h index 1dfcfa9c..2fe4ec53 100644 --- a/gisi/iter.h +++ b/gisi/iter.h @@ -31,6 +31,7 @@ extern "C" { #include "message.h" struct _GIsiSubBlockIter { + uint8_t cursor; uint8_t *start; uint8_t *end; gboolean longhdr; @@ -63,12 +64,24 @@ gboolean g_isi_sb_iter_get_word(const GIsiSubBlockIter *restrict iter, uint16_t *word, unsigned pos); gboolean g_isi_sb_iter_get_dword(const GIsiSubBlockIter *restrict iter, uint32_t *dword, unsigned pos); +gboolean g_isi_sb_iter_eat_byte(GIsiSubBlockIter *restrict iter, + uint8_t *byte); +gboolean g_isi_sb_iter_eat_word(GIsiSubBlockIter *restrict iter, + uint16_t *word); +gboolean g_isi_sb_iter_eat_dword(GIsiSubBlockIter *restrict iter, + uint32_t *dword); gboolean g_isi_sb_iter_get_oper_code(const GIsiSubBlockIter *restrict iter, char *mcc, char *mnc, unsigned pos); +gboolean g_isi_sb_iter_eat_oper_code(GIsiSubBlockIter *restrict iter, + char *mcc, char *mnc); gboolean g_isi_sb_iter_get_alpha_tag(const GIsiSubBlockIter *restrict iter, char **utf8, size_t len, unsigned pos); +gboolean g_isi_sb_iter_eat_alpha_tag(GIsiSubBlockIter *restrict iter, + char **utf8, size_t len); gboolean g_isi_sb_iter_get_latin_tag(const GIsiSubBlockIter *restrict iter, char **ascii, size_t len, unsigned pos); +gboolean g_isi_sb_iter_eat_latin_tag(GIsiSubBlockIter *restrict iter, + char **ascii, size_t len); gboolean g_isi_sb_iter_get_struct(const GIsiSubBlockIter *restrict iter, void **ptr, size_t len, unsigned pos); |