aboutsummaryrefslogtreecommitdiffstats
path: root/src/s_kline.c
Commit message (Expand)AuthorAgeFilesLines
* - 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-1568/+17
* - Module coders: Added HOOKTYPE_LOCAL_SPAMFILTER: catches (local) spamfilter ...Gravatar Bram Matthys2005-04-021-0/+1
* - Fixed a bug where shuns placed on IP's did not take effect to currently con...•••- Fixed a small doc bug regarding shun in spamfilter, reported by KnuX (#0002338). Gravatar Bram Matthys2005-02-141-11/+5
* - Fixed shuns not working as target in spamfilter and ban version { }, report...••• (#0002223). Gravatar Bram Matthys2005-02-131-2/+7
* - Added spamfilter topic support ('t' in /spamfilter, or 'topic' in conf), su...••• by Z3l3zT (#0001929). Gravatar Bram Matthys2005-02-041-0/+5
* - Made m_template.c use CommandAdd() and CMD_FUNC()•••- Modulized a lot of commands and related subfunctions: NICK (750 lines), USER (200), MODE (2300), WATCH (250), JOIN (600), PART (250), MOTD (100), OPERMOTD (100), BOTMOTD (100), LUSERS (100). More will follow soon (probably including more subfunctions related to existing commands). Gravatar Bram Matthys2005-02-031-2/+2
* Added a set::gline-address which works like set::kline-addressGravatar codemastr2004-12-011-20/+23
* Corrected numerous -Wall warningsGravatar codemastr2004-11-041-2/+0
* - Fixed serious heap corruption bug if remote users were using qlined nicks, ...••• Gilou and Trankill for making me able to trace this issue down (#0002032). - Fixed qline notices again: now gives msg #1 for local qlined-nick attempts, and another msg in case of a remote client (eg: oper) using a qlined nick. Gravatar Bram Matthys2004-10-161-2/+2
* - Added spamfilter 'away' ('a') target (#0002057).Gravatar Bram Matthys2004-10-111-1/+13
* - Fixed OOB read/write on user quit (did no harm on Linux&FreeBSD).•••- Fixed some tiny memory leaks (~100 bytes) on rehash. - Updated chinese&japanese GBK nick code, fix supplied by Xuefer (#0002051). - Added release notes (unfinished). Gravatar Bram Matthys2004-10-101-0/+3
* - Module coders: Added HOOKTYPE_REMOTE_JOIN, HOOKTYPE_REMOTE_PART, HOOKTYPE_R...••• work just the same as the HOOKTYPE_LOCAL_* variants). - Module coders: HOOKTYPE_REMOTE_CONNECT is now also called during net-merge. You can use IsSynched(sptr->srvptr) to find out if it's called due to a net merge (0) or a connect (1). - Added spamfiler 'user' (u) target. This regex is checked against nick!user@host:realname when a user connects. This makes it easy to ban drones with simple patterns. For example: '/spamfilter add u gzline 86400 Drone[0-9]+!.+@.+:Drone[0-9]' would kill any drones that have both a nick and realname with 'Drone' followed by digits. Gravatar Bram Matthys2004-10-061-2/+27
* Fixed a problem where a local TKL could be sent to remote servers when it is ...Gravatar codemastr2004-09-041-1/+2
* Fixed a bug with IP based except tkl {} lines did not validate the ident port...Gravatar codemastr2004-09-041-1/+1
* - Updated HOOKTYPE_TKL_ADD/HOOKTYPE_TKL_DEL to cptr, sptr, tk, parc, parv, el...••• impossible to tell *who* removed a *line. Again, parc/parv are 0/NULL for expires. Gravatar Bram Matthys2004-06-251-3/+3
* - Added new logtype 'spamfilter' to log spamfilter matches•••- Updated example.conf: added all new flags we added in the example block, removed old confusing comment on SEGV logging, config.h: ripped out lPATH since that define isn't anywhere used and is only confusing. Gravatar Bram Matthys2004-06-251-0/+1
* - internal: Added GetIP() which we will now use instead of all the Inet_ia2p(...••• because it's slightly faster (already replaced all of them in src/s_kline.c). GetIP(acptr) will return the ip for local users and remote users that support NICKIP, it returns NULL for remote users that are on non-NICKIP servers (or have non-NICKIP servers along their path). - internal: tkl_add_line now returns aTKline * - Added some more hooks: - HOOKTYPE_TKL_ADD [aClient *cptr, aClient *sptr, aTKline *tk] - HOOKTYPE_TKL_DEL [aClient *cptr, aClient *sptr, aTKline *tk] NOTE: 'NULL, NULL, tk' is used for *lines that are removed due to expiring - HOOKTYPE_LOCAL_KILL [aClient *sptr, aClient *target, char *comment] Gravatar Bram Matthys2004-06-191-22/+22
* - Fixed find_qline crashes regarding except tkl 'type qline', reported by Gil...•••- Fixed some CIDR bugs causing things not to match. Gravatar Bram Matthys2004-06-181-8/+26
* Added CIDR supportGravatar codemastr2004-06-171-36/+96
* Made a bunch of TKL parameters case insensitiveGravatar codemastr2004-06-011-5/+5
* compile warning cleanupsGravatar codemastr2004-05-271-0/+1
* - Added set::spamfilter::virus-help-channel-deny. This allows you to block any••• normal joins to the virus-help-channel. This way you could prevent users into accidental (or tricked) joining of the virus-help-channel and becomming infected. This feature is disabled by default. Requested by bleepy (#0001811). Gravatar Bram Matthys2004-05-181-1/+6
* - Changed the way MSG/NOTICE <prefix>#chan works:••• - It now goes to <prefix> and higher, so '/notice +#chan hi!' goes to +vhoaq - You need at least voice in order to be able to msg/notice +#chan, %#chan or @#chan - You need at least ops in order to be able to msg/notice &#chan or ~#chan - Any multi-prefix targets will be converted automatically (eg: ~&@#chan to @#chan). - internal: use of the CHANOPPFX macro is now deprecated. All of this was done to make it a bit more 'safe' and userfriendly (#0001812). Gravatar Bram Matthys2004-05-141-1/+1
* Added module support for WindowsGravatar codemastr2004-05-121-1/+1
* - 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/+9
* - Fixed /spamfilter removal problem... often the wrong entry was removed [!] or••• nothing was removed at all. Reported by MiNdErAsR, RealCFC and others (#0001669). Gravatar Bram Matthys2004-03-191-7/+12
* - More Opteron fixes... sizeof() fun, %B fun (always use a 'long'!), etc..•••- Added __attribute__ stuff for ircsprintf() to catch more warnings. Gravatar Bram Matthys2004-03-111-2/+2
* Fixed a spamfilter memory leakGravatar codemastr2004-03-101-0/+1
* - Fixed an issue where chanmode +f was often set by the server again••• in a netjoin when there was no need to (nothing to synch). - Added spamfilter::except which allows you to specify targets (eg: channels) where spamfilter should not take action. Requested by Fury (#0001586). Ex: set { spamfilter { except "#spamreport,#help"; }; }; Gravatar Bram Matthys2004-02-251-0/+20
* - '0' tkltime in spamfilter now really means 'perm', not '*line for••• 0 seconds' or something. Reported by Certus. Gravatar Bram Matthys2004-02-231-1/+4
* Fixed a TKL update bug with sqlinesGravatar codemastr2004-02-221-4/+8
* - Added some extra debugging for tkl update notice...•••- Fixed a problem in 'tkl update': lowest expire time won instead of highest. Reported by Malcolm. Gravatar Bram Matthys2004-02-221-5/+5
* - Minor fix for previous.•••- Improved 'viruschan' spamfilter target: - better msg after the forced join - +oaq's in set::spamfilter::virus-help-channel receive a notice about which filter the user matched. - it disables all commands except PONG, ADMIN, and msg/notices to set::spamfilter::virus-help-channel. - Made snomask +S also show the spamfilter reason field. - Added class::pingfreq checking, should be 30-600 now.. else you might get mysterious (mass) disconnect issues. - Lol, I made /connect dissapear during modulizing ;). Gravatar Bram Matthys2004-02-221-5/+22
* Moved qlines to TKLGravatar codemastr2004-02-221-59/+206
* now?Gravatar Bram Matthys2004-02-221-2/+2
* - Fixed a bug which prevented "/spamfilter del[..]" from working.••• Reported by Fury (#0001575). Gravatar Bram Matthys2004-02-221-0/+8
* - 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-2/+2
* 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-44/+169
* this should be the last "big commit" before release :p.•••- Added snomasks 'S' (Spamfilter) which notifies you of any spamfilter matches. - [internal] always return after spamfilter match, don't continue looping trough targets list (eg in case of: /msg #a,#b,#c spamspam), otherwise you would get duplicate notification msgs. - Added SENDSNO server command, similar to SENDUMODE but for snomasks, this is used by the spamfilter snomask (+S) so you get network-wide notifications. - Added "compiled for.." versioning system, this way a beta17 module can't be loaded on beta18, etc... People often forgot to recompile their modules or had old ones somewhere by mistake, therefore crashing after upgrades... this should fix this (in the future). Module coders don't have to do anything for making this work, it's done automatically (via modules.h). Gravatar Bram Matthys2004-02-071-1/+16
* - 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-35/+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-4/+42
* - Fixed possible compile bug (caused by HOOKTYPE_TKL_EXCEPT).Gravatar Bram Matthys2004-01-311-1/+2
* - Added HOOKTYPE_TKL_EXCEPT (arg: cptr, tkline) which is called from find_tkl...••• and find_tkline_match_zap. This can be used to add custom TKL exceptions. Gravatar Bram Matthys2004-01-301-1/+11
* spamfilter etc... *pray*Gravatar Bram Matthys2004-01-281-53/+134
* - 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-48/+111
* - 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. Gravatar Bram Matthys2004-01-011-70/+131
* - 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.. Gravatar Bram Matthys2003-10-301-0/+77
* - stats bugfixes: a null pointer crash and a '/stats k' bug.Gravatar Bram Matthys2003-08-021-2/+2
* Added a new stats systemGravatar codemastr2003-08-011-7/+92
* Fixed numerous logging bugsGravatar codemastr2003-07-151-0/+3