1
/* This code is in the public domain.
2
* $Nightmare: nightmare/include/config.h,v 1.32.2.2.2.2 2002/07/02 03:41:28 ejb Exp $
3
* $Id: newconf.h 1735 2006-07-19 02:35:40Z nenolod $
6
#ifndef _NEWCONF_H_INCLUDED
7
#define _NEWCONF_H_INCLUDED
13
void (*cf_func) (void *);
21
int (*tc_sfunc) (struct TopConf *);
22
int (*tc_efunc) (struct TopConf *);
23
rb_dlink_list tc_items;
24
struct ConfEntry *tc_entries;
28
#define CF_QSTRING 0x01
30
#define CF_STRING 0x03
38
#define CF_FLIST 0x1000
39
#define CF_MFLAG 0xFF00
41
typedef struct conf_parm_t_stru
43
struct conf_parm_t_stru *next;
49
struct conf_parm_t_stru *list;
55
extern struct TopConf *conf_cur_block;
57
extern char *current_file;
59
int read_config(char *);
60
int conf_start_block(char *, char *);
61
int conf_end_block(struct TopConf *);
62
int conf_call_set(struct TopConf *, char *, conf_parm_t *, int);
63
void conf_report_error(const char *, ...);
64
void newconf_init(void);
65
int add_conf_item(const char *topconf, const char *name, int type, void (*func) (void *));
66
int remove_conf_item(const char *topconf, const char *name);
67
int add_top_conf(const char *name, int (*sfunc) (struct TopConf *), int (*efunc) (struct TopConf *), struct ConfEntry *items);
68
int remove_top_conf(char *name);
69
struct TopConf *find_top_conf(const char *name);
70
struct ConfEntry *find_conf_item(const struct TopConf *top, const char *name);