summaryrefslogtreecommitdiffstats
path: root/src/smsutil.h
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2009-06-18 03:45:55 -0500
committerDenis Kenzior <denkenz@gmail.com>2009-06-18 04:02:10 -0500
commit314478c7560247e12bbf9be4a7a3ddeefeb0914e (patch)
treef4ef3e7efd1e9eac5253dc0940f5a53996d0d9dc /src/smsutil.h
parent1c6d44d9c075bedda1e7ad92692c723b91f48b95 (diff)
downloadofono-314478c7560247e12bbf9be4a7a3ddeefeb0914e.tar.bz2
Add a new extract_bcd_number utility
Diffstat (limited to 'src/smsutil.h')
-rw-r--r--src/smsutil.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/smsutil.h b/src/smsutil.h
index 3421833c..758eac75 100644
--- a/src/smsutil.h
+++ b/src/smsutil.h
@@ -332,6 +332,21 @@ struct sms_assembly {
GSList *assembly_list;
};
+static inline gboolean is_bit_set(unsigned char oct, int bit)
+{
+ int mask = 0x1 << bit;
+ return oct & mask ? TRUE : FALSE;
+}
+
+static inline unsigned char bit_field(unsigned char oct, int start, int num)
+{
+ unsigned char mask = (0x1 << num) - 1;
+
+ return (oct >> start) & mask;
+}
+
+void extract_bcd_number(const unsigned char *buf, int len, char *out);
+
gboolean sms_decode(const unsigned char *pdu, int len, gboolean outgoing,
int tpdu_len, struct sms *out);