summaryrefslogtreecommitdiff
path: root/src/channels.cpp
AgeCommit message (Collapse)Author
2008-02-02Small tidyupw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8797 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-10Header update: 2007 -> 2008w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-06Permanent channels, currently conflicts with blockcaps (+P) and is untestedw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8650 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-06Throw exception if trying to construct a duplicate channelw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8648 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-06Move CreateChannel to a constructor insteadw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8647 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-06Move channel creation to a seperate Channel::CreateChannel (y'know, perhaps ↵w00t
this might go into a constructor sometime) in preperation for permanent channels git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8646 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-10m_spy no longer implements SPYNAMES, instead it overrides normal NAMES on ↵brain
the event that: (1) you are an oper and (2) you are not actually ON the channel. This way it will not break m_auditorium, m_delayjoin etc, however it will work properly with mircs annoying assumptions in its channel list git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8555 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-09Roadmap item "Fix jointhrottle to not try 'throttle' clients during a ↵brain
netmerge (requires changing join event to be aware of netmerge?)" -- 1.2 only requires an extra parameter to OnUserJoin, bool sync. usually false, but FJOIN code during burst sets it to true. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8552 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-22Remove the need for a bunch of the hard coded arrays/hashes by scanning the ↵brain
src/ dir for tag comments, like in modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8307 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15In the grand tradition of huge fucking commits:w00t
- chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28From RFC 2812, the funny = that i could never identify in NAMES reply: = ↵brain
means public, @ means secret and * means private. Fixed in affected modules to display the proper character (will backport) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7952 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28Remove some fake client stuff, make it use the global recordw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7941 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Remove more unnecessary header trafficw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7887 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23Add some stuff to change how we process a token sepeperated streambrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7800 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19Add <connect:maxchans> as per feature bug #338 - combined with the last ↵brain
feature, this allows per-oper specific maxchans values, and even the same for non-opers! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7761 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-05Logic cleanup for chanrec::JoinUser - why I didn't do this the other 3-4 ↵w00t
times I've reworked this I don't know.. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7670 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Tidyup a bunch of stuff that was using userrec::modes directly rather than ↵brain
userrec::IsModeSet. Same for chanrec. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7506 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Bit more tidying. Add some comments here, too.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7504 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Minor cleanupw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7503 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Fix for bug #358, by rogalek.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7501 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵peavey
auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-09Change some = "" to clear() and some == "" to .empty()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7263 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-01This is a better fix, as it calls the mode handler giving the modules etc ↵brain
chance to allocate structs git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7198 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-01Fix bug found by indigophone where +lk cant be set in defaultmodesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7197 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-27Config option for default channel modes -- more to follow, don't use yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7163 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-21Reorder includes, dont worry there is method to my madness (i hope)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7093 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-12We've had an IS_OPER macro for a long time. About time we started using it, ↵w00t
maybe? :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6990 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-10Comment what ive done, so that someone doesnt go 'oh thats a redundant data ↵brain
copy, what muppet put that there' and take it out, giving everyone uhnames output that doesnt support it :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6941 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-10Tweaks here so we can avoid data copies in uhnamesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6940 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-10Small api change with wide reaching effects in modules - Allows modification ↵brain
of whats displayed by NAMES on a per-nick basis, so we can have UHNAMES in a seperate module to NAMESX (and possibly do some funky other stuff in the future too!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6934 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-08We're setting chanrec::creation in here and not chanrec::age, this can and ↵brain
will fuck up TS. Set Both. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6910 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-04Fix bug where if an op is in channel then does /names later, all the non-ops ↵brain
dissapear! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6877 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-04Add <auditorium showops> which determines if auditorium works like ircnet +a ↵brain
(anonymous channels) or like unrealircd +u. The old behaviour is similar to anonymous channels, only showing the current user. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6875 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-04Where others charge, we give for free. Have fun and use wisely. With great ↵brain
power comes great responsbility. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6867 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-03DO NOT USE THIS COMMIT - if you do, most of the modules wont work.brain
DEVS: Please fix all modules that have warnings to use the new parameters to OnUserJoin, OnUserPart and OnUserKick (bool &silent) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6858 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-18set the TS of a channel in JoinUser, not after the entire FJOIN, this is ↵brain
safer and may fix the odd desync here and there git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6690 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-19Addition of feature request outlined in bug #195, suggested by Brickerbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6602 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-15Crusade to remove debug from stable and tested parts of the core and base ↵brain
modules. Most of the code here being de-noised hasnt had a crash or bug in it for many months, if not a year so the debug output is useless noise in the logfile when trying to trace a bug in a REAL problem area. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6356 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-09Assigning a std::string var initially to "" is pointless.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6271 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-09Tidy up (optimize, improve) chanrec::WriteChannelWithServbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6269 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-09Tidy up an if/then/else chain into a switchbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6268 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-09Cache channel max bans value to save an O(n) loop of match() on every ban ↵brain
(etc) add git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6267 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-06Fix desync with halfop and voice when opped (this happens because we were ↵brain
ORing the wrong value in chanrec::ForceChan) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6232 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30Tweaks to instantiate less stuff when writing to a bunch of usersbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6172 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30Tons of optimization of WriteChannel, WriteChannelWithServ, WriteCommon etc, ↵brain
dont call userrec::GetFullHost or snprintf for every item, call it just once. Turns O(n) calls for every write into O(~1) calls per write. Remove some debug from the socketengines which makes debugging hard on large channels (write availability message) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6171 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23Hash rehashing changebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6080 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15Jesus, look who's the commit whore today. More header updates, and removal ↵w00t
of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15Cleaning up irrelevent stuff in channels.cppbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5993 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14Fix silly bug of the day.brain
User was only getting a userrec::chans entry added if they had any privelages on the channel. If they werent opped, voiced, or halfopped on join, no entry in the hash. Silly brain now added a: user->chans[Ptr] = 0; :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5990 e03df62e-2008-0410-955e-edbf42e46eb7