aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/m_tkl.c
Commit message (Expand)AuthorAgeFilesLines
* Added set::spamfilter::stop-on-first-match [yes|no]:•••By default this is set to 'yes' which means that once a spamfilter matches UnrealIRCd will take action immediately and any additional (other) spamfilters will not be processed. When this is set to 'no' then after the first spamfilter match other spamfilters will still be checked. All of these matches will be logged and a message will go to IRCOps (snomask +S) for each one. The affected user, however, will only see one spamfilter action (eg: block or kill) which will be the spamfilter with the 'gravest action' (gzline is highest, block and warn are lowest). Gravatar Bram Matthys2014-01-201-82/+151
* - Added set::options::allow-insane-bans which makes it possible to set••• really broad bans such as *@*.xx. Needless to say this can be very dangerous. Reported and patch provided by Stealth (#0003963). Gravatar Bram Matthys2010-11-151-1/+2
* - Fixed a few trivial compilation warnings.Gravatar binki2010-06-291-2/+1
* - When removing a SHUN, check if users who were blocked by this SHUN are stil...Gravatar binki2010-06-201-11/+40
* - A notice is now sent when listing spamfilters through /SPAMFILTER just••• like /stats f. Bug #0003752 reported by Strawberry_Kittens, similar to #0002533. Gravatar Bram Matthys2008-12-281-0/+2
* - Fix crash if settime/expirytime is out of range in TKL, set by another••• server. Should never happen except when using faulty services or when something else got horrible wrong (like a date which is 40 years ahead). Reported by Darth Android (#0003738). Gravatar Bram Matthys2008-12-211-5/+20
* - except ban { } is now also effective against Z:lines. It already protected••• when the user was connected, but not once he/she tried to reconnect, this is now fixed. Reported several times, last by Stealth in #0003377. Gravatar Bram Matthys2008-12-211-1/+7
* - Added slow spamfilter detection. For each spamfilter, Unreal will check,••• each time it executes, how LONG it takes to execute. When a certain threshold is reached the IRCd will warn or even remove the spamfilter. This will prevent a spamfilter (regex) from slowing down the IRCd too much, though it's still not a guarantee that it will never go to a halt (eg: in case it takes several minutes to execute a regex or loops forever). Warning can be configured via set::spamfilter::slowdetect-warn (default: 250 milliseconds) and automatic deletion of spamfilters if it takes too long is set through set::spamfilter::slowdetect-fatal (default: 500 ms). NOTE: slow spamfilter detection is currently not available on Windows. NOTE 2: to disable slow detection you can set the warn and fatal settings to 0 (zero). OR to really disable all code, remove SPAMFILTER_DETECTSLOW from include/config.h and recompile. Gravatar Bram Matthys2008-08-081-2/+52
* - Fixed (G)ZLINE check.. it was incorrectly rejecting many IPv6 bans.••• Reported by guigui (#0003572). Gravatar Bram Matthys2008-02-111-1/+1
* - #0002533 reported by Dodge_Ram, patched by WolfSage, regarding notices••• not being sent when /*line and /shun are used to request stats Gravatar stskeeps2007-06-141-0/+10
* - Post-3.2.5 CVS-only bug: Fixed spamfilter on user target not working proper...••• changing nicks (was still trying to match on the old nick), reported by vonitsanet (#0003143). Gravatar Bram Matthys2006-12-121-6/+6
* - [internal] Made a spamfilter_build_user_string function that will build the...••• user target string (nick!user@host:info), insteaf of doing it at like 5 places. - Spamfilter target 'u' (user): the host field (nick!user@HOST:realname) is now escaped with brackets if it's an IPv6 address, eg: blah!blah@[1:2:3:4:5:6:7:8]:hello, reported by aquanight and others (#0003010). Gravatar Bram Matthys2006-11-041-6/+24
* - Deal with unsupported regexes added by remote servers (possible crash other...•••- Fixed crash problem on win32 if TKL times were <0. Obviously it's hard to protect from such invalid server traffic, but figured in this case it might be a good idea since *NIX does not crash. - Made a note about possessive quantifiers, they are scary :P. Gravatar Bram Matthys2006-05-311-3/+33
* - Allow *lining of literalident@* such as clones@* (but not *clones@*), this ...••• far as we want to go with regards to relaxing "too broad" checking... Just continue to use services AKILL for (other) "too broad cases", as many people (correctly) do. Change suggested by salama (#0002911). Gravatar Bram Matthys2006-05-171-23/+34
* - Fixed implicit declaration compiler warning if compiling for ipv6.•••- Fixed some small memory leak on rehash. - Removed spamfilter-oversized-checking when trying to REMOVE one.. duh.. reported by satmd (#00029160). Gravatar Bram Matthys2006-05-171-1/+4
* - CGI:IRC: gzlines, zlines, throttling, and unknown connect floods are now al...••• clients connecting trough a CGI:IRC gateway that is in cgiirc { }. This might also fix a bug where (g)zlines were not applied to CGI:IRC clients, reported by devil (#0002850). Gravatar Bram Matthys2006-03-141-1/+13
* - Fixed amd64 problem regarding /*LINE always saying 'The time you specified ...••• reported and test shell provided by Tauop. Gravatar Bram Matthys2006-02-041-2/+2
* - If you now use /(G)ZLINE usermask@something instead of /(G)ZLINE *@somethin...••• an error, since specifying usermask should not be done and is useless, since a (G)ZLINE takes place BEFORE ident lookups. - Did the same for /(G)ZLINE *@hostmask (should be *@ipmask), this already was a warning in 3.2.3, and is an error now in 3.2.4. Gravatar Bram Matthys2006-01-161-4/+13
* - Fixes for an amd64 crash problem, reported by Peter Laur (OpenBSD.se).•••- Redid some net synching code to make it more efficient (#2716). - Fixed spamfilter crash problem: the action 'viruschan' is now no longer incompatible with target 'user'. Reported by Monk (#0002570). Gravatar Bram Matthys2006-01-061-59/+56
* - Added 'warn' target which is basically the same as 'block' except it does n...••• It also sends a numeric to the user saying the command has been processed, but a copy has been sent to ircops. I feel this is a good idea for privacy reasons (anti-spy), though I don't know how users will react to this. If you are using this on your network and get users bothering you about it (or before that ;p), it's probably a good idea to explain it somewhere on your site or FAQ :). Example usage: /spamfilter add p warn - Testing_mirc_decode_filter \$decode\(.*\) [WARNING] The numeric text is likely to change in the next few weeks (early-cvs-commit). - If a class block was removed and any other blocks would be referencing the class block (such as: allow::class, oper::class, link::class), then this would cause a crash. Reported by Mike_ (#0002646). Gravatar Bram Matthys2005-09-251-9/+83
* CMDLINE_CONFIG change & FAKELAG_CONFIGURABLE added:•••- CMDLINE_CONFIG behavior change: command line configuration is now still permitted if #undef'ed (which is the default) if uid==euid && gid==egid, since it doesn't make any sense to disable it then and is in fact just plain annoying. - Added FAKELAG_CONFIGURABLE option in include/config.h, this enables an option called class::options::nofakelag, which disables "fake lag" for a certain class (that is: the artificial delay introduced by the ircd to prevent flooding is turned off, allowing the user to flood at full speed). IT'S USE IS DISCOURAGED UNLESS YOU REALLY KNOW WHAT YOU ARE DOING. Sorry, option is not in ./Config -advanced since I don't get autoconf working, but it's such a scary option that this might as well be a good idea to keep in config.h anyway. This feature has been suggested for several years (and refused), but the final suggestion (with implementation specific hints) came from Gilou in bug #0002207. - changed a comment slightly in m_tkl.c to get rid of harmless warning ;) Gravatar Bram Matthys2005-08-281-1/+1
* another fix, for a slight variantGravatar Bram Matthys2005-08-281-1/+5
* - (5 minutes later..) Small update for above, fix was incorrect for ipv6.Gravatar Bram Matthys2005-08-281-2/+8
* - Fixed a bug where an invalid /*line could cause a crash, reported by Gilou ...Gravatar Bram Matthys2005-08-281-2/+4
* - Spamfilter: regexes (and reasons) are now more limited in size, this is to ...••• a spamfilter, but cannot remove it" problems. In practice this means - depending on the length of your spamfilter reason - regexes will be max ~300 characters. Spamfilters set in the .conf can be slightly longer (which still causes them to be truncated in '/stats f', but they don't have to be removed anyway so it's kinda acceptable if it's really needed). This should fix bug #2083, reported by White_Magic. Gravatar Bram Matthys2005-08-281-1/+19
* - Temporary workaround for spamfilter bug: action 'viruschan' in combination ...••• 'u' (user) target can cause severe problems (crashes, etc). For now, we have disabled 'viruschan' in combination with 'u'. A real fix will require quite some work, sorry. Gravatar Bram Matthys2005-08-191-0/+29
* - Fixed various major bugs due to TKL move from 13h ago.Gravatar Bram Matthys2005-06-051-1/+7
* - Moved all TKL code and register_user to modules (using efuncs), that means ...••• and 2000 lines total that can be hotfixed if needed ;). The effort involved in moving all this sucks a lot though :/. This might need some more testing to make sure it doesn't break anything. - Updated support OS list in documentation. Gravatar Bram Matthys2005-06-051-5/+1616
* - Fixed a TKL crash on incorrect *line, reported by nanookles1234 (#0002524).•••- Redid include dependencies in Makefile, this makes things safer because on any .h change it would force a recompile of all files, but it could mean things will be a bit slower for us coders unless we tweak it later on. - Changed whois a bit to print less useless results. - Added several indicators to the "detect binary incompatible modules"-system such as detecting of a ziplinks module on non-ziplinks (on windows this is ok however), nospoof module on a a server without nospoof server, etc. Hopefully this will help some people preventing odd crashes because they did not recompile or (re)install modules properly. - Added './unreal backtrace', so far this has only been tested on Linux and FreeBSD. - Fixed a bug making ./Config not load the previously stored settings on Solaris 10 and probably other Unixes, reported by lion-o (#0002474). Gravatar Bram Matthys2005-05-261-0/+5
* typoGravatar Bram Matthys2005-03-021-1/+1
* - Made the (G)ZLINE warning only happen on add, as it should. Reported by crazy.Gravatar Bram Matthys2005-03-021-1/+1
* - A warning is now sent to the oper if (s)he tries to add a (G)ZLINE on *@host.••• (G)ZLINES should have an ipmask, not a hostmask, because they are processed BEFORE any dns lookups are done. Gravatar Bram Matthys2005-02-271-0/+15
* - Fixed /(G)ZLINE [nick] placing the *line on *@host instead of *@IP, reporte...••• Snake (#0002246). Gravatar Bram Matthys2005-02-271-1/+13
* Made CIDR no longer accept bitmasks with less than 16bits for /*line commandsGravatar codemastr2004-12-271-0/+16
* Made typing /kline, /shun, /zline, and /gzline correctly report the correct /...Gravatar codemastr2004-11-131-3/+73
* Corrected numerous -Wall warningsGravatar codemastr2004-11-041-5/+1
* - Some text updates... docs: now 3.2.2-CVS, lso got rid of double version to ...••• confusion. credits: fixed typo. Gravatar Bram Matthys2004-10-301-5/+0
* - Seems I forgot to del_Command() SPAMFILTER and TEMPSHUN.Gravatar Bram Matthys2004-06-011-1/+3
* - Fixed /spamfilter reason field bug.. things were double escaped sometimes,••• especially in post-RC2-cvs this was noticable. Reported by Fury (#0001670). - help.conf: updated snomasks section. Gravatar Bram Matthys2004-03-191-2/+6
* Added check to detect broad /spamfilter masksGravatar codemastr2004-03-081-1/+1
* - Added /tempshun, temporary shuns the current session of specified nick••• (just like the 'tempshun' in spamfilter and ban version). Suggested by Cnils (#0001526). [docs/help.conf will be updated later] Gravatar Bram Matthys2004-02-211-0/+78
* spamfilter improvements•••- Fixed a few wrong macro's (ircstrdup/ircfree) in s_conf.c causing very weird behavior... This also fixes a bug where set::spamfilter::ban-reason would have the value of ban-time. - Improved spamfilter again. - The new syntax is: /spamfilter [what] [type] [action] [tkltime] [reason] [regex] [tkltime] specifies the duration of any *lines placed by this rule. [reason] specifies the *line, kill and/or block reason.. no spaces allowed, but '_' will be escaped to a space. In both cases you can simply use '-' to skip and use the default. Ex: /spamfilter add p block - - Come watch me on my webcam /spamfilter add p gline 3h Please_go_to_www.viruscan.xx/ nicepage/virus=blah Come watch me on my webcam - A message is now shown if the msg/notice/dcc is blocked. - There are 2 new spamfilter action types: 'dccblock' will mark the user so (s)he's unable to send any files by DCC. 'viruschan' will part the user from all channels and join set::spamfilter::virus-help-channel (default: #help). this action might be improved to do more later. - Internal: added EXTTKL PROTOCTL, this determinates if 10 parameters instead of 8 are supported for m_tkl (used by spamfilter add). This new system needs some testing... :) Gravatar Bram Matthys2004-02-201-23/+41
* - Ripped out fast (bad)words support out of spamfilter to avoid confusion, al...••• spamfilter::word to spamfilter::regex to make it even more clear (since we match on the whole line and have nothing to do with words.. 'word' doesn't make sense). - Updated docs with some better regex examples, reported by AngryWolf (#0001520). Gravatar Bram Matthys2004-02-061-1/+1
* - Fixed issue when 2 servers link with identical user@host *:lines but with d...••• expire times, reason field, etc... Entries are now fully synced between servers. Reported by Cnils (#0001448). - Added umode +T to help.conf - Fixed an issue with add/del/remove in /spamfilter being case sensitive. Gravatar Bram Matthys2004-02-031-2/+2
* spamfilter etc... *pray*Gravatar Bram Matthys2004-01-281-34/+12
* - Changed random number generator to use arc4random-alike routines so we can ...••• random numbers. We will also no longer be using rand()/random() anywhere. Thanks to dek\ for pointing out this is potentionally dangerous, especially on win32 with NOSPOOF enabled. Gravatar Bram Matthys2004-01-191-0/+3
* - 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 Gravatar Bram Matthys2004-01-161-0/+128
* - Made win32 work again (broke it by /module patch 35 minutes ago).Gravatar Bram Matthys2003-11-111-2/+2
* - 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. Gravatar Bram Matthys2003-11-111-0/+2
* "typo"... not all *lines are glines :pGravatar Bram Matthys2003-10-191-2/+2