]> arthur.barton.de Git - ngircd-alex.git/blob - src/ngircd/conf.h
3c9cd2130c77cfa2860b840d6ce9cc546d027c6f
[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.9 2002/01/03 02:27:20 alex Exp $
13  *
14  * conf.h: Konfiguration des ngircd (Header)
15  *
16  * $Log: conf.h,v $
17  * Revision 1.9  2002/01/03 02:27:20  alex
18  * - das Server-Passwort kann nun konfiguriert werden.
19  *
20  * Revision 1.8  2002/01/02 02:49:16  alex
21  * - Konfigurationsdatei "Samba like" umgestellt.
22  * - es koennen nun mehrere Server und Oprtatoren konfiguriert werden.
23  *
24  * Revision 1.6  2001/12/31 02:18:51  alex
25  * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART),
26  * - neuen Header "defines.h" mit (fast) allen Konstanten.
27  * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes.
28  *
29  * Revision 1.5  2001/12/30 19:26:11  alex
30  * - Unterstuetzung fuer die Konfigurationsdatei eingebaut.
31  *
32  * Revision 1.4  2001/12/26 22:48:53  alex
33  * - MOTD-Datei ist nun konfigurierbar und wird gelesen.
34  *
35  * Revision 1.3  2001/12/26 14:45:37  alex
36  * - "Code Cleanups".
37  *
38  * Revision 1.2  2001/12/26 03:19:57  alex
39  * - erste Konfigurations-Variablen definiert: PING/PONG-Timeout.
40  *
41  * Revision 1.1  2001/12/12 17:18:20  alex
42  * - Modul fuer Server-Konfiguration begonnen.
43  */
44
45
46 #ifndef __conf_h__
47 #define __conf_h__
48
49 #include <time.h>
50
51
52 typedef struct _Conf_Oper
53 {
54         CHAR name[CLIENT_PASS_LEN];
55         CHAR pwd[CLIENT_PASS_LEN];
56 } CONF_OPER;
57
58 typedef struct _Conf_Server
59 {
60         CHAR host[HOST_LEN];
61         CHAR ip[16];
62         CHAR name[CLIENT_ID_LEN];
63         CHAR pwd[CLIENT_PASS_LEN];
64         INT port;
65         time_t lasttry;
66         RES_STAT *res_stat;
67 } CONF_SERVER;
68
69
70 /* Konfigurationsdatei */
71 GLOBAL CHAR Conf_File[FNAME_LEN];
72
73 /* Name ("Nick") des Servers */
74 GLOBAL CHAR Conf_ServerName[CLIENT_ID_LEN];
75
76 /* Servers-Info-Text */
77 GLOBAL CHAR Conf_ServerInfo[CLIENT_INFO_LEN];
78
79 /* Server-Passwort */
80 GLOBAL CHAR Conf_ServerPwd[CLIENT_PASS_LEN];
81
82 /* Datei mit MOTD-Text */
83 GLOBAL CHAR Conf_MotdFile[FNAME_LEN];
84
85 /* Ports, auf denen der Server Verbindungen entgegen nimmt */
86 GLOBAL INT Conf_ListenPorts[MAX_LISTEN_PORTS];
87 GLOBAL INT Conf_ListenPorts_Count;
88
89 /* Timeouts fuer PING und PONG */
90 GLOBAL INT Conf_PingTimeout;
91 GLOBAL INT Conf_PongTimeout;
92
93 /* Sekunden zwischen Verbindungsversuchen zu anderen Servern */
94 GLOBAL INT Conf_ConnectRetry;
95
96 /* Operatoren */
97 GLOBAL CONF_OPER Conf_Oper[MAX_OPERATORS];
98 GLOBAL INT Conf_Oper_Count;
99
100 /* Server */
101 GLOBAL CONF_SERVER Conf_Server[MAX_SERVERS];
102 GLOBAL INT Conf_Server_Count;
103
104
105 GLOBAL VOID Conf_Init( VOID );
106 GLOBAL VOID Conf_Exit( VOID );
107
108
109 #endif
110
111
112 /* -eof- */