1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-07-10 22:43:13 +02:00
Commit Graph

3255 Commits

Author SHA1 Message Date
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 f1c5f88539 - Upgraded to c-ares 1.9.1. Updated configure & other files. 2012-10-14 12:13:53 +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 1418ea873b - Install server.*.pem files, patch from katsklaw (#3988).
- The ./Config script will now ask whether to generate an SSL
  certificate when it does not exist (defaults to Yes), instead of
  always generating one.
2012-08-17 12:32:06 +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 97909a4ac0 - Add /SILENCE to HTML documentation (reported by Severus_Snape in
#4072, patch from warg).
2012-08-17 10:45:19 +02:00
Bram Matthys 9e03c16e3a - Clarify that hiddenhost-prefix must be the same on linked servers for
bans to function properly (#4090, patch from warg, reported in #4043
  by maxb).
2012-08-17 10:40:23 +02:00
Bram Matthys d57f3c63cc Changes for #4008 patch. 2012-08-17 10:32:31 +02: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
William Pitcock adcb462788 - If set::options::dont-resolve is enabled, then use only the IP information
from a WEBIRC message, reported by Ismat (#4103).
2012-04-09 10:54:17 +02:00
William Pitcock 3563c26a93 - Add support for account-notify client capability (#4098). This capability
can be used to request passive notifications for accountname changes.
2012-04-09 10:48:51 +02:00
Bram Matthys 309dac4f2b - Added 'away-notify' client capability, which informs the client of any AWAY state changes of users on the same channel. Patch from nenolod (#4097). 2012-04-09 10:35:17 +02:00
Bram Matthys 3271ec3a23 - Remove old no-stealth configuration directive from documentation,
reported by katsklaw, patch from warg (#4036).
2012-04-09 10:25:53 +02:00
Bram Matthys 3d728f5f2e - Print out a warning when we can't write to a log file. When booting this
goes to the boot screen. When we are already booted it's sent to all
  IRCOps with a limit of max. 1 message per 5 minutes.
- Refuse to boot when we can't write to any log file.
2012-04-05 21:47:15 +02:00
Bram Matthys 374b79c084 - Win32 compile fix (nenolod) 2012-04-05 21:01:19 +02:00
Bram Matthys edcadc6c58 - Fix win32 installer: apparently it sometimes complained about not having
- the Visual C++ 2008 redistributable package installed when this was not true.
2012-03-30 20:02:32 +02:00
Bram Matthys 3ada59bc60 - Poll I/O engine: get_client_by_pollfd() may return -1 when there's a race
condition. Don't abort, instead just skip those clients.
  This fixes a crash I had on /SQUIT.
2012-03-26 11:16:10 +02:00
Bram Matthys 46372dc475 - Split up PROTOCTL line, since with the addition of ESVID we exceeded
MAXPARA when using ZIP links.
  This caused an odd charset warning upon link.
2012-03-26 11:08:19 +02:00
Bram Matthys a8000c2efb - Some more SASL fixes, and more... 2012-03-26 10:37:40 +02:00
Bram Matthys 04b68513f8 - Some more SASL fixes 2012-03-25 19:54:56 +02:00
Bram Matthys 40004ef1b3 - Tweak SASL code to conform to current coding style. 2012-03-25 12:32:41 +02:00
Bram Matthys 66b3a7fe6b - Fix crash in AUTHENTICATE (SASL commit from an hour or so ago). 2012-03-25 12:30:51 +02:00
Bram Matthys 61610fe763 - Added support for SASL, patch from nenolod (#4079). 2012-03-25 10:15:28 +02:00
Bram Matthys 1e152a07c0 - Fix for speed optimization a few lines up, was accidentally using ident
username (which might have been 'unknown') instead of effective username.
2012-03-23 20:30:36 +01:00
Nathan Phillip Brink aa5fe1514d - Call m_cap_Init() when m_cap is loaded through commands.so. Reported by nenolod. 2012-03-06 06:16:53 +00:00
Nathan Phillip Brink 72b36e893b - Minor documentation typos, thanks warg (#4094). 2012-03-01 05:12:52 +00:00
Bram Matthys 1a76eb59e5 - Speed optimization: First, moved a large part of vsendto_prefix_one into
vmakebuf_local_withprefix. Then use this new function - which creates the
  buffer-to-be-sent - at the top of functions like sendto_channel_butserv
  and sendto_common_channels and send the prepared buffer in the loop that
  comes after it. This means we only prepare the buffer once and then send
  it many times, rather than both building and sending it XYZ times.
  Benchmarking connect-join-quit of 10k clients:
  100 users per channel: no noticeable speed improvement
  1000 users per channel: 18% faster
  10000 users in one channel: 50% faster
  As you can see, unfortunately, for a typical irc network there isn't much
  speed improvement. However, if you have a couple of 500+ user channels or
  get attacked by clones then you may see some improvement in speed and/or lower
  CPU usage.
2012-02-27 15:20:07 +01:00
Bram Matthys d1ad60990f changelog entry for all previous commits:
- UnrealIRCd now supports poll() instead of select().
  There are some minor speed benefits if you have more than 1K or 2K
  clients, however the main noticeable difference is that on Linux you can
  now easily enter a higher maximum connection count than 1024 in ./Config,
  without having to edit system header files.
  Of course, you still need to be allowed to use the # of sockets (type
  'ulimit -n' on the shell).
  Support for this is experimental at this stage, but enabled by default
  so it can receive all the testing it deserves. If all goes well, it will
  be the default for 3.2.10.
  Stress testing is very much welcomed!
2012-02-26 18:40:12 +01:00
Bram Matthys 8dd4160c78 make c-ares use 100% poll. and make sure we never deal with negative fds. 2012-02-26 18:25:49 +01:00
Bram Matthys 5dd1454489 - Added patch from Adam for poll() support (#1245). 2012-02-26 15:28:29 +01:00
Bram Matthys 9c12b0e896 - Even when 'M' was listed in set::oper-only-stats you could still do a
'/STATS m'. Unlike other stats characters, case insensitivity was not
  checked for this one. Reported by and patch from Apocalypse (#4086).
2012-02-26 10:29:20 +01:00
Bram Matthys 719c0f73ae - Moved nospoof to config file, suggested by and patch from nenolod (#4078).
This means ping cookies are now controlled by set::ping-cookie [yes|no].
  The default is 'yes' (enabled).
2012-02-26 10:22:19 +01:00
Bram Matthys c46024fa2d - Make the accept code check if the fd is within bounds instead of relying
on OpenFiles to be correct. This fixes a crash when f.e. 3rd party modules
  have files open but don't increase OpenFiles. Might also fix a curl crash,
  though nobody ever reported one.
2012-02-26 10:09:25 +01:00
Bram Matthys 2e2eea8146 - Added doc/example.es.conf, translated by Severus_Snape. 2012-02-08 18:44:37 +01:00
Bram Matthys 7ad515fb38 - Get rid of networks/ directory, and all references to it. Suggested by
katsklaw and others (#4056).
2012-01-22 17:09:10 +01:00
Bram Matthys 60bad142e0 - Added remove_oper_modes(), which works just like remove_oper_snomasks(),
and ensures that the user does not have any ircop-only user modes after
  de-opering. This (only) fixes the just added +I umode case, but could
  also prevent future bugs.
2012-01-22 16:52:28 +01:00