From b71c0015e7e522b270b0881601d31a1940db4f50 Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Fri, 12 Jun 2009 21:16:34 -0500 Subject: [PATCH] Add a couple new sms_udh_iter utilities --- src/smsutil.c | 10 ++++++++++ src/smsutil.h | 2 ++ 2 files changed, 12 insertions(+) diff --git a/src/smsutil.c b/src/smsutil.c index 4881250e..1bbc4a34 100644 --- a/src/smsutil.c +++ b/src/smsutil.c @@ -1591,6 +1591,16 @@ gboolean sms_udh_iter_init(const struct sms *sms, struct sms_udh_iter *iter) return TRUE; } +guint8 sms_udh_iter_get_udh_length(struct sms_udh_iter *iter) +{ + return iter->data[0]; +} + +const guint8 *sms_udh_iter_get_ud_after_header(struct sms_udh_iter *iter) +{ + return iter->data + iter->data[0] + 1; +} + enum sms_iei sms_udh_iter_get_ie_type(struct sms_udh_iter *iter) { if (iter->offset > iter->data[0]) diff --git a/src/smsutil.h b/src/smsutil.h index 0158f0b4..f31994ce 100644 --- a/src/smsutil.h +++ b/src/smsutil.h @@ -337,6 +337,8 @@ const guint8 *sms_extract_common(const struct sms *sms, gboolean *out_udhi, guint8 *out_max); gboolean sms_udh_iter_init(const struct sms *sms, struct sms_udh_iter *iter); +guint8 sms_udh_iter_get_udh_length(struct sms_udh_iter *iter); +const guint8 *sms_udh_iter_get_ud_after_header(struct sms_udh_iter *iter); enum sms_iei sms_udh_iter_get_ie_type(struct sms_udh_iter *iter); guint8 sms_udh_iter_get_ie_length(struct sms_udh_iter *iter); void sms_udh_iter_get_ie_data(struct sms_udh_iter *iter, guint8 *data);