summaryrefslogtreecommitdiffstats
path: root/debian/htdig/htdig-3.2.0b6/db/env_method.c
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2021-11-05 13:28:23 +0100
committerSlávek Banko <slavek.banko@axis.cz>2021-11-05 13:28:23 +0100
commit8c787c3591c1c885b91a54128835b400858c5cca (patch)
treeeca1b776912a305c4d45b3964038278a2fae1ead /debian/htdig/htdig-3.2.0b6/db/env_method.c
parentfe188b907cdf30dfdfe0eba9412e7f8749fec158 (diff)
downloadextra-dependencies-8c787c3591c1c885b91a54128835b400858c5cca.tar.gz
extra-dependencies-8c787c3591c1c885b91a54128835b400858c5cca.zip
DEB htdig: Added to repository.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'debian/htdig/htdig-3.2.0b6/db/env_method.c')
-rw-r--r--debian/htdig/htdig-3.2.0b6/db/env_method.c372
1 files changed, 372 insertions, 0 deletions
diff --git a/debian/htdig/htdig-3.2.0b6/db/env_method.c b/debian/htdig/htdig-3.2.0b6/db/env_method.c
new file mode 100644
index 00000000..52132c66
--- /dev/null
+++ b/debian/htdig/htdig-3.2.0b6/db/env_method.c
@@ -0,0 +1,372 @@
+/*-
+ * See the file LICENSE for redistribution information.
+ *
+ * Copyright (c) 1999
+ * Sleepycat Software. All rights reserved.
+ */
+
+#include "db_config.h"
+
+#ifndef lint
+static const char sccsid[] = "@(#)env_method.c 11.5 (Sleepycat) 9/16/99";
+#endif /* not lint */
+
+#ifndef NO_SYSTEM_INCLUDES
+#include <sys/types.h>
+
+#include <errno.h>
+#include <string.h>
+#endif
+
+#include "db_int.h"
+#include "db_shash.h"
+#include "db_page.h"
+#include "db_am.h"
+#include "lock.h"
+#include "log.h"
+#include "mp.h"
+#include "txn.h"
+
+DB_GLOBALS CDB___db_global_values = {
+ 1, /* db_set_mutexlocks */
+ 0, /* db_set_pageyield */
+ 1, /* db_set_panic */
+ 0, /* db_set_region_init */
+ 0, /* db_set_tas_spins */
+ /* XA environment queue */
+ {NULL, &CDB___db_global_values.db_envq.tqh_first}
+};
+
+static void CDB___dbenv_err __P((const DB_ENV *, int, const char *, ...));
+static void CDB___dbenv_errx __P((const DB_ENV *, const char *, ...));
+static void CDB___dbenv_set_errcall __P((DB_ENV *, void (*)(const char *, char *)));
+static void CDB___dbenv_set_errfile __P((DB_ENV *, FILE *));
+static void CDB___dbenv_set_errpfx __P((DB_ENV *, const char *));
+static void CDB___dbenv_set_feedback __P((DB_ENV *, void (*)(DB_ENV *, int, int)));
+static int CDB___dbenv_set_mutexlocks __P((DB_ENV *, int));
+static int CDB___dbenv_set_pageyield __P((DB_ENV *, int));
+static int CDB___dbenv_set_panic __P((DB_ENV *, int));
+static void CDB___dbenv_set_paniccall __P((DB_ENV *, void (*)(DB_ENV *, int)));
+static int CDB___dbenv_set_recovery_init __P((DB_ENV *, int (*)(DB_ENV *)));
+static int CDB___dbenv_set_region_init __P((DB_ENV *, int));
+static int CDB___dbenv_set_tas_spins __P((DB_ENV *, u_int32_t));
+static int CDB___dbenv_set_verbose __P((DB_ENV *, u_int32_t, int));
+
+/*
+ * CDB_db_env_create --
+ * DB_ENV constructor.
+ */
+int
+CDB_db_env_create(dbenvpp, flags)
+ DB_ENV **dbenvpp;
+ u_int32_t flags;
+{
+ DB_ENV *dbenv;
+ int ret;
+
+ /*
+ * !!!
+ * We can't call the flags-checking routines, we don't have an
+ * environment yet.
+ */
+ if (flags != 0)
+ return (EINVAL);
+
+ if ((ret = CDB___os_calloc(1, sizeof(*dbenv), &dbenv)) != 0)
+ return (ret);
+
+ if ((ret = CDB___dbenv_init(dbenv)) != 0) {
+ CDB___os_free(dbenv, sizeof(*dbenv));
+ return (ret);
+ }
+
+ *dbenvpp = dbenv;
+ return (0);
+}
+
+/*
+ * CDB___dbenv_init --
+ * Initialize a DB_ENV structure.
+ *
+ * PUBLIC: int CDB___dbenv_init __P((DB_ENV *));
+ */
+int
+CDB___dbenv_init(dbenv)
+ DB_ENV *dbenv;
+{
+ dbenv->close = CDB___dbenv_close;
+ dbenv->err = CDB___dbenv_err;
+ dbenv->errx = CDB___dbenv_errx;
+ dbenv->open = CDB___dbenv_open;
+ dbenv->remove = CDB___dbenv_remove;
+ dbenv->set_errcall = CDB___dbenv_set_errcall;
+ dbenv->set_errfile = CDB___dbenv_set_errfile;
+ dbenv->set_errpfx = CDB___dbenv_set_errpfx;
+ dbenv->set_feedback = CDB___dbenv_set_feedback;
+ dbenv->set_mutexlocks = CDB___dbenv_set_mutexlocks;
+ dbenv->set_pageyield = CDB___dbenv_set_pageyield;
+ dbenv->set_panic = CDB___dbenv_set_panic;
+ dbenv->set_paniccall = CDB___dbenv_set_paniccall;
+ dbenv->set_recovery_init = CDB___dbenv_set_recovery_init;
+ dbenv->set_region_init = CDB___dbenv_set_region_init;
+ dbenv->set_tas_spins = CDB___dbenv_set_tas_spins;
+ dbenv->set_verbose = CDB___dbenv_set_verbose;
+
+ CDB___log_dbenv_create(dbenv); /* Subsystem specific. */
+ CDB___lock_dbenv_create(dbenv);
+ CDB___memp_dbenv_create(dbenv);
+ CDB___txn_dbenv_create(dbenv);
+ CDB___os_dbenv_create(dbenv);
+
+ return (0);
+}
+
+/*
+ * CDB___dbenv_err --
+ * Error message, including the standard error string.
+ */
+static void
+#if defined(__STDC__) || defined(_MSC_VER) /* WIN32 */
+CDB___dbenv_err(const DB_ENV *dbenv, int error, const char *fmt, ...)
+#else
+CDB___dbenv_err(dbenv, error, fmt, va_alist)
+ const DB_ENV *dbenv;
+ int error;
+ const char *fmt;
+ va_dcl
+#endif
+{
+ va_list ap;
+
+#if defined(__STDC__) || defined(_MSC_VER) /* WIN32 */
+ va_start(ap, fmt);
+#else
+ va_start(ap);
+#endif
+ CDB___db_real_err(dbenv, error, 1, 1, fmt, ap);
+
+ va_end(ap);
+}
+
+/*
+ * CDB___dbenv_errx --
+ * Error message.
+ */
+static void
+#if defined(__STDC__) || defined(_MSC_VER) /* WIN32 */
+CDB___dbenv_errx(const DB_ENV *dbenv, const char *fmt, ...)
+#else
+CDB___dbenv_errx(dbenv, fmt, va_alist)
+ const DB_ENV *dbenv;
+ const char *fmt;
+ va_dcl
+#endif
+{
+ va_list ap;
+
+#if defined(__STDC__) || defined(_MSC_VER) /* WIN32 */
+ va_start(ap, fmt);
+#else
+ va_start(ap);
+#endif
+ CDB___db_real_err(dbenv, 0, 0, 1, fmt, ap);
+
+ va_end(ap);
+}
+
+static void
+CDB___dbenv_set_errcall(dbenv, errcall)
+ DB_ENV *dbenv;
+ void (*errcall) __P((const char *, char *));
+{
+ dbenv->db_errcall = errcall;
+}
+
+static void
+CDB___dbenv_set_errfile(dbenv, errfile)
+ DB_ENV *dbenv;
+ FILE *errfile;
+{
+ dbenv->db_errfile = errfile;
+}
+
+static void
+CDB___dbenv_set_errpfx(dbenv, errpfx)
+ DB_ENV *dbenv;
+ const char *errpfx;
+{
+ dbenv->db_errpfx = errpfx;
+}
+
+static void
+CDB___dbenv_set_feedback(dbenv, feedback)
+ DB_ENV *dbenv;
+ void (*feedback) __P((DB_ENV *, int, int));
+{
+ dbenv->db_feedback = feedback;
+}
+
+static int
+CDB___dbenv_set_mutexlocks(dbenv, onoff)
+ DB_ENV *dbenv;
+ int onoff;
+{
+ COMPQUIET(dbenv, NULL);
+
+ DB_GLOBAL(db_mutexlocks) = onoff;
+ return (0);
+}
+
+static int
+CDB___dbenv_set_pageyield(dbenv, onoff)
+ DB_ENV *dbenv;
+ int onoff;
+{
+ COMPQUIET(dbenv, NULL);
+
+ DB_GLOBAL(db_pageyield) = onoff;
+ return (0);
+}
+
+static int /* !!!: Undocumented. */
+CDB___dbenv_set_panic(dbenv, onoff)
+ DB_ENV *dbenv;
+ int onoff;
+{
+ COMPQUIET(dbenv, NULL);
+
+ DB_GLOBAL(db_panic) = onoff;
+ return (0);
+}
+
+static void
+CDB___dbenv_set_paniccall(dbenv, paniccall)
+ DB_ENV *dbenv;
+ void (*paniccall) __P((DB_ENV *, int));
+{
+ dbenv->db_paniccall = paniccall;
+}
+
+static int
+CDB___dbenv_set_recovery_init(dbenv, recovery_init)
+ DB_ENV *dbenv;
+ int (*recovery_init) __P((DB_ENV *));
+{
+ ENV_ILLEGAL_AFTER_OPEN(dbenv, "set_recovery_init");
+
+ dbenv->db_recovery_init = recovery_init;
+
+ return (0);
+}
+
+static int
+CDB___dbenv_set_region_init(dbenv, onoff)
+ DB_ENV *dbenv;
+ int onoff;
+{
+ COMPQUIET(dbenv, NULL);
+
+ DB_GLOBAL(db_region_init) = onoff;
+ return (0);
+}
+
+static int
+CDB___dbenv_set_tas_spins(dbenv, tas_spins)
+ DB_ENV *dbenv;
+ u_int32_t tas_spins;
+{
+ COMPQUIET(dbenv, NULL);
+
+ DB_GLOBAL(db_tas_spins) = tas_spins;
+ return (0);
+}
+
+static int
+CDB___dbenv_set_verbose(dbenv, which, onoff)
+ DB_ENV *dbenv;
+ u_int32_t which;
+ int onoff;
+{
+ switch (which) {
+ case DB_VERB_CHKPOINT:
+ case DB_VERB_DEADLOCK:
+ case DB_VERB_RECOVERY:
+ case DB_VERB_WAITSFOR:
+ if (onoff)
+ FLD_SET(dbenv->verbose, which);
+ else
+ FLD_CLR(dbenv->verbose, which);
+ break;
+ default:
+ return (EINVAL);
+ }
+ return (0);
+}
+
+/*
+ * CDB___db_mi_env --
+ * Method illegally called with public environment.
+ *
+ * PUBLIC: int CDB___db_mi_env __P((DB_ENV *, const char *));
+ */
+int
+CDB___db_mi_env(dbenv, name)
+ DB_ENV *dbenv;
+ const char *name;
+{
+ CDB___db_err(dbenv, "%s: method meaningless in shared environment", name);
+ return (EINVAL);
+}
+
+/*
+ * CDB___db_mi_open --
+ * Method illegally called after open.
+ *
+ * PUBLIC: int CDB___db_mi_open __P((DB_ENV *, const char *, int));
+ */
+int
+CDB___db_mi_open(dbenv, name, after)
+ DB_ENV *dbenv;
+ const char *name;
+ int after;
+{
+ CDB___db_err(dbenv,
+ "%s: method meaningless %s open", name, after ? "after" : "before");
+ return (EINVAL);
+}
+
+/*
+ * CDB___db_env_config --
+ * Method or function called without subsystem being configured.
+ *
+ * PUBLIC: int CDB___db_env_config __P((DB_ENV *, int));
+ */
+int
+CDB___db_env_config(dbenv, subsystem)
+ DB_ENV *dbenv;
+ int subsystem;
+{
+ const char *name;
+
+ switch (subsystem) {
+ case DB_INIT_LOCK:
+ name = "lock";
+ break;
+ case DB_INIT_LOG:
+ name = "log";
+ break;
+ case DB_INIT_MPOOL:
+ name = "mpool";
+ break;
+ case DB_INIT_TXN:
+ name = "txn";
+ break;
+ default:
+ name = "unknown";
+ break;
+ }
+ CDB___db_err(dbenv,
+ "%s interface called with environment not configured for that subsystem",
+ name);
+ return (EINVAL);
+}