summaryrefslogtreecommitdiffstats
path: root/utils/nfsdcld/sqlite.h
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2012-04-26 11:43:30 -0400
committerSteve Dickson <steved@redhat.com>2012-04-26 13:25:04 -0400
commit3e859abefffafd8718b5f1f76da7b129fc18e281 (patch)
tree7e5fe58c202e3f3706735a20580ca58c88ba898f /utils/nfsdcld/sqlite.h
parentdfebe7f4f25a12b615195f339192fa8837d9b5c9 (diff)
downloadnfs-utils-3e859abefffafd8718b5f1f76da7b129fc18e281.tar.gz
nfs-utils-3e859abefffafd8718b5f1f76da7b129fc18e281.tar.xz
nfs-utils-3e859abefffafd8718b5f1f76da7b129fc18e281.zip
nfsdcld: add routines for a sqlite backend database
Rather than roll our own "storage engine", use sqlite instead. It fits the bill nicely as it does: - durable on-disk storage - the ability to constrain record uniqueness - a facility for collating and searching the host records ...it does add a build dependency to nfs-utils, but almost all modern distros provide those packages. The current incarnation of this code dynamically links against a provided sqlite library, but we could also consider including their single-file "amalgamation" to reduce dependencies (though with all the caveats that that entails). Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'utils/nfsdcld/sqlite.h')
-rw-r--r--utils/nfsdcld/sqlite.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/utils/nfsdcld/sqlite.h b/utils/nfsdcld/sqlite.h
new file mode 100644
index 0000000..ba4c213
--- /dev/null
+++ b/utils/nfsdcld/sqlite.h
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2011 Red Hat, Jeff Layton <jlayton@redhat.com>
+ *
+ * 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 2
+ * 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef _SQLITE_H_
+#define _SQLITE_H_
+
+int sqlite_maindb_init(char *topdir);
+int sqlite_insert_client(const unsigned char *clname, const size_t namelen);
+
+#endif /* _SQLITE_H */