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

1585 Commits

Author SHA1 Message Date
codemastr 3185d8c23b Added HOOKTYPE_PRE_LOCAL_QUIT 2004-01-17 20:37:52 +00:00
codemastr c07e1f96e1 Renamed FAKE_LAG_FOR_LOCOPS and made chanops override chmode +V 2004-01-17 20:13:48 +00:00
codemastr e406e0d99a Added EXBCHK_PARAM and some noew logging flags 2004-01-17 19:30:46 +00:00
Bram Matthys 3980a7f7f6 - internal: Ok, I'm committing this in parts... did most of the TKL spamfilter
integration now, no.. it doesn't work at all yet but most of the internal stuff
  has now been done (but I temporarely need to work on other things now).
   moved/added a lot of regex stuff, banaction/spamfilter helper functions, etc
  into s_misc.c. [note: current code has some bugs but since the stuff isn't
  used that's no problem... it's also a bit ugly, do NOT mail me about these things ;p]
- Enabled talk-trough-+M for opers (just like +m)
- Disabled talk-trough-+m/+M for opers if NO_OPEROVERRIDE is defined
- Display zlib/SSL version in /version (oper only)... will prolly be improved later.
- updated doc/compiling_win32.txt
2004-01-16 21:40:18 +00:00
codemastr aeff467a36 Made extbans use the module objects system 2004-01-09 00:56:15 +00:00
codemastr 5ce3fcc1e3 Fixes for TRE under win32 2004-01-08 19:00:44 +00:00
codemastr 1da0b9a540 Bug fixes and EXTBAN 005 token 2004-01-08 16:39:35 +00:00
codemastr 759be00efe Fixed a compile bug regarding TRE 2004-01-07 00:28:46 +00:00
codemastr 3dd67bf248 Integrated TRE into Unreal 2004-01-04 20:12:31 +00:00
Bram Matthys 56cb95f189 - internal: Modified TKL system (getting ready for anti-spam system):
Instead of 1 big list of *lines, it's now an array to easily distinct between types.
  Also made tk->usermask static (USERLEN+2) instead of dynamic.
  These changes should give enough speed improvement to make the new anti-spam/anti-ads
  feature fast enough.
