aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/db.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2010-12-24 23:18:31 +0100
committerHolger Hans Peter Freyther <zecke@selfish.org>2010-12-25 21:39:04 +0100
commit812dad0ff7e34499ae7c28cbed51e0a86da98846 (patch)
tree26ecb33b854db9d6b4b6ec11a736b8de475f6747 /openbsc/src/db.c
parente25445b8644310c73694b960f63f93f1e3110315 (diff)
db: Add method to load a SMS by id.
Diffstat (limited to 'openbsc/src/db.c')
-rw-r--r--openbsc/src/db.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/openbsc/src/db.c b/openbsc/src/db.c
index ec1e72ce9..bb72fd80f 100644
--- a/openbsc/src/db.c
+++ b/openbsc/src/db.c
@@ -1063,6 +1063,28 @@ static struct gsm_sms *sms_from_result(struct gsm_network *net, dbi_result resul
return sms;
}
+struct gsm_sms *db_sms_get(struct gsm_network *net, unsigned long long id)
+{
+ dbi_result result;
+ struct gsm_sms *sms;
+
+ result = dbi_conn_queryf(conn,
+ "SELECT * FROM SMS WHERE SMS.id = %llu", id);
+ if (!result)
+ return NULL;
+
+ if (!dbi_result_next_row(result)) {
+ dbi_result_free(result);
+ return NULL;
+ }
+
+ sms = sms_from_result(net, result);
+
+ dbi_result_free(result);
+
+ return sms;
+}
+
/* retrieve the next unsent SMS with ID >= min_id */
struct gsm_sms *db_sms_get_unsent(struct gsm_network *net, unsigned long long min_id)
{