Code

frontend: Added simple implementation of sdb_fe_exec().
[sysdb.git] / src / frontend / query.c
index fa493a6dd04be5a8139c0cae0485d2bea43703c6..ffec03aef40bc406a2619cc1972f9630dc5a8505 100644 (file)
@@ -27,9 +27,9 @@
 
 #include "sysdb.h"
 
-#include "core/error.h"
 #include "core/store.h"
 #include "frontend/connection-private.h"
+#include "utils/error.h"
 #include "utils/strbuf.h"
 
 #include <errno.h>
  * public API
  */
 
+int
+sdb_fe_exec(sdb_conn_t *conn, sdb_conn_node_t *node)
+{
+       if (! node)
+               return -1;
+
+       switch (node->cmd) {
+               case CONNECTION_LIST:
+                       return sdb_fe_list(conn);
+
+               default:
+                       sdb_log(SDB_LOG_ERR, "frontend: Unknown command %i", node->cmd);
+                       return -1;
+       }
+       return -1;
+} /* sdb_fe_exec */
+
 int
 sdb_fe_list(sdb_conn_t *conn)
 {
@@ -55,7 +72,7 @@ sdb_fe_list(sdb_conn_t *conn)
                return -1;
        }
 
-       if (sdb_store_tojson(buf)) {
+       if (sdb_store_tojson(buf, /* flags = */ 0)) {
                sdb_log(SDB_LOG_ERR, "frontend: Failed to serialize "
                                "store to JSON");
                sdb_strbuf_sprintf(conn->errbuf, "Out of memory");
@@ -67,7 +84,7 @@ sdb_fe_list(sdb_conn_t *conn)
                        (uint32_t)sdb_strbuf_len(buf), sdb_strbuf_string(buf));
        sdb_strbuf_destroy(buf);
        return 0;
-} /* session_start */
+} /* sdb_fe_list */
 
 /* vim: set tw=78 sw=4 ts=4 noexpandtab : */