summaryrefslogtreecommitdiff
path: root/include/extern.h
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2010-10-01 21:01:49 -0400
committerAdam <Adam@anope.org>2010-10-01 21:01:49 -0400
commitd44f7971b129aa7ba80999f16f17b8c7499686e1 (patch)
treea86d08c3e641ed6b499b53b3bbb74e2a7f5b0dfb /include/extern.h
parent70056dd4689eeab4f7a9b31a921e0d7e40d5ed0d (diff)
Rewrote some of the socket code to allow m_ssl to be a service.
This allows modules (xmlrpc) to create and accept SSL connections. Also fixed unloading m_mysql at certain times and made the threading engine always work correctly on Windows.
Diffstat (limited to 'include/extern.h')
-rw-r--r--include/extern.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/include/extern.h b/include/extern.h
index 249ac6dfb..12fbcbbc5 100644
--- a/include/extern.h
+++ b/include/extern.h
@@ -183,13 +183,24 @@ E Anope::string quitmsg;
E bool save_data;
E time_t start_time;
-E Socket *UplinkSock;
+E ConnectionSocket *UplinkSock;
E void save_databases();
E void expire_all();
E void sighandler(int signum);
E void do_restart_services();
+/* The socket to our uplink */
+class UplinkSocket : public ConnectionSocket
+{
+ public:
+ UplinkSocket(bool ipv6 = false);
+
+ virtual ~UplinkSocket();
+
+ bool Read(const Anope::string &buf);
+};
+
/**** memory.c ****/
E void *scalloc(long elsize, long els);
@@ -334,6 +345,7 @@ E int exception_add(User *u, const Anope::string &mask, int limit, const Anope::
E SocketEngineBase *SocketEngine;
E int32 TotalRead;
E int32 TotalWritten;
+E SocketIO normalSocketIO;
/**** users.c ****/