Use C99 uint32_t rather than u_int32_t
[onak.git] / onak-conf.h
index 6afb43ab9c492915644076281c274cafd5857c2e..518c30616348d1af8cb1e442f1d7b713e3c15657 100644 (file)
@@ -1,18 +1,26 @@
 /*
  * 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.
  *
- * $Id: onak-conf.h,v 1.9 2003/06/04 20:57:11 noodles Exp $
+ * 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.2"
-#define CONFIGFILE "/home/noodles/projects/onak/onak.conf"
+#include "keydb.h"
 
 /*
  *     struct onak_config - Runtime configuration for onak.
@@ -43,6 +51,11 @@ struct onak_config {
        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
         * file, db2 or db3 options.
@@ -56,6 +69,14 @@ struct onak_config {
        char *pg_dbname;
        char *pg_dbuser;
        char *pg_dbpass;
+
+       /*
+        * Options for the dynamic backend.
+        */
+       char *db_backend;
+       char *backends_dir;
+
+       struct dbfuncs *dbbackend;
 };
 
 /*
@@ -65,8 +86,12 @@ extern struct onak_config config;
 
 /*
  *     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(void);
+void readconfig(const char *configfile);
 
 /*
  *     cleanupconfig - clean up the config when we're shutting down.