diff options
author | Omar Tarabai <tarabai@devegypt.com> | 2014-05-17 16:57:49 +0000 |
---|---|---|
committer | Omar Tarabai <tarabai@devegypt.com> | 2014-05-17 16:57:49 +0000 |
commit | 7eb684ec9f93d52ebae09729fcf01c16580b5cb9 (patch) | |
tree | 72a44f01de2dc157f47a0a70ccb90d36154ddcbf /src/peerstore/plugin_peerstore_sqlite.c | |
parent | 83c058a5ea11b6d7aa05cb71963c6063cb373603 (diff) | |
download | gnunet-7eb684ec9f93d52ebae09729fcf01c16580b5cb9.tar.gz gnunet-7eb684ec9f93d52ebae09729fcf01c16580b5cb9.zip |
peestore: towards iterate functionality
Diffstat (limited to 'src/peerstore/plugin_peerstore_sqlite.c')
-rw-r--r-- | src/peerstore/plugin_peerstore_sqlite.c | 29 |
1 files changed, 11 insertions, 18 deletions
diff --git a/src/peerstore/plugin_peerstore_sqlite.c b/src/peerstore/plugin_peerstore_sqlite.c index c5eabac2d..1ae8301b2 100644 --- a/src/peerstore/plugin_peerstore_sqlite.c +++ b/src/peerstore/plugin_peerstore_sqlite.c | |||
@@ -122,12 +122,7 @@ peerstore_sqlite_iterate_records (void *cls, | |||
122 | sqlite3_stmt *stmt; | 122 | sqlite3_stmt *stmt; |
123 | int err = 0; | 123 | int err = 0; |
124 | int sret; | 124 | int sret; |
125 | const char *ret_sub_system; | 125 | struct GNUNET_PEERSTORE_Record *ret; |
126 | const struct GNUNET_PeerIdentity *ret_peer; | ||
127 | const char *ret_key; | ||
128 | const void *ret_value; | ||
129 | size_t ret_value_size; | ||
130 | struct GNUNET_TIME_Absolute ret_expiry; | ||
131 | 126 | ||
132 | if(NULL == peer && NULL == key) | 127 | if(NULL == peer && NULL == key) |
133 | { | 128 | { |
@@ -166,20 +161,18 @@ peerstore_sqlite_iterate_records (void *cls, | |||
166 | } | 161 | } |
167 | while (SQLITE_ROW == (sret = sqlite3_step (stmt))) | 162 | while (SQLITE_ROW == (sret = sqlite3_step (stmt))) |
168 | { | 163 | { |
169 | ret_sub_system = (const char *)sqlite3_column_text(stmt, 0); | 164 | ret = GNUNET_new(struct GNUNET_PEERSTORE_Record); |
170 | ret_peer = sqlite3_column_blob(stmt, 1); | 165 | ret->sub_system = (char *)sqlite3_column_text(stmt, 0); |
171 | ret_key = (const char *)sqlite3_column_text(stmt, 2); | 166 | ret->peer = (struct GNUNET_PeerIdentity *)sqlite3_column_blob(stmt, 1); |
172 | ret_value = sqlite3_column_blob(stmt, 3); | 167 | ret->key = (char *)sqlite3_column_text(stmt, 2); |
173 | ret_value_size = sqlite3_column_bytes(stmt, 3); | 168 | ret->value = (void *)sqlite3_column_blob(stmt, 3); |
174 | ret_expiry.abs_value_us = (uint64_t)sqlite3_column_int64(stmt, 4); | 169 | ret->value_size = sqlite3_column_bytes(stmt, 3); |
170 | ret->expiry = GNUNET_new(struct GNUNET_TIME_Absolute); | ||
171 | ret->expiry->abs_value_us = (uint64_t)sqlite3_column_int64(stmt, 4); | ||
175 | if (NULL != iter) | 172 | if (NULL != iter) |
176 | iter (iter_cls, | 173 | iter (iter_cls, |
177 | ret_sub_system, | 174 | ret, |
178 | ret_peer, | 175 | NULL); |
179 | ret_key, | ||
180 | ret_value, | ||
181 | ret_value_size, | ||
182 | ret_expiry); | ||
183 | } | 176 | } |
184 | if (SQLITE_DONE != sret) | 177 | if (SQLITE_DONE != sret) |
185 | { | 178 | { |