summaryrefslogtreecommitdiff
path: root/database.c
diff options
context:
space:
mode:
Diffstat (limited to 'database.c')
-rw-r--r--database.c62
1 files changed, 62 insertions, 0 deletions
diff --git a/database.c b/database.c
new file mode 100644
index 0000000..f13e8a2
--- /dev/null
+++ b/database.c
@@ -0,0 +1,62 @@
+/*
+ qureje is a database managment tool.
+ Copyright (C) 2022 Alessandro Iezzi <aiezzi AT alessandroiezzi PERIOD it>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
+#include <libpq-fe.h>
+#include "database.h"
+#include <stdlib.h>
+#include <string.h>
+
+static int MAX_SIZE_DBMS_NAME = 7; /* including \0 */
+static int MAX_SIZE_CONN_FIELD = 129; /* including \0 */
+
+static char *
+str_create(int size)
+{
+ char *str = (char *) malloc(sizeof (char) * size);
+ memset(str, '\0', size);
+
+ return str;
+}
+
+qureje_conn *
+qureje_conn_create()
+{
+ qureje_conn *conn = (qureje_conn *) malloc (sizeof (qureje_conn));
+
+ conn->type = str_create(MAX_SIZE_DBMS_NAME);
+ conn->host = str_create(MAX_SIZE_CONN_FIELD);
+ conn->user = str_create(MAX_SIZE_CONN_FIELD);
+ conn->password = str_create(MAX_SIZE_CONN_FIELD);
+ conn->dbname = str_create(MAX_SIZE_CONN_FIELD);
+
+ return conn;
+}
+
+qureje_conn *
+qureje_conn_create_from_arguments(int argc, char **argv)
+{
+ qureje_conn *conn = qureje_conn_create();
+
+
+ return conn;
+}
+
+void
+qureje_connect()
+{
+}