Code

Moved core/error to utils/error.
[sysdb.git] / src / core / store.c
index be307c5829adb49f212a478f13cb4d34c82983e4..8f5cae350c6de13f68ddf75cb0741ada5f1f9950 100644 (file)
@@ -27,8 +27,8 @@
 
 #include "sysdb.h"
 #include "core/store.h"
-#include "core/error.h"
 #include "core/plugin.h"
+#include "utils/error.h"
 #include "utils/llist.h"
 
 #include <assert.h>
@@ -487,9 +487,11 @@ sdb_store_tojson(sdb_strbuf_t *buf)
                        char errbuf[1024];
                        sdb_log(SDB_LOG_ERR, "store: Failed to retrieve attributes: %s\n",
                                        sdb_strerror(errno, errbuf, sizeof(errbuf)));
-                       break;
+                       sdb_strbuf_append(buf, "{\"error\": \"failed to retrieve "
+                                       "attributes: %s\"}", errbuf);
                }
 
+               /* has_next returns false if the iterator is NULL */
                while (sdb_llist_iter_has_next(attr_iter)) {
                        sdb_attribute_t *attr = SDB_ATTR(sdb_llist_iter_get_next(attr_iter));
                        assert(attr);
@@ -512,7 +514,8 @@ sdb_store_tojson(sdb_strbuf_t *buf)
                        char errbuf[1024];
                        sdb_log(SDB_LOG_ERR, "store: Failed to retrieve services: %s\n",
                                        sdb_strerror(errno, errbuf, sizeof(errbuf)));
-                       break;
+                       sdb_strbuf_append(buf, "{\"error\": \"failed to retrieve "
+                                       "services: %s\"}", errbuf);
                }
 
                while (sdb_llist_iter_has_next(svc_iter)) {