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.9 2002/01/02 02:44:36 alex Exp $
14 * conn.h: Verwaltung aller Netz-Verbindungen ("connections") (Header)
17 * Revision 1.9 2002/01/02 02:44:36 alex
18 * - neue Defines fuer max. Anzahl Server und Operatoren.
20 * Revision 1.8 2001/12/31 02:18:51 alex
21 * - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART),
22 * - neuen Header "defines.h" mit (fast) allen Konstanten.
23 * - Code Cleanups und viele "kleine" Aenderungen & Bugfixes.
25 * Revision 1.7 2001/12/26 14:45:37 alex
28 * Revision 1.6 2001/12/25 22:03:47 alex
29 * - Conn_Close() eingefuehrt: war die lokale Funktion Close_Connection().
31 * Revision 1.5 2001/12/23 21:57:48 alex
32 * - Conn_WriteStr() unterstuetzt nun variable Parameter.
34 * Revision 1.4 2001/12/15 00:08:27 alex
35 * - neue globale Funktionen: Conn_Write() und Conn_WriteStr().
37 * Revision 1.3 2001/12/14 08:15:45 alex
38 * - CONN_ID wird definiert.
40 * Revision 1.2 2001/12/13 01:33:32 alex
41 * - Conn_Handler() unterstuetzt nun einen Timeout (in Sekunden).
43 * Revision 1.1 2001/12/12 17:18:38 alex
44 * - Modul zur Verwaltung aller Netzwerk-Verbindungen begonnen.
54 typedef struct _Res_Stat
56 INT pid; /* PID des Child-Prozess */
57 INT pipe[2]; /* Pipe fuer IPC */
61 GLOBAL VOID Conn_Init( VOID );
62 GLOBAL VOID Conn_Exit( VOID );
64 GLOBAL BOOLEAN Conn_NewListener( CONST INT Port );
66 GLOBAL VOID Conn_Handler( INT Timeout );
68 GLOBAL BOOLEAN Conn_Write( CONN_ID Idx, CHAR *Data, INT Len );
69 GLOBAL BOOLEAN Conn_WriteStr( CONN_ID Idx, CHAR *Format, ... );
71 GLOBAL VOID Conn_Close( CONN_ID Idx, CHAR *Msg );
73 GLOBAL VOID Conn_UpdateIdle( CONN_ID Idx );
74 GLOBAL INT32 Conn_GetIdle( CONN_ID Idx );