]> arthur.barton.de Git - ngircd-alex.git/blob - src/ngircd/conn.h
- neue Funktion Conn_LastPing().
[ngircd-alex.git] / src / ngircd / conn.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: conn.h,v 1.11 2002/02/11 01:00:50 alex Exp $
13  *
14  * conn.h: Verwaltung aller Netz-Verbindungen ("connections") (Header)
15  *
16  * $Log: conn.h,v $
17  * Revision 1.11  2002/02/11 01:00:50  alex
18  * - neue Funktion Conn_LastPing().
19  *
20  * Revision 1.10  2002/01/06 15:18:15  alex
21  * - Loglevel und Meldungen nochmals geaendert. Level passen nun besser.
22  *
23  * Revision 1.9  2002/01/02 02:44:36  alex
24  * - neue Defines fuer max. Anzahl Server und Operatoren.
25  *
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.
30  *
31  * Revision 1.7  2001/12/26 14:45:37  alex
32  * - "Code Cleanups".
33  *
34  * Revision 1.6  2001/12/25 22:03:47  alex
35  * - Conn_Close() eingefuehrt: war die lokale Funktion Close_Connection().
36  *
37  * Revision 1.5  2001/12/23 21:57:48  alex
38  * - Conn_WriteStr() unterstuetzt nun variable Parameter.
39  *
40  * Revision 1.4  2001/12/15 00:08:27  alex
41  * - neue globale Funktionen: Conn_Write() und Conn_WriteStr().
42  *
43  * Revision 1.3  2001/12/14 08:15:45  alex
44  * - CONN_ID wird definiert.
45  *
46  * Revision 1.2  2001/12/13 01:33:32  alex
47  * - Conn_Handler() unterstuetzt nun einen Timeout (in Sekunden).
48  *
49  * Revision 1.1  2001/12/12 17:18:38  alex
50  * - Modul zur Verwaltung aller Netzwerk-Verbindungen begonnen.
51  */
52
53
54 #ifndef __conn_h__
55 #define __conn_h__
56
57
58 typedef INT CONN_ID;
59
60 typedef struct _Res_Stat
61 {
62         INT pid;                        /* PID des Child-Prozess */
63         INT pipe[2];                    /* Pipe fuer IPC */
64 } RES_STAT;
65
66
67 GLOBAL VOID Conn_Init( VOID );
68 GLOBAL VOID Conn_Exit( VOID );
69
70 GLOBAL BOOLEAN Conn_NewListener( CONST INT Port );
71
72 GLOBAL VOID Conn_Handler( INT Timeout );
73
74 GLOBAL BOOLEAN Conn_Write( CONN_ID Idx, CHAR *Data, INT Len );
75 GLOBAL BOOLEAN Conn_WriteStr( CONN_ID Idx, CHAR *Format, ... );
76
77 GLOBAL VOID Conn_Close( CONN_ID Idx, CHAR *LogMsg, CHAR *FwdMsg, BOOLEAN InformClient );
78
79 GLOBAL VOID Conn_UpdateIdle( CONN_ID Idx );
80 GLOBAL INT32 Conn_GetIdle( CONN_ID Idx );
81 GLOBAL INT32 Conn_LastPing( CONN_ID Idx );
82
83
84 #endif
85
86
87 /* -eof- */