171b7fffee7b4259f654a0747bb528d1cfcf3012
[ngircd-alex.git] / src / ngircd / defines.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: defines.h,v 1.37 2002/11/26 23:07:24 alex Exp $
13  *
14  * defines.h: (globale) Konstanten
15  */
16
17 #ifndef __defines_h__
18 #define __defines_h__
19
20
21 #define NONE -1
22
23 #define TIME_RES 2                      /* Zeit-Aufloesung des Servers in Sekunden */
24
25 #define FNAME_LEN 256                   /* max. Laenge eines Dateinamen */
26
27 #define LINE_LEN 256                    /* max. Laenge einer Konfigurationszeile */
28
29 #define HOST_LEN 256                    /* max. Laenge eines Hostnamen */
30
31 #define MAX_LISTEN_PORTS 16             /* max. Anzahl von Listen-Ports */
32
33 #define MAX_OPERATORS 16                /* max. Anzahl konfigurierbarer Operatoren */
34
35 #define MAX_SERVERS 16                  /* max. Anzahl konfigurierbarer Server ("Peers") */
36
37 #define MAX_DEFCHANNELS 16              /* max. Anzahl vorkonfigurierbarerr Channels */
38
39 #define CONNECTION_POOL 100             /* Anzahl Verbindungs-Strukturen, die blockweise alloziert werden */
40
41 #define CLIENT_ID_LEN 64                /* max. ID-Laenge; vgl. RFC 2812, 1.1 und 1.2.1 */
42 #define CLIENT_NICK_LEN 10              /* max. Nick-Laenge; vgl. RFC 2812, 1.2.1 */
43 #define CLIENT_PASS_LEN 9               /* max. Laenge des Passwortes */
44 #define CLIENT_USER_LEN 9               /* max. Laenge des Benutzernamen ("Login") */
45 #define CLIENT_NAME_LEN 32              /* max. Laenge des "langen Benutzernamen" */
46 #define CLIENT_HOST_LEN 64              /* max. Laenge des Hostname */
47 #define CLIENT_MODE_LEN 8               /* max. Laenge der Client-Modes */
48 #define CLIENT_INFO_LEN 64              /* max. Infotext-Laenge (Server) */
49 #define CLIENT_AWAY_LEN 128             /* max. Laenger der AWAY-Nachricht */
50 #define CLIENT_FLAGS_LEN 100            /* max. Laenger der Client-Flags */
51
52 #define CHANNEL_NAME_LEN 51             /* max. Laenge eines Channel-Namens, vgl. RFC 2812, 1.3 */
53 #define CHANNEL_MODE_LEN 8              /* max. Laenge der Channel-Modes */
54 #define CHANNEL_TOPIC_LEN 128           /* max. Laenge eines Channel-Topics */
55
56 #define COMMAND_LEN 513                 /* max. Laenge eines Befehls, vgl. RFC 2812, 3.2 */
57
58 #define READBUFFER_LEN 2048             /* Laenge des Lesepuffers je Verbindung (Bytes) */
59 #define WRITEBUFFER_LEN 4096            /* Laenge des Schreibpuffers je Verbindung (Bytes) */
60
61 #ifdef USE_ZLIB
62 #define ZREADBUFFER_LEN 1024            /* Laenge des Lesepuffers je Verbindung (Bytes) */
63 #define ZWRITEBUFFER_LEN 4096           /* Laenge des Schreibpuffers fuer Kompression (Bytes) */
64 #endif
65
66 #define PROTOVER "0210"                 /* implementierte Protokoll-Version (RFC 2813, 4.1.1) */
67 #define PROTOIRC "-IRC"                 /* Protokoll-Suffix (RFC 2813, 4.1.1) */
68 #define PROTOIRCPLUS "-IRC+"            /* Protokoll-Suffix f\9fr IRC+-Protokoll */
69
70 #ifdef IRCPLUS
71 # define IRCPLUSFLAGS "C"               /* IRC+-Flags, die immer zutreffen */
72 #endif
73
74 #define STARTUP_DELAY 1                 /* Erst n Sek. nach Start zu anderen Servern verbinden */
75 #define RECONNECT_DELAY 3               /* Server-Links erst nach 3 Sekunden versuchen, wieder aufzubauen */
76
77 #define USERMODES "aios"                /* unterstuetzte User-Modes */
78 #define CHANMODES "biImnoPtv"           /* unterstuetzte Channel-Modes */
79
80 #define CONNECTED TRUE                  /* fuer die irc-xxx-Module */
81 #define DISCONNECTED FALSE
82
83 #define DEFAULT_AWAY_MSG "Away"         /* Away-Meldung fuer User von anderen Servern */
84
85 #ifdef PROTOTYPES
86 # define CONFIG_FILE SYSCONFDIR"/ngircd.conf"
87 # define MOTD_FILE SYSCONFDIR"/ngircd.motd"
88 #else
89 # define CONFIG_FILE "ngircd.conf"
90 # define MOTD_FILE "ngircd.motd"
91 #endif
92 #define ERROR_DIR "/tmp"
93
94 #define MAX_LOG_MSG_LEN 256             /* max. Laenge einer Log-Meldung */
95
96 #define TOKEN_OUTBOUND -2               /* Kennzeichnung fuer ausgehende Server-Links im Aufbau */
97
98 #define NOTICE_TXTPREFIX "*** "         /* Kennzeichnung fuer Server-NOTICEs an User */
99
100
101 #endif
102
103
104 /* -eof- */