citadel
About: Citadel is an advanced messaging and collaboration system for groupware and BBS applications (preferred OS: Linux).
  Fossies Dox: citadel.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

config.h
Go to the documentation of this file.
1// Copyright (c) 1987-2016 by the citadel.org team
2//
3// This program is open source software; you can redistribute it and/or modify
4// it under the terms of the GNU General Public License version 3.
5//
6// This program is distributed in the hope that it will be useful,
7// but WITHOUT ANY WARRANTY; without even the implied warranty of
8// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9// GNU General Public License for more details.
10
11#include "serv_extensions.h"
12#include "citadel_dirs.h"
13
14// This is the format of the legacy config file. Do not attempt to do anything with it other
15// than migrate it into the new format. Seriously -- DO NOT CHANGE IT. The only purpose of this
16// struct is to represent the OLD configuration format.
18 char c_nodename[16]; // short name of this node on a Citadel network
19 char c_fqdn[64]; // this site's fully qualified domain name
20 char c_humannode[21]; // human-readable site name
21 char c_niu_7[16];
22 uid_t c_niu_6;
23 char c_creataide; // 1 = creating a room auto-grants room aide privileges
24 int c_sleeping; // watchdog timer (seconds)
25 char c_initax; // initial access level for new users
26 char c_regiscall; // after c_regiscall logins user will be asked to register
27 char c_twitdetect; // automatically move messages from problem users to trashcan
28 char c_twitroom[ROOMNAMELEN]; // name of trashcan
29 char c_moreprompt[80]; // paginator prompt
30 char c_restrict; // require per-user permission to send Internet mail
31 long c_niu_1;
32 char c_site_location[32]; // geographic location of this Citadel site
33 char c_sysadm[26]; // name of system administrator
34 char c_niu_2[15];
36 int c_maxsessions; // maximum number of concurrent sessions allowed
37 char c_ip_addr[20]; // bind address for listening sockets
38 int c_port_number; // port number for Citadel protocol (usually 504)
40 struct ExpirePolicy c_ep; // default expire policy for the entire site
41 int c_userpurge; // user purge time (in days)
42 int c_roompurge; // room purge time (in days)
53 time_t c_net_freq;
60 char c_ldap_host[128];
62 char c_ldap_base_dn[256];
63 char c_ldap_bind_dn[256];
64 char c_ldap_bind_pw[256];
70 char c_niu_5;
74 char c_journal_dest[128];
79 char c_niu_8[256];
81 char c_niu_11[256];
82 char c_niu_12[256];
84 char c_master_user[32];
85 char c_master_pass[32];
86 char c_pager_program[256];
96};
97
98
100void shutdown_config_system(void);
101void put_config(void);
102void CtdlSetConfigStr(char *, char *);
103char *CtdlGetConfigStr(char *);
104int CtdlGetConfigInt(char *);
105long CtdlGetConfigLong(char *);
106void CtdlSetConfigInt(char *key, int value);
107void CtdlSetConfigLong(char *key, long value);
108void CtdlDelConfig(char *key);
109
110char *CtdlGetSysConfig(char *sysconfname);
111void CtdlPutSysConfig(char *sysconfname, char *sysconfdata);
112void validate_config(void);
113void netcfg_keyname(char *, long);
#define ROOMNAMELEN
Definition: citadel.h:56
void netcfg_keyname(char *, long)
Definition: netconfig.c:41
long CtdlGetConfigLong(char *)
Definition: config.c:428
void CtdlSetConfigLong(char *key, long value)
Definition: config.c:339
void put_config(void)
void shutdown_config_system(void)
Definition: config.c:308
char * CtdlGetConfigStr(char *)
Definition: config.c:384
void initialize_config_system(void)
Definition: config.c:217
void CtdlDelConfig(char *key)
Definition: config.c:361
void CtdlPutSysConfig(char *sysconfname, char *sysconfdata)
Definition: config.c:501
void CtdlSetConfigStr(char *, char *)
Definition: config.c:317
int CtdlGetConfigInt(char *)
Definition: config.c:417
void CtdlSetConfigInt(char *key, int value)
Definition: config.c:350
char * CtdlGetSysConfig(char *sysconfname)
Definition: config.c:443
void validate_config(void)
Definition: config.c:45
int c_nntps_port
Definition: config.h:95
int c_rfc822_strict_from
Definition: config.h:50
char c_niu_2[15]
Definition: config.h:34
int c_niu_10
Definition: config.h:80
char c_imap_keep_from
Definition: config.h:87
char c_master_user[32]
Definition: config.h:84
time_t c_net_freq
Definition: config.h:53
char c_sysadm[26]
Definition: config.h:33
char c_aideroom[128]
Definition: config.h:57
int c_min_workers
Definition: config.h:46
char c_fqdn[64]
Definition: config.h:19
time_t c_pop3_fetch
Definition: config.h:90
int c_purge_hour
Definition: config.h:58
int c_guest_logins
Definition: config.h:93
char c_twitdetect
Definition: config.h:27
char c_rbl_at_greeting
Definition: config.h:83
char c_moreprompt[80]
Definition: config.h:29
uid_t c_niu_6
Definition: config.h:22
int c_niu_3
Definition: config.h:35
int c_xmpp_c2s_port
Definition: config.h:88
int c_sleeping
Definition: config.h:24
char c_ldap_bind_pw[256]
Definition: config.h:64
char c_niu_5
Definition: config.h:70
char c_initax
Definition: config.h:25
int c_msa_port
Definition: config.h:65
char c_disable_newu
Definition: config.h:54
int c_imap_port
Definition: config.h:52
int c_max_workers
Definition: config.h:47
int c_aide_zap
Definition: config.h:51
int c_nntp_port
Definition: config.h:94
char c_restrict
Definition: config.h:30
char c_niu_8[256]
Definition: config.h:79
int c_pftcpdict_port
Definition: config.h:76
char c_site_location[32]
Definition: config.h:32
int c_maxsessions
Definition: config.h:36
char c_journal_pubmsgs
Definition: config.h:73
int c_ldap_port
Definition: config.h:61
int c_auth_mode
Definition: config.h:78
char c_ldap_base_dn[256]
Definition: config.h:62
char c_baseroom[128]
Definition: config.h:56
char c_ldap_host[128]
Definition: config.h:60
char c_auto_cull
Definition: config.h:69
int c_pop3_port
Definition: config.h:48
char c_master_pass[32]
Definition: config.h:85
int c_port_number
Definition: config.h:38
int c_xmpp_s2s_port
Definition: config.h:89
char c_nodename[16]
Definition: config.h:18
int c_spam_flag_only
Definition: config.h:92
char c_creataide
Definition: config.h:23
char c_twitroom[128]
Definition: config.h:28
char c_ip_addr[20]
Definition: config.h:37
long c_maxmsglen
Definition: config.h:45
char c_regiscall
Definition: config.h:26
time_t c_pop3_fastest
Definition: config.h:91
char c_default_cal_zone[128]
Definition: config.h:75
char c_humannode[21]
Definition: config.h:20
int c_imaps_port
Definition: config.h:66
char c_logpages[128]
Definition: config.h:43
int c_niu_9
Definition: config.h:77
int c_pop3s_port
Definition: config.h:67
char c_journal_dest[128]
Definition: config.h:74
long c_niu_1
Definition: config.h:31
int c_userpurge
Definition: config.h:41
int c_niu_4
Definition: config.h:39
char c_enable_fulltext
Definition: config.h:55
char c_niu_12[256]
Definition: config.h:82
struct ExpirePolicy c_mbxep
Definition: config.h:59
char c_pager_program[256]
Definition: config.h:86
char c_niu_11[256]
Definition: config.h:81
int c_roompurge
Definition: config.h:42
int c_smtps_port
Definition: config.h:68
struct ExpirePolicy c_ep
Definition: config.h:40
char c_niu_7[16]
Definition: config.h:21
int c_smtp_port
Definition: config.h:49
char c_ldap_bind_dn[256]
Definition: config.h:63
char c_createax
Definition: config.h:44
char c_allow_spoofing
Definition: config.h:71
char c_journal_email
Definition: config.h:72