]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_spanningtree/link.h
Fix broken linking over IPv4 on IPv6 capable systems.
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / link.h
index 9636d565f1ed11b9592375228d2cf3e14e1973b3..5b9361fcdaad98922069e45bfcfc845ddb864792 100644 (file)
@@ -1 +1,52 @@
-/*       +------------------------------------+\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 __LINK_H__\r#define __LINK_H__\r\r/** The Link class might as well be a struct,\r * but this is C++ and we don't believe in structs (!).\r * It holds the entire information of one <link>\r * tag from the main config file. We maintain a list\r * of them, and populate the list on rehash/load.\r */\rclass Link : public classbase\r{\r public:\r irc::string Name;\r      std::string IPAddr;\r    int Port;\r      std::string SendPass;\r  std::string RecvPass;\r  std::string AllowMask;\r unsigned long AutoConnect;\r     time_t NextConnectTime;\r        bool HiddenFromStats;\r  std::string FailOver;\r  std::string Hook;\r      int Timeout;\r   std::string Bind;\r      bool Hidden;\r};\r\r#endif\r
\ No newline at end of file
+/*
+ * InspIRCd -- Internet Relay Chat Daemon
+ *
+ *   Copyright (C) 2007 Dennis Friis <peavey@inspircd.org>
+ *   Copyright (C) 2007 Craig Edwards <craigedwards@brainbox.cc>
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+
+#pragma once
+
+class Link : public refcountbase
+{
+ public:
+       reference<ConfigTag> tag;
+       std::string Name;
+       std::string IPAddr;
+       unsigned int Port;
+       std::string SendPass;
+       std::string RecvPass;
+       std::string Fingerprint;
+       std::vector<std::string> AllowMasks;
+       bool HiddenFromStats;
+       std::string Hook;
+       unsigned int Timeout;
+       std::string Bind;
+       bool Hidden;
+       Link(ConfigTag* Tag) : tag(Tag) {}
+};
+
+class Autoconnect : public refcountbase
+{
+ public:
+       reference<ConfigTag> tag;
+       std::vector<std::string> servers;
+       unsigned long Period;
+       time_t NextConnectTime;
+       /** Negative == inactive */
+       int position;
+       Autoconnect(ConfigTag* Tag) : tag(Tag) {}
+};