/*
* onak-conf.h - Routines related to runtime config.
*
- * Jonathan McDowell <noodles@earth.li>
+ * Copyright 2002 Jonathan McDowell <noodles@earth.li>
*
- * Copyright 2002 Project Purple
+ * 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; version 2 of the License.
+ *
+ * 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 __ONAK_CONF_H_
#define __ONAK_CONF_H_
-#define VERSION "0.1.0"
-#define CONFIGFILE "/home/noodles/projects/onak/onak.conf"
+#include "keydb.h"
/*
* struct onak_config - Runtime configuration for onak.
char *adminemail;
char *mta;
struct ll *syncsites;
+ char *logfile;
+
+ /*
+ * Set if we're using keyd as the backend.
+ */
+ bool use_keyd;
/*
* Options for any database backend that needs a directory, be it the
char *pg_dbname;
char *pg_dbuser;
char *pg_dbpass;
+
+ /*
+ * Options for the dynamic backend.
+ */
+ char *db_backend;
+ char *backends_dir;
+
+ struct dbfuncs *dbbackend;
};
/*
/*
* readconfig - read the onak config.
+ * @configfile - the config file to read.
+ *
+ * Read in our config file. If config file is NULL read in the compile
+ * time default.
+ */
+void readconfig(const char *configfile);
+
+/*
+ * cleanupconfig - clean up the config when we're shutting down.
*/
-void readconfig(void);
+void cleanupconfig(void);
#endif /* __ONAK_CONF_H_ */