aboutsummaryrefslogtreecommitdiff
path: root/src/xline.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix ELine::Matches returning false on existing matchGravatar genius30002018-04-061-3/+0
| | | | | | | | | | | | | | | | | | | When checking for an E-Line match, we want to actually check for a current match even if we previously matched and are set exempt. This fixes situations where you have an E-Lined CGI:IRC address, a G-Lined IP range for some area/host/etc and a smaller E-Lined IP range for known good clients. Currently when CGI:IRC changes the IP, E-Lines are rechecked but because the user is already exempt (from the CGI:IRC E-Line), they are set no longer exempt and match a G-Line, when they should match an E-Line. This exact change has been done before in commit 'c8b344e' and shortly reverted in 'c490a90' to fix issue #989 (CGI:IRC users remaining exempt when the CGI:IRC address is E-Lined but they are not). The actual cause to this issue was likely that the user's hostname was not changed from the CGI:IRC hostname/IP prior to rechecking E-Lines. This is being fixed in a separate commit.
* Fix killing elined clients on [gkz]line in some cases.Gravatar Peter Powell2017-09-111-8/+3
|
* Revert c8b344ea748d62d9f37cacd4dd785f15b186725c to fix regressionGravatar Attila Molnar2015-04-161-0/+3
| | | | Fixes issue #989 reported by @B00mX0r
* Fix elines not matching elined users when rechecking elined statusGravatar Attila Molnar2015-01-171-3/+0
|
* Fix expired xlines being treated as live ones in XLineManager::AddLine()Gravatar attilamolnar2012-12-051-1/+6
| | | | | | | | | This fixes ADDLINEs not being propagated and /gline etc. failing for already existing but expired xlines Special thanks to @JDowny (TinMan) for his detailed report and cooperation that made this fix possible Fixes #306 reported by @TurkDesk Fixes #379 reported by @JDowny
* Add a typedef for LocalUserListGravatar attilamolnar2012-11-291-4/+4
|
* Change empty string assignments to .clear() or remove them entirelyGravatar attilamolnar2012-11-281-1/+1
| | | | Part 2 of ba5c0db795824c3fc1ad48ce332d7bdc440cb77f
* Remove superfluous std::string()sGravatar attilamolnar2012-10-121-1/+1
|
* Remove unnecessary cleanup in XLineManager destructorGravatar attilamolnar2012-08-251-5/+0
|
* Remove unnecessary string copy in XLineManager::InvokeStatsGravatar attilamolnar2012-08-251-4/+2
|
* Remove negative BanCache entries only when the AddLine is successful instead ↵Gravatar attilamolnar2012-07-221-2/+2
| | | | of removing them before checking anything
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-191-8/+18
|
* ...because every now and again, i have to do a massive commit.Gravatar brain2010-01-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
* Move command-line items to CommandLineConfGravatar danieldg2009-10-211-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11949 e03df62e-2008-0410-955e-edbf42e46eb7
* Split LocalUser and RemoteUserGravatar danieldg2009-10-211-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11940 e03df62e-2008-0410-955e-edbf42e46eb7
* Update documentation and remove unused classes/functionsGravatar danieldg2009-10-211-13/+93
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11938 e03df62e-2008-0410-955e-edbf42e46eb7
* Get rid of a bunch of memory-wasting C-style stringsGravatar danieldg2009-10-031-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11796 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove InspIRCd* parameters and fieldsGravatar danieldg2009-09-261-7/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix iteration of ServerInstance->Users->local_users now that QuitUser can ↵Gravatar danieldg2009-09-161-2/+3
| | | | | | modify the vector git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11732 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove calls to strdup() in core, it is not better than std::stringGravatar danieldg2009-09-021-10/+15
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11623 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't apply bans to E:Lined connections. Should fix bug #896.Gravatar w00t2009-08-011-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11452 e03df62e-2008-0410-955e-edbf42e46eb7
* Update all wiki links to point to the new wiki. This was done automatically ↵Gravatar psychon2009-03-151-1/+1
| | | | | | | | | with the following command, only .Makefile.inc got some indent fixups by hand. for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7
* In retrospect, not allowing *any* XLines to be set was pretty fucking stupid.Gravatar w00t2009-02-221-1/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11141 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't remove an expired xline on add, simply drop duplicates (1.1 ↵Gravatar w00t2009-02-221-9/+2
| | | | | | behaviour). This can lead to bouncing between servers. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11140 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't allow expired XLines to be added.Gravatar w00t2009-02-221-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11139 e03df62e-2008-0410-955e-edbf42e46eb7
* Nuke trailing spacesGravatar peavey2009-02-141-7/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7
* Note to self, cast time_t to long int for printf... thanks Ankit for ↵Gravatar dz2009-01-281-5/+5
| | | | | | pointing this out. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11012 e03df62e-2008-0410-955e-edbf42e46eb7
* Make xline expiry messages a bit clearer that the xline may have expired a ↵Gravatar dz2009-01-281-5/+5
| | | | | | while ago, and give the correct time since they were set instead of the duration. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11011 e03df62e-2008-0410-955e-edbf42e46eb7
* Check line expiry when touching an xline, to prevent huge buildup of stale ↵Gravatar w00t2009-01-271-12/+9
| | | | | | lines chomping CPU. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11007 e03df62e-2008-0410-955e-edbf42e46eb7
* Update copyrights for 2009.Gravatar w00t2009-01-021-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
* Move stuff to use ASCII map where required.Gravatar w00t2008-12-071-9/+9
| | | | | | Also move this out of being a member totally, as it breaks (gah) and is already untidy.. to be revisited. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10858 e03df62e-2008-0410-955e-edbf42e46eb7
* Second part of fix for bug #605, make adding and removal of lines not case ↵Gravatar brain2008-09-221-10/+10
| | | | | | sensitive git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10590 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #605 reported by MacGuyver, if a line is expired when we are ↵Gravatar brain2008-09-221-1/+10
| | | | | | adding another with the same hostmask, replace the existing line with the new one git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10589 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't check E:Lines when enforcing Q:Lines on connected users. Thanks MacGyver.Gravatar w00t2008-09-191-3/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10559 e03df62e-2008-0410-955e-edbf42e46eb7
* Rename lowermap to rfc_case_insensitive_map, add case_sensitive_map.. adjust ↵Gravatar w00t2008-08-281-16/+16
| | | | | | files to not pass lowermap directly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10337 e03df62e-2008-0410-955e-edbf42e46eb7
* match() is no longer a function+no header, now a static method of InspIRCd ↵Gravatar w00t2008-08-211-14/+16
| | | | | | class, blah blah blah. Also rip out the 1.2 matcher, as it was slow, and replace it with one adapted from znc, which happens to be a tiny bit faster than 1.1's (and the fastest I've seen so far that works properly) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10212 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove last vestige of libircdfoo, by changing tag into a single ↵Gravatar w00t2008-07-291-1/+1
| | | | | | identifier marking object as requiring compilation into a .o (minor commit) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10076 e03df62e-2008-0410-955e-edbf42e46eb7
* Add XLineManager::DelAll to delete all lines of a given type.Gravatar w00t2008-07-121-0/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9975 e03df62e-2008-0410-955e-edbf42e46eb7
* Make User:: nick/ident/dhost/fullname and some other things std::string ↵Gravatar aquanight2008-05-181-2/+2
| | | | | | instead of char*/char[] (MODULES DO NOT COMPILE) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove .c_str()'s in match() calls that are no longer needed as match() ↵Gravatar brain2008-05-181-5/+5
| | | | | | natively takes std::strings git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9737 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix quietbans and hidesplits etc, cull list's sending a seperate quit ↵Gravatar brain2008-04-211-0/+1
| | | | | | message to normal users was broken git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9574 e03df62e-2008-0410-955e-edbf42e46eb7
* Merge in large patchset from GreenReaper, useful fixes for freeing a ton of ↵Gravatar brain2008-04-211-0/+12
| | | | | | different things on shutdown for tidyness, and a few stack corruption fixes in the mode handler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9565 e03df62e-2008-0410-955e-edbf42e46eb7
* Move QuitUser into UserManager class, and unstaticize it. This prepares for ↵Gravatar w00t2008-04-091-2/+2
| | | | | | some benchmarking lulz on object pooling I plan to do today, as well as making more sense now we *have* a manager class git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9442 e03df62e-2008-0410-955e-edbf42e46eb7
* Add extra stuff for w00t, AutoApplyToUserList method for XLineFactoryGravatar brain2008-04-071-1/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9409 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix bug (partially/accidentally) discovered by Bricker: if an XLine is not ↵Gravatar w00t2008-04-051-1/+4
| | | | | | permanent, bancache should use the expiry time of the xline, not an arbitrary value git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9356 e03df62e-2008-0410-955e-edbf42e46eb7
* Commit -Wformat=2 -Wmissing-format-attributes, printf-like functions in ↵Gravatar aquanight2008-03-301-5/+5
| | | | | | inspircd now get treated like printf (meaning compile-time check goodness) in GCC git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9217 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert remaining InspIRCd::Log() calls to new logging systemGravatar aquanight2008-02-221-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7
* I gots a better fix :pGravatar brain2008-02-171-0/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8951 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix trampling on memory in Z/G/K/ELine.Gravatar w00t2008-02-111-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8901 e03df62e-2008-0410-955e-edbf42e46eb7
* Add -Wshadow to cflags, and fix a bunch of warnings that come with it. Add a ↵Gravatar w00t2008-02-111-4/+4
| | | | | | note to webirc that needs looking at. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8892 e03df62e-2008-0410-955e-edbf42e46eb7