1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-26 09:56:37 +02:00
Commit Graph

1273 Commits

Author SHA1 Message Date
William Pitcock a10f48d470 - Keep the log file open and track it on the FD list. (#2943) 2013-05-06 23:49:14 +00:00
William Pitcock 4c2f110e19 - Add fd_fileopen() which wraps open(2) but tracks the FD in the FD table. 2013-05-06 23:16:39 +00:00
William Pitcock 5a4babdb9d - CHGHOST: Switch from part-join-mode to quit-join-mode like charybdis and ircu. (#3038) 2013-05-06 06:00:05 +00:00
William Pitcock f09c6ef567 - Implement support for TCP_DEFER_ACCEPT (synflood-hardening). (#4096) 2013-05-06 04:49:24 +00:00
William Pitcock 582496be70 - Split out servers into global_server_list.
Now client_list only includes clients, and global_server_list only includes servers.
2013-05-06 03:53:27 +00:00
William Pitcock 5bbc40438f - Initial work at making SSL connects work with the evented I/O. 2013-05-06 02:14:31 +00:00
Bram Matthys 61cfb5ac3e - Windows: Fix strange linking bug. Outgoing connects from a Windows
IRCd caused a garbled SERVER protocol message, causing 'cannot find
  server' errors and killing of users. Reported by Sunkat (#4183).
2013-04-04 23:07:04 +02:00
William Pitcock 9806ec28e9 - Remove support for negotiating TOKEN support.
At present, the TOKEN support is kept in place.
2013-02-22 02:48:47 -06:00
William Pitcock 9f19b41356 - Remove techadmin deritius. (#4173) 2013-02-22 02:42:07 -06:00
William Pitcock 65881a9ae2 - Rework module loading to work like Atheme. Split out modules to modules.conf for brevity, though. (#4163) 2013-01-17 04:55:41 -06:00
William Pitcock cd52331cd0 - Kill IPV6_COMPRESSED. 2013-01-14 06:34:01 -06:00
William Pitcock 09e4eced35 - Remove resolv.h deritius which hasn't been used since we switched to c-ares a long time ago. 2013-01-14 06:22:06 -06:00
William Pitcock ad25d019b1 - Enable kqueue support on BSDs. 2013-01-14 04:32:39 -06:00
William Pitcock 3bdae5807d - Remove NEWCHFLOODPROT define and old +f code. (#3210) 2013-01-14 03:44:49 -06:00
William Pitcock f9a78be185 - Remove WebTV code, part 1. (#3948) 2013-01-14 03:21:42 -06:00
William Pitcock 1ac3413039 - Actually implement M_OPER flag. 2013-01-14 02:30:07 -06:00
William Pitcock 501d93d6ea - Add support for providing a DH parameters file. (#4147)
DH parameters files must be encoded in PEM format, and the path is
  set using the ssl::dh config setting.  This is based on a patch
  submitted by wolfwood, with some modifications to avoid using stdio
  unnecessarily and to avoid code duplication.
2012-12-01 22:49:19 -06:00
William Pitcock ec09c447e5 - Remove defines FAST_BADWORDS_REPLACE, THROTTLING, EXTCMODE. (#2937)
The code does not compile without them anyway.
2012-11-25 17:45:45 +00:00
William Pitcock 1f79ca142f - Remove channel masks. (#3281) 2012-11-25 16:59:27 +00:00
William Pitcock 19f899f1bb - Remove local[] and LastSlot. 2012-11-25 03:23:57 +00:00
William Pitcock 2ea5301896 - Rework the listener system to not use Client table entries. 2012-11-25 02:46:39 +00:00
William Pitcock 6883909f2a - Split out unknown connection checking into it's own event. 2012-11-24 22:19:43 +00:00
William Pitcock 90802ddafa - Add unknown_list for tracking unknown clients. 2012-11-24 21:55:37 +00:00
William Pitcock 4ca0156f84 - Remove remainder of fdlist code. 2012-11-24 20:55:38 +00:00
William Pitcock 04362c8783 - Remove default_fdlist. 2012-11-24 20:48:59 +00:00
William Pitcock 275b4f507d - Replace oper_fdlist with oper_list. 2012-11-24 20:45:11 +00:00
William Pitcock 092d928b99 - Remove serv_fdlist. 2012-11-24 20:17:04 +00:00
William Pitcock 3b1984cdd8 - Add special_node to struct Client for iterating unknown / server / oper lists. 2012-11-24 19:52:56 +00:00
William Pitcock ffb4fc56f1 - Separate TKL checking from the check_pings event.
Instead, run check_tkls() when TKL changes are made directly.
  While this is technically slower when more than one TKL is placed
  at once, the value of getting it out of the check_pings event is
  greater.
2012-11-21 03:08:27 +00:00
William Pitcock bda05b6876 - Make it possible for nodes which have been delinked to be linked to other lists. 2012-11-21 23:18:18 +00:00
William Pitcock a35fe3ea3b - Add lclient_list and aClient.lclient_node, which iterates local clients. 2012-11-21 23:14:28 +00:00
William Pitcock f09b1ac4d4 - Rename aClient.client_list to aClient.client_node to avoid confusion 2012-11-21 23:03:28 +00:00
William Pitcock 9853fa54f4 - Rework the client management code to use a circular queue and set of
circular queues for hashtable.
2012-11-21 22:49:32 +00:00
William Pitcock d2ef4a9b10 - Add new circular-queue linked list macros based on the ones in the Linux kernel. 2012-11-21 22:48:26 +00:00
William Pitcock 6f7d41f5c6 - StrEq() macro has no users, so we can remove this too. 2012-11-21 03:35:08 +00:00
William Pitcock ab5e766d9c - Replace calls to strncpyzt() macro with more secure strlcpy().
This was done using Coccinelle, the semantic patch was:

  @@
  expression src, dst, len;
  @@

  - strncpyzt(src, dst, len);
  + strlcpy(src, dst, len);
2012-11-21 03:22:29 +00:00
William Pitcock dbe7039123 - Remove flush_connections(). It is now obsolete via the async i/o.
As a result of removing this, Unreal's CPU usage is reduced by 45% with
  10000 local connections.
2012-11-19 22:37:52 +00:00
William Pitcock 98ad590a7f - Remove nextping, nextconnect, nextblah stuff. Use proper events instead. 2012-11-12 09:35:11 +00:00
William Pitcock 856be31a8d - Exorcize HTM (heavy traffic mode) from Unreal.
This is partially for the sake of Stskeeps, even though he left the
  project long ago, but mainly so we can work towards dynamic ticks in
  the event loop while guaranteeing latencies for connected clients,
  even with fakelag.
2012-11-05 05:49:04 +00:00
William Pitcock 31c357bf76 - Kill busycli_fdlist with fire. 2012-11-05 05:30:34 +00:00
William Pitcock ac5d1b9979 - Remove IsBlocked()/SetBlocked()/ClearBlocked() and related deritius. 2012-10-08 16:16:05 +00:00
William Pitcock 25318ec24b - Port the SSL code over to the evented I/O subsystem. 2012-10-05 14:19:54 +00:00
William Pitcock 97b643aad7 - Fix autoconn with evented i/o loop. 2012-10-05 13:31:18 +00:00
William Pitcock 5e427e9f89 - Add eventloop implementation for select(2). 2012-10-26 03:33:26 +00:00
William Pitcock 6a210e34b1 - Add a polling backend that uses epoll(2). 2012-10-26 00:20:57 +00:00
William Pitcock b69b78de4b - Add support for tracking backend state for FD table entries. 2012-10-26 00:06:16 +00:00
William Pitcock 110aeceaec - Add support for oneshot I/O handlers. 2012-10-05 17:55:30 +00:00
William Pitcock 82854f41a6 - Clean up locking in the identd/dns checking subsystem. 2012-10-05 12:56:42 +00:00
William Pitcock ea48a5db3a - Disconnect identd checking code from monolithic I/O system and port it to
the evented I/O system.
2012-10-05 11:03:00 +00:00
William Pitcock 7608e3716f - Give IO event subscribers information on whether or not they are getting read or write events,
or both.
2012-10-05 08:57:52 +00:00