2 * ngIRCd -- The Next Generation IRC Daemon
3 * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
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.
12 * $Id: conn.h,v 1.11 2002/02/11 01:00:50 alex Exp $
14 * conn.h: Verwaltung aller Netz-Verbindungen ("connections") (Header)
17 * Revision 1.11 2002/02/11 01:00:50 alex
18 * - neue Funktion Conn_LastPing().
20 * Revision 1.10 2002/01/06 15:18:15 alex
21 * - Loglevel und Meldungen nochmals geaendert. Level passen nun besser.
23 * Revision 1.9 2002/01/02 02:44:36 alex
24 * - neue Defines fuer max. Anzahl Server und Operatoren.
26 * Revision 1.8 2001/12/31 02:18:51 alex
27 * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART),
28 * - neuen Header "defines.h" mit (fast) allen Konstanten.
29 * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes.
31 * Revision 1.7 2001/12/26 14:45:37 alex
34 * Revision 1.6 2001/12/25 22:03:47 alex
35 * - Conn_Close() eingefuehrt: war die lokale Funktion Close_Connection().
37 * Revision 1.5 2001/12/23 21:57:48 alex
38 * - Conn_WriteStr() unterstuetzt nun variable Parameter.
40 * Revision 1.4 2001/12/15 00:08:27 alex
41 * - neue globale Funktionen: Conn_Write() und Conn_WriteStr().
43 * Revision 1.3 2001/12/14 08:15:45 alex
44 * - CONN_ID wird definiert.
46 * Revision 1.2 2001/12/13 01:33:32 alex
47 * - Conn_Handler() unterstuetzt nun einen Timeout (in Sekunden).
49 * Revision 1.1 2001/12/12 17:18:38 alex
50 * - Modul zur Verwaltung aller Netzwerk-Verbindungen begonnen.
60 typedef struct _Res_Stat
62 INT pid; /* PID des Child-Prozess */
63 INT pipe[2]; /* Pipe fuer IPC */
67 GLOBAL VOID Conn_Init( VOID );
68 GLOBAL VOID Conn_Exit( VOID );
70 GLOBAL BOOLEAN Conn_NewListener( CONST INT Port );
72 GLOBAL VOID Conn_Handler( INT Timeout );
74 GLOBAL BOOLEAN Conn_Write( CONN_ID Idx, CHAR *Data, INT Len );
75 GLOBAL BOOLEAN Conn_WriteStr( CONN_ID Idx, CHAR *Format, ... );
77 GLOBAL VOID Conn_Close( CONN_ID Idx, CHAR *LogMsg, CHAR *FwdMsg, BOOLEAN InformClient );
79 GLOBAL VOID Conn_UpdateIdle( CONN_ID Idx );
80 GLOBAL INT32 Conn_GetIdle( CONN_ID Idx );
81 GLOBAL INT32 Conn_LastPing( CONN_ID Idx );