- Konfigurationsdatei "Samba like" umgestellt.
[ngircd-alex.git] / src / ngircd / conf.h
1 /*
2  * ngIRCd -- The Next Generation IRC Daemon
3  * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
4  *
5  * Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen
6  * der GNU General Public License (GPL), wie von der Free Software Foundation
7  * herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2
8  * der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version.
9  * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
10  * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
11  *
12  * $Id: conf.h,v 1.8 2002/01/02 02:49:16 alex Exp $
13  *
14  * conf.h: Konfiguration des ngircd (Header)
15  *
16  * $Log: conf.h,v $
17  * Revision 1.8  2002/01/02 02:49:16  alex
18  * - Konfigurationsdatei "Samba like" umgestellt.
19  * - es koennen nun mehrere Server und Oprtatoren konfiguriert werden.
20  *
21  * Revision 1.6  2001/12/31 02:18:51  alex
22  * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART),
23  * - neuen Header "defines.h" mit (fast) allen Konstanten.
24  * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes.
25  *
26  * Revision 1.5  2001/12/30 19:26:11  alex
27  * - Unterstuetzung fuer die Konfigurationsdatei eingebaut.
28  *
29  * Revision 1.4  2001/12/26 22:48:53  alex
30  * - MOTD-Datei ist nun konfigurierbar und wird gelesen.
31  *
32  * Revision 1.3  2001/12/26 14:45:37  alex
33  * - "Code Cleanups".
34  *
35  * Revision 1.2  2001/12/26 03:19:57  alex
36  * - erste Konfigurations-Variablen definiert: PING/PONG-Timeout.
37  *
38  * Revision 1.1  2001/12/12 17:18:20  alex
39  * - Modul fuer Server-Konfiguration begonnen.
40  */
41
42
43 #ifndef __conf_h__
44 #define __conf_h__
45
46 #include <time.h>
47
48
49 typedef struct _Conf_Oper
50 {
51         CHAR name[CLIENT_PASS_LEN];
52         CHAR pwd[CLIENT_PASS_LEN];
53 } CONF_OPER;
54
55 typedef struct _Conf_Server
56 {
57         CHAR host[HOST_LEN];
58         CHAR ip[16];
59         CHAR name[CLIENT_ID_LEN];
60         CHAR pwd[CLIENT_PASS_LEN];
61         INT port;
62         time_t lasttry;
63         RES_STAT *res_stat;
64 } CONF_SERVER;
65
66
67 /* Konfigurationsdatei */
68 GLOBAL CHAR Conf_File[FNAME_LEN];
69
70 /* Name ("Nick") des Servers */
71 GLOBAL CHAR Conf_ServerName[CLIENT_ID_LEN];
72
73 /* Servers-Info-Text */
74 GLOBAL CHAR Conf_ServerInfo[CLIENT_INFO_LEN];
75
76 /* Datei mit MOTD-Text */
77 GLOBAL CHAR Conf_MotdFile[FNAME_LEN];
78
79 /* Ports, auf denen der Server Verbindungen entgegen nimmt */
80 GLOBAL INT Conf_ListenPorts[MAX_LISTEN_PORTS];
81 GLOBAL INT Conf_ListenPorts_Count;
82
83 /* Timeouts fuer PING und PONG */
84 GLOBAL INT Conf_PingTimeout;
85 GLOBAL INT Conf_PongTimeout;
86
87 /* Sekunden zwischen Verbindungsversuchen zu anderen Servern */
88 GLOBAL INT Conf_ConnectRetry;
89
90 /* Operatoren */
91 GLOBAL CONF_OPER Conf_Oper[MAX_OPERATORS];
92 GLOBAL INT Conf_Oper_Count;
93
94 /* Server */
95 GLOBAL CONF_SERVER Conf_Server[MAX_SERVERS];
96 GLOBAL INT Conf_Server_Count;
97
98
99 GLOBAL VOID Conf_Init( VOID );
100 GLOBAL VOID Conf_Exit( VOID );
101
102
103 #endif
104
105
106 /* -eof- */