X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fconnection.h;h=f24fc303d18c7925602d656f9e836a880258ea16;hb=8c2d96013084de950e3a63be4ae6ed626c4093ab;hp=db76859d701dba0a1b1f265a9e822279a097d98b;hpb=653638c68684ec035fd58bc2d0d91c9bf9aa2ab9;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/connection.h b/include/connection.h index db76859d7..f24fc303d 100644 --- a/include/connection.h +++ b/include/connection.h @@ -2,48 +2,33 @@ * | Inspire Internet Relay Chat Daemon | * +------------------------------------+ * - * InspIRCd is copyright (C) 2002-2006 ChatSpike-Dev. - * E-mail: - * - * - * - * Written by Craig Edwards, Craig McLure, and others. + * InspIRCd: (C) 2002-2008 InspIRCd Development Team + * See: http://www.inspircd.org/wiki/index.php/Credits + * * This program is free but copyrighted software; see * the file COPYING for details. * * --------------------------------------------------- */ -#include "inspircd_config.h" -#include "base.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - #ifndef __CONNECTION_H__ #define __CONNECTION_H__ -/** Please note: classes serverrec and userrec both inherit from class connection. +#include +#include "inspircd_config.h" +#include "base.h" +#include "socketengine.h" + +/** connection is the base class of User, and holds basic user properties. + * This can be extended for holding other user-like objects in the future. */ -class connection : public Extensible +class CoreExport connection : public EventHandler { public: - /** File descriptor of the connection + /** Hostname of connection. + * This should be valid as per RFC1035. */ - int fd; - - /** Hostname of connection. Not used if this is a serverrec - */ - char host[160]; + char host[65]; /** Stats counter for bytes inbound */ @@ -61,17 +46,13 @@ class connection : public Extensible */ int cmds_out; - /** True if server/user has authenticated, false if otherwise + /** True if user has authenticated, false if otherwise */ bool haspassed; - /** Port number - * For a userrec, this is the port they connected to the network on. - * For a serverrec this is the current listening port of the serverrec object. - */ - int port; - - /** Used by userrec to indicate the registration status of the connection + /** Used by User to indicate the registration status of the connection + * It is a bitfield of the REG_NICK, REG_USER and REG_ALL bits to indicate + * the connection state. */ char registered; @@ -79,27 +60,20 @@ class connection : public Extensible */ time_t lastping; - /** Time the connection was created, set in the constructor + /** Time the connection was created, set in the constructor. This + * may be different from the time the user's classbase object was + * created. */ time_t signon; - /** Time that the connection last sent data, used to calculate idle time + /** Time that the connection last sent a message, used to calculate idle time */ time_t idle_lastmsg; - /** Used by PING checks with clients + /** Used by PING checking code */ time_t nping; - - /** Default constructor - */ - connection() - { - this->fd = -1; - } }; #endif - -