X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Finspsocket.h;h=6eb7eb584d342911d1d2a4e4dd9971c70cc93ed0;hb=f1a122b4eeed9e681f3ef4cf94f8f710cc050afd;hp=8172338ac2d5f0b8647d0f08ca5da70dbb664ac5;hpb=fa2cdd0bb89330cfd9a6c49c4705da2a3cb02834;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/inspsocket.h b/include/inspsocket.h index 8172338ac..6eb7eb584 100644 --- a/include/inspsocket.h +++ b/include/inspsocket.h @@ -1,18 +1,28 @@ -/* +------------------------------------+ - * | Inspire Internet Relay Chat Daemon | - * +------------------------------------+ +/* + * InspIRCd -- Internet Relay Chat Daemon * - * InspIRCd: (C) 2002-2009 InspIRCd Development Team - * See: http://wiki.inspircd.org/Credits + * Copyright (C) 2009 Daniel De Graaf + * Copyright (C) 2007-2008 Robin Burchell + * Copyright (C) 2007 Dennis Friis + * Copyright (C) 2006-2007 Craig Edwards + * Copyright (C) 2006 Oliver Lupton * - * This program is free but copyrighted software; see - * the file COPYING for details. + * This file is part of InspIRCd. InspIRCd is free software: you can + * redistribute it and/or modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation, version 2. * - * --------------------------------------------------- + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . */ -#ifndef __INSP_SOCKET_H__ -#define __INSP_SOCKET_H__ + +#ifndef INSPSOCKET_H +#define INSPSOCKET_H #include "timer.h" @@ -75,7 +85,6 @@ class CoreExport SocketTimeout : public Timer public: /** Create a socket timeout class * @param fd File descriptor of BufferedSocket - * @pram Instance server instance to attach to * @param thesock BufferedSocket to attach to * @param secs_from_now Seconds from now to time out * @param now The current time @@ -106,9 +115,9 @@ class CoreExport StreamSocket : public EventHandler std::string recvq; public: StreamSocket() : sendq_len(0) {} - inline Module* GetIOHook() { return IOHook; } - inline void AddIOHook(Module* m) { IOHook = m; } - inline void DelIOHook() { IOHook = NULL; } + inline Module* GetIOHook(); + inline void AddIOHook(Module* m); + inline void DelIOHook(); /** Handle event from socket engine. * This will call OnDataReady if there is *new* data in recvq */ @@ -185,9 +194,10 @@ class CoreExport BufferedSocket : public StreamSocket * This will create a socket, register with socket engine, and start the asynchronous * connection process. If an error is detected at this point (such as out of file descriptors), * OnError will be called; otherwise, the state will become CONNECTING. - * @param dest Address to connect to - * @param bind Address to bind to (if NULL, no bind will be done) - * @param timeout Time to wait for connection + * @param ipaddr Address to connect to + * @param aport Port to connect on + * @param maxtime Time to wait for connection + * @param connectbindip Address to bind to (if NULL, no bind will be done) */ void DoConnect(const std::string &ipaddr, int aport, unsigned long maxtime, const std::string &connectbindip); @@ -219,4 +229,9 @@ class CoreExport BufferedSocket : public StreamSocket BufferedSocketError BeginConnect(const std::string &ipaddr, int aport, unsigned long maxtime, const std::string &connectbindip); }; +#include "modules.h" + +inline Module* StreamSocket::GetIOHook() { return IOHook; } +inline void StreamSocket::AddIOHook(Module* m) { IOHook = m; } +inline void StreamSocket::DelIOHook() { IOHook = NULL; } #endif