1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-28 21:46:38 +02:00
Commit Graph

3091 Commits

Author SHA1 Message Date
William Pitcock efd5c6ec1a - Removed broken VMS netwrite() code. 2012-10-26 04:10:03 +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 0b186e7622 - Add untested kqueue(2) backend. 2012-10-26 04:05:22 +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 ae7a3912e7 - Call fd_refresh() when closing an FD. This way events may be dequeued from the event system. 2012-10-05 13:07:51 +00:00
William Pitcock 38e6793da8 - Fix a socket event leak in the new resolver code by assuming requests that
are neither read nor write means that c-ares is no longer interested in the
  socket.  Thusly we unregister it.  This is probably wrong, but it seems to
  work fine.
2012-10-05 13:01:38 +00:00
William Pitcock 82854f41a6 - Clean up locking in the identd/dns checking subsystem. 2012-10-05 12:56:42 +00:00
William Pitcock 17aa93cf04 - Remove remaining listener-related deritius from read_message(). 2012-10-05 12:45:08 +00:00
William Pitcock 3dbc023245 - Disconnect client packet handling (non-SSL) and listener handling from read_message().
With this change, it is possible to completely disconnect read_message() from the mainloop,
  and have a fairly responsive ircd (noticably more responsive than what we had before I
  started on this).
  The "fakelag" stuff has been replaced with charybdis's deferred command processing logic,
  which is more efficient and does the same thing without punishing behaving clients.
2012-10-05 12:32:56 +00:00
William Pitcock c2eeeb40f2 - Do not invalidate data pointer in FD entry table, unless events are oneshot. 2012-10-05 12:22:12 +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 436eb0030d - Port DNS resolver to run under new evented I/O system. 2012-10-05 10:41:40 +00:00
William Pitcock 3f09c1c459 - Assume all poll notification requests should persist, and that the caller will
deregister interest itself when it is done polling.
2012-10-05 10:36:46 +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
William Pitcock dfe8206c8e - First cut at new evented I/O system. Right now, we only implement support for poll(2).
Nothing is hooked up to it yet, I will cover that in the next few commits.
2012-10-05 08:21:29 +00:00
William Pitcock b26207df50 - Add support for proper FD accounting (rewrite of the fdlist code).
This is the first step to adding evented I/O.  Infact, writing the evented I/O code
  should now be quite easy.