2004-01-01 22:53:50 +00:00
Bram Matthys 0e0015a77a - Added some additional warnings for insane large values for allow::maxperip, and class::* stuff. Reported by Erik_Rana (#0001463). 2003-12-31 17:22:10 +00:00
codemastr 084d57cef1 Updated TRE dll and fixed a MAX_PATH problem 2003-12-23 01:47:02 +00:00
codemastr 5daa253210 Added join_channel 2003-12-21 20:22:50 +00:00
Bram Matthys 41f81b2643 - internal: changed is_banned() again: cptr,sptr -> sptr (dropped cptr). It was too
confusing (and thus causing bad code/bugs) and was never used anyway.
2003-12-21 15:10:13 +00:00
codemastr da3afb3420 Made the extban stuff compatible with the module API 2003-12-20 21:21:10 +00:00
Bram Matthys 426fbd9663 - Added "extended bans". An idea from SorceryNet ircd.
These bans look like ~<type>:<stuff>. Currently the following bans are available:
  ~q: quiet bans (ex: ~q:*!*@blah.blah.com). People matching these bans can join
      but are unable to speak, unless they have +v or higher.
  ~c: channel bans (ex: ~c:#idiots). People in #idiots are unable to join the channel.
  ~r: gecos (realname) bans (ex: ~r:*Stupid_bot_script*). If the realname of a user
      matches this then (s)he is unable to join.
      NOTE: an underscore ('_') matches both a space (' ') and an underscore ('_'),
            so this ban would match 'Stupid bot script v1.4'.

  These bantypes can also be used in the channel exception list (+e).
  +e ~r:*w00t* makes anyone with 'w00t' in their realname able to join,
  and +e ~c:#admin makes anyone in #admin able to join, etc..

  This system allows modules to add extended bantypes too.

  This feature requires some additional testing, also the module interface will
  probably be changed in the next few weeks, and perhaps more extended bans will
  be added before next release.. we'll see...
2003-12-19 23:39:30 +00:00
codemastr 3439f9f02b Added include/url.h 2003-12-17 19:19:10 +00:00
codemastr af289c8687 Various fixes and changes 2003-12-16 19:39:38 +00:00
Bram Matthys 105dd3c092 - Added set::static-part: similar to static-quit, default 'no' (static-part disabled).
If set to 'yes' or '1' it will strip all part comments,
  if set to something else it will use that as a part comment.
- Partial cleanup of m_part (hopefully I didn't destroy anything).
- Minor stats compile warning fixed
2003-12-11 21:27:33 +00:00
Bram Matthys c3d09408e9 - Added error checking/error messages to new module reloading system, to catch errors like
insufficient hd space, permission denied, etc..
2003-12-10 03:16:16 +00:00
Bram Matthys cb6b67e586 - Made "chanop notices" only go to @#chan on non-prefixaq servers (and to ~&@#chan otherwise),
internal: added ugly macro CHANOPPFX which is "~&@" if prefix_aq, else "@".
2003-12-10 02:28:12 +00:00
codemastr 3a5a4947f0 Made it so modules can be reloaded (new image) on /rehash 2003-12-06 01:09:32 +00:00
Bram Matthys 5a48671691 - Added channelmode +T: no notices allowed in channel. 2003-12-05 22:43:48 +00:00
codemastr 957e72dd98 Added HOOKTYPE_PRE_LOCAL_PART 2003-11-26 19:51:02 +00:00
Bram Matthys 364c4a879c - Changed version to beta19 2003-11-22 23:52:01 +00:00
Bram Matthys 948b4e61ad - Added comment regarding MLOCK and set::restrict-chanmodes in unreal32docs.html.
- Made PREFIX_AQ a ./Config question at *NIX and enabled it by default at Win32.
2003-11-21 15:13:45 +00:00
Bram Matthys 37a93b5502 - Added oper::maxlogins which allows you to limit the number of concurrent session
with the same oper block. Suggested by kain.
- Made /dns oper-only (the ircd command, not your client /dns command :p).
- Various help.conf fixes. Reported by nukie (#0001373).
2003-11-19 23:41:34 +00:00
Bram Matthys dc73bd3a2d - Made win32 work again (broke it by /module patch 35 minutes ago). 2003-11-11 20:20:23 +00:00
Bram Matthys d6fd665ede - Multiple /module changes (the command):
- Normal users can now get a list, versioninfo will be hidden however.
  - Opers get some additional details like hooks and commandoverride's.
  - Opers can use /module <servername> to get a remote list of loaded modules.
  - Added flag [3RD] to show it's a 3rd party module
  This was requested by by quite some people because serveradmins started to load
  "spy modules" without clearly mentioning it in the MOTD (which is highly unethical
  and in some countries even illegal due to privacy law). Also the remote module
  list was requested by quite a few opers.
  Sure, this isn't a 100% guarantee but at least if someone goes hiding stuff
  then it's clear what their intentions are (and thus will be refused support, ..).
- Changed emailaddr in help window at windows to unreal-users mailinglist.
- Made the cloak mismatch msg during linking a bit more scary.
- Added comment to 'Install as a service' option in installer to help n00bs a bit.
2003-11-11 19:45:09 +00:00
Bram Matthys b4f5788c8f - (Internal) Moved most valid-host checking into 1 function, valid_host(),
which checks for invalid characters.
- Added hostname check for me::name since this could cause mysterious trouble.
2003-11-04 01:38:01 +00:00
Bram Matthys c25223913c - (Internal) Added __attribute__ format checking for most format string functions,
this will currently produce a lot of warnings with -Wall.
- Fixed 159 of 184 warnings detected by the above, the other warnings are false.
  Most warnings had to do with long vs int, and thus the format strings (%d->%ld)
  or the vars (int->long) have been changed (many of these were time_t/TS vs int).
  Only a few rare crashbugs were discovered.
- Module coders: for HOOKTYPE_LOCAL_CHANMODE the 'sendts' parameter was changed
  from type 'int' to 'time_t', while in most circumstances (like on ia32)
  you won't notice, I suggest you to update your callback functions anyway.
- Possibly fixed an issue with set::modes-on-join and mode +f, it could have
  set random remove-chanmode times in the default chanmode line.
2003-11-02 02:58:11 +00:00
stskeeps ba0dd97653 foo 2003-10-31 16:50:10 +00:00
Bram Matthys 84d32b5378 - Fixed bug where color quits were stripped when they shouldn't be >:).
- Added 'action' field to ban version { } which can be: kill: kills the user (default),
  tempshun: shun the specific connection only, kline/zline/gline/gzline/shun: place
  a ban on *@IP. Time of those bans can be specified in set::ban-version-tkl-time.
  It's up to the admin to take a good decision, sometimes zlines are best (=won't use
  much sockets but will reconnect quite quickly), sometimes tempshun (=will use 1 socket
  but generates nearly no network traffic), sometimes klines/glines, etc..
2003-10-30 19:08:50 +00:00
Bram Matthys 9f4ce0d91d Added set::options::allow-part-if-shunned, is that name long enough? god.. 2003-10-27 00:44:41 +00:00
Bram Matthys ff85a1f7b4 - Added HOOKTYPE_REMOTE_NICKCHANGE (called like: cptr, sptr, newnick). 2003-10-25 18:51:49 +00:00
Bram Matthys d64fb8dbab Multiple changes...
- Changed some useless stuff.
- Enabled EXTCMODE by default, I presume it's stable but can't promise anything.
- Module coders: changed 'allowed' callback function for umodes&snomasks,
  from 'aClient *sptr' to 'aClient *sptr, int what'.
  'what' will be MODE_ADD if trying to add and MODE_DEL if trying to remove.
2003-10-25 16:39:23 +00:00
Bram Matthys 2a469b1942 - Fixed a problem regarding module hooks, if a hook was called within a hook it could cause
problems (like pre connect hook -> exit_client -> quit hook).
2003-10-23 22:15:52 +00:00
Bram Matthys ad9d0370fa Added remove-chanmode-after-X-minutes in +f & checks for /sethost&/chghost to same host.
- Added checks for /sethost&/chghost to same host.
- Added remove-chanmode-after-X-minutes in +f.
  The format is +f [30j#R5]:15, where 5 is the "do -R after 5 minutes". For a default
  action like +i you would have to do the same: +f [30j#i5]:15 (remove 'i' after 5 minutes).
  Additionally, 2 config items are added:
  - set::modef-default-unsettime, if this is set to for example '5' then things like
    +f [30j]:15 will be transormed into +f [30j#i5]:15. It's just a default, the user can still
    override it. By default this feature is not used.
  - set::modef-max-unsettime, specifies the maximum amount of time for the <time> parameter,
    by default this is set to 60 (=1 hour), the value should be between 0 and 255.
  I didn't do the extended tests I usually do but it seems stable, also the docs are updated
  but are probably updated again later to make it a bit more readable.
  Feel free to report any bugs as soon as you discover them.
  The only thing I could think of is: _usually_ only 1 server will have the -i/-R/.. timer
  running, so if that server splits (or even worse dies) it will only be -i/-R/.. at that server
  and when they sync back they merge chanmodes so +i/+R is set again.
  I don't consider this a huge problem but maybe it can be inconveniently, if people have
  a lot of trouble with this I'll have to consider a 50% recode of the +f system :/.
2003-10-18 18:44:54 +00:00
codemastr f3f2390615 Added umode +T (no ctcp) 2003-10-04 20:13:10 +00:00
codemastr 0e22126286 Added the ability to limit /who replies 2003-10-03 23:36:39 +00:00
codemastr 59d73bf18c Added a command override system for modules 2003-09-28 19:43:15 +00:00
codemastr db445c0faf Sped up the message searching functions 2003-09-27 00:29:24 +00:00
Bram Matthys b0705fb7c5 - Changed version to 'beta18' 2003-09-21 22:19:38 +00:00
codemastr d803c716d6 Added some macros for modules 2003-09-20 23:39:45 +00:00
codemastr d051786f5c Channel hook changes 2003-09-20 19:57:46 +00:00
codemastr af2834d5e9 Added HOOKTYPE_REHASHFLAG 2003-09-20 00:20:36 +00:00
Bram Matthys a316e4af6f - Added HOOKTYPE_REMOTE_QUIT 2003-09-18 23:41:32 +00:00
Bram Matthys 2d4f52665c - Added HOOKTYPE_LOCAL_PASS and HOOKTYPE_REMOTE_CONNECT 2003-09-18 01:31:10 +00:00
Bram Matthys d722051fb6 - Added set::default-bantime. It allows you to set the default time for a gline/kline/gzline/shun/etc when the time is not not specified (like with /gline *@*.stupid.net). 2003-09-18 00:08:48 +00:00
Bram Matthys 3c96db4e4d - Added HOOKTYPE_UNKUSER_QUIT (disconnects of unregistered clients). 2003-09-14 16:17:38 +00:00