]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - include/connection.h
1641b976d905b0be7d0acfa7624ffdb8d433ca2e
[user/henk/code/inspircd.git] / include / connection.h
1 /*       +------------------------------------+\r *       | Inspire Internet Relay Chat Daemon |\r *       +------------------------------------+\r *\r *  InspIRCd: (C) 2002-2007 InspIRCd Development Team\r * See: http://www.inspircd.org/wiki/index.php/Credits\r *\r * This program is free but copyrighted software; see\r *            the file COPYING for details.\r *\r * ---------------------------------------------------\r */\r\r#ifndef __CONNECTION_H__\r#define __CONNECTION_H__\r\r#include <time.h>\r#include "inspircd_config.h"\r#include "base.h"\r#include "socketengine.h"\r\r/** connection is the base class of userrec, and holds basic user properties.\r * This can be extended for holding other user-like objects in the future.\r */\rclass CoreExport connection : public EventHandler\r{\r public:\r   /** Hostname of connection.\r     * This should be valid as per RFC1035.\r         */\r    char host[65];\r\r        /** Stats counter for bytes inbound\r     */\r    int bytes_in;\r\r /** Stats counter for bytes outbound\r    */\r    int bytes_out;\r\r        /** Stats counter for commands inbound\r  */\r    int cmds_in;\r\r  /** Stats counter for commands outbound\r         */\r    int cmds_out;\r\r /** True if user has authenticated, false if otherwise\r  */\r    bool haspassed;\r\r       /** Used by userrec to indicate the registration status of the connection\r       * It is a bitfield of the REG_NICK, REG_USER and REG_ALL bits to indicate\r      * the connection state.\r        */\r    char registered;\r       \r       /** Time the connection was last pinged\r         */\r    time_t lastping;\r       \r       /** Time the connection was created, set in the constructor. This\r       * may be different from the time the user's classbase object was\r       * created.\r     */\r    time_t signon;\r \r       /** Time that the connection last sent a message, used to calculate idle time\r   */\r    time_t idle_lastmsg;\r   \r       /** Used by PING checking code\r  */\r    time_t nping;\r};\r\r\r#endif\r