2012-10-05 03:42:44 +00:00
Bram Matthys 6ddeb0ccb3 Some quick changes to make the IRCd report as version 4.0-dev 2012-11-23 19:45:34 +01:00
William Pitcock 2cc9482e18 - Use a more robust method of learning the server origin for a SASL agent. 2012-10-27 22:42:32 +00:00
Bram Matthys 734c3c8cdc Added last donator before rc1 2012-10-16 18:49:21 +02:00
Bram Matthys f70a201715 - Update version to 3.2.10-rc1 2012-10-16 15:25:04 +02:00
Bram Matthys 4c30008313 - Windows: fix MOTD file always showing a date of 1/1/1970, reported
by maxarturo (#4102).
2012-10-16 11:33:27 +02:00
Bram Matthys b600dffdc8 - Added auth method 'sslclientcertfp' which provides an alternative
method to authenticate users with SSL client certificates based
  on SHA256 fingerprints. This can be used instead of the already
  existing 'sslclientcert' so you don't have to use an external file.
  One way to get the SHA256 fingerprint would be:
  openssl x509 -in name-of-pem-file.pem -sha256 -noout -fingerprint
  Suggested and patch supplied by Jobe (#4019).
- Added documentation on the new sslclientcertfp
- Moved documentation on authentication types to one place and refer
  to it from each section (oper::password, vhost::password,
  link::password-receive, etc).
2012-10-15 21:25:38 +02:00
Bram Matthys eb12f79ba3 - Added set::options::disable-cap, which can be used to disable the
new CAP support (#4104).
2012-10-15 15:29:52 +02:00
Bram Matthys 96eb692cc6 various win32 fixes:
- Disable USE_POLL on Windows, since it doesn't work with XP and has
  no advantage anyway. Reported by nenolod (#4129).
- Various updates to makefile.win32 and .iss file, found during
  building new versions of zlib, openssl, and curl.
2012-10-15 15:01:35 +02:00
Bram Matthys e81cf14707 - Fix bug where recursive includes would hang the IRCd, patch from
binki with some minor modifications, reported by warg (#3919).
2012-10-14 11:47:26 +02:00
Bram Matthys 906814a31d - Use poll() in the remote includes functions when USE_POLL is
defined (#4091).
2012-10-14 11:23:14 +02:00
Bram Matthys 3e9d300086 - Add 'class' option to allow/deny channel so you can allow/deny
users based on their class. Patch from fspijkerman (#4125).
2012-10-06 12:48:21 +02:00
Bram Matthys 7fb0fa1620 - Disable sending of UHNAMES when HTM (High Traffic Mode) is ON,
suggested by driew (#3900).
2012-10-06 11:57:55 +02:00
Bram Matthys a292196590 - Remove old reference to networks/ directory from Windows installer 2012-08-17 13:10:15 +02:00
Bram Matthys 2429ad557b - Added missing Mod_Header to m_sasl.c 2012-08-17 13:09:19 +02:00
Bram Matthys 74d519323f a bigger scratch buffer makes me sleep at night ;) 2012-08-17 10:55:40 +02:00
Bram Matthys b8a13305d3 - Show "Ping timeout: XYZ seconds" instead of just "Ping timeout".
Patch from darkex (#3960).
2012-08-17 10:52:40 +02:00
Bram Matthys d57f3c63cc Changes for #4008 patch. 2012-08-17 10:32:31 +02:00
Nathan Phillip Brink 14315463d1 Add optional oper::require-modes setting to the oper block. (#4008 by katsklaw)
Any attempt to /OPER by someone who doesn't have one of the listed
usermodes is rejected. This can be used to restrict oper blocks to
registered nicks (+r) or secure clients (SSL, +z).
2011-07-13 22:36:04 -04:00
Bram Matthys 15667266ab - Module coders: added HOOKTYPE_AWAY (sptr, away-reason). 2012-07-10 16:15:14 +02:00
Bram Matthys 8b8490feb7 - Win32 installer: Latest InnoSetup no longer supports Windows 95/98,
so update Minversion to make the .iss compile.
2012-06-24 16:07:14 +02:00
Bram Matthys 1f8ba91b69 - Win32 installer (SSL): Uncheck 'create certificate' checkbox when
server.cert.pem exists, and check it if the file doesn't exist.
  You can still change the setting, just the default is correct now.
  The code for this was already there but was not working correctly
  causing users to go through the generation process upon each install.
2012-06-24 16:05:07 +02:00
Bram Matthys 3d8fd3f4be - Changed numeric 307 (RPL_WHOISREGNICK) to 'is identified for this nick',
reported by fbi (#3399).
2012-05-07 17:14:03 +02:00
Bram Matthys 982803a6b8 - SASL now needs to be enabled explicitly by setting a set::sasl-server.
If this is not set, then SASL is off and not advertised.
  If the specified server is not connected, then SASL is off as well.
  This prevents unnecessary delay (and the inability for some clients to
  get online) when SASL is not in use or when the SASL server is down.
2012-05-07 16:51:03 +02:00
Bram Matthys 4207b5e60f - Fixed another SASL crash bug. Always use HookAddEx, not HookAdd!
Crash occured after the first quit of a user after a REHASH.
  Reported by Dave (#4108).
2012-05-07 12:07:43 +02:00
Bram Matthys d439c8906b complete the previous patch (MLOCK).. mostly just bringing it up to date & code-style 2012-05-04 13:05:08 +02:00
William Pitcock 5360e2ffa5 - Add support for server-enforced mode locks (MLOCK).
This allows the IRCd to enforce MLOCKs that are set by services, which
  eliminates clashes between users setting modes and services enforcing
  it's mlock on channels. (#3055)
2012-05-04 12:47:59 +02:00
Bram Matthys 9d6e386f97 - Fix bug caused by new I/O engine (both with and without USE_POLL):
queued data on the receive queue (eg: due to fake lag) was not processed
  unless we got new data from the client.
  Now, better document this. Also, avoid calling dbuf_put with 0 length.
2012-05-02 19:20:52 +02:00
Bram Matthys 3f3b8975e0 - Moved sendto_connectnotice, and thus the call to HOOKTYPE_LOCAL_CONNECT,
so it gets called after the broadcast of NICK to other servers.
2012-05-01 12:10:14 +02:00
Bram Matthys aa206f667f Update donators 2012-04-28 16:00:25 +02:00