2 * onak-conf.h - Routines related to runtime config.
4 * Jonathan McDowell <noodles@earth.li>
6 * Copyright 2002 Project Purple
10 #define __ONAK_CONF_H_
15 * struct onak_config - Runtime configuration for onak.
16 * @maxkeys: The maximum number of keys a query should return.
17 * @thissite: Our email address that servers sync with.
18 * @adminemail: The email address of the server admin.
19 * @mta: The mta to invoke to send sync mails.
20 * @syncsites: A linked list of sites we sync with.
22 * @db_dir: The path to the directory containing the database files.
24 * @pg_dbhost: The host that Postgres is running on.
25 * @pg_dbname: The database name.
26 * @pg_dbuser: The user we should connect as.
27 * @pg_dbpass: The password for the user.
29 * This structure holds various runtime configuration options for onak. It
30 * will eventually be populated from the config file.
44 * Set if we're using keyd as the backend.
49 * Options for any database backend that needs a directory, be it the
50 * file, db2 or db3 options.
55 * Options for the Postgres backend.
63 * Options for the dynamic backend.
68 struct dbfuncs *dbbackend;
72 * config - The variable containing our runtime config.
74 extern struct onak_config config;
77 * readconfig - read the onak config.
78 * @configfile - the config file to read.
80 * Read in our config file. If config file is NULL read in the compile
83 void readconfig(const char *configfile);
86 * cleanupconfig - clean up the config when we're shutting down.
88 void cleanupconfig(void);
90 #endif /* __ONAK_CONF_H_ */