summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile3
-rw-r--r--compat_sqlite3_errstr.c18
-rw-r--r--config.h.post3
-rwxr-xr-xconfigure2
-rw-r--r--test-sqlite3_errstr.c8
5 files changed, 34 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index ca08821b..55798a9b 100644
--- a/Makefile
+++ b/Makefile
@@ -121,6 +121,7 @@ TESTSRCS = test-fgetln.c \
test-mmap.c \
test-ohash.c \
test-reallocarray.c \
+ test-sqlite3_errstr.c \
test-strcasestr.c \
test-strlcat.c \
test-strlcpy.c \
@@ -136,6 +137,7 @@ SRCS = apropos.c \
compat_getsubopt.c \
compat_ohash.c \
compat_reallocarray.c \
+ compat_sqlite3_errstr.c \
compat_strcasestr.c \
compat_strlcat.c \
compat_strlcpy.c \
@@ -281,6 +283,7 @@ COMPAT_OBJS = compat_fgetln.o \
compat_getsubopt.o \
compat_ohash.o \
compat_reallocarray.o \
+ compat_sqlite3_errstr.o \
compat_strcasestr.o \
compat_strlcat.o \
compat_strlcpy.o \
diff --git a/compat_sqlite3_errstr.c b/compat_sqlite3_errstr.c
new file mode 100644
index 00000000..b8d6eb58
--- /dev/null
+++ b/compat_sqlite3_errstr.c
@@ -0,0 +1,18 @@
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef HAVE_SQLITE3_ERRSTR
+
+int dummy;
+
+#else
+
+const char *
+sqlite3_errstr(int rc)
+{
+
+ return(rc ? "unknown error" : "not an error");
+}
+
+#endif
diff --git a/config.h.post b/config.h.post
index 07b53415..e95f5f53 100644
--- a/config.h.post
+++ b/config.h.post
@@ -23,6 +23,9 @@ extern char *suboptarg;
#ifndef HAVE_REALLOCARRAY
extern void *reallocarray(void *, size_t, size_t);
#endif
+#ifndef HAVE_SQLITE3_ERRSTR
+extern const char *sqlite3_errstr(int);
+#endif
#ifndef HAVE_STRCASESTR
extern char *strcasestr(const char *, const char *);
#endif
diff --git a/configure b/configure
index 0fd937f8..991c7669 100755
--- a/configure
+++ b/configure
@@ -35,6 +35,8 @@ runtest getsubopt GETSUBOPT
runtest mmap MMAP
runtest ohash OHASH -lutil
runtest reallocarray REALLOCARRAY
+runtest sqlite3_errstr SQLITE3_ERRSTR \
+ "-I/usr/local/include -L/usr/local/lib -lsqlite3"
runtest strcasestr STRCASESTR
runtest strlcat STRLCAT
runtest strlcpy STRLCPY
diff --git a/test-sqlite3_errstr.c b/test-sqlite3_errstr.c
new file mode 100644
index 00000000..041bf628
--- /dev/null
+++ b/test-sqlite3_errstr.c
@@ -0,0 +1,8 @@
+#include <string.h>
+#include <sqlite3.h>
+
+int
+main(void)
+{
+ return(strcmp(sqlite3_errstr(SQLITE_OK), "not an error"));
+}