4311 Commits

Author SHA1 Message Date
brain
e3512c0948 Advance the version number to beta7+SVN
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6039 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 21:25:12 +00:00
brain
bfc59c18d5 Branch for beta 6 Juletre
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6037 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 16:37:55 +00:00
brain
b8d63cd639 Fix this (at last) to only log commands which are operonly
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6036 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 15:24:09 +00:00
brain
6ba56871c0 Correctly send TS in JOIN so that services packages etc dont become desynched (plus our own protocol docs say we do this when we send JOIN, oops breaking my own standards now)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6034 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 13:35:21 +00:00
brain
dec9eaa588 Dont use FJOIN to join users to channels outside the burst (revert to earlier betas behaviour) which should prevent some spurious deops during normal
operation


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6032 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 13:15:43 +00:00
peavey
3712db9cc6 Invented safe delete-while-itering for hash_map.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6029 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 02:46:47 +00:00
brain
0632c7946c When receiving an FJOIN, if we have no local users, dont send deops, this just contributes to pointless server noise
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6028 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 02:18:03 +00:00
brain
a5af52146d Handle removal of permenant svsholds
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6027 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 01:22:10 +00:00
brain
9412c90616 Fix potential crash, not enough parameters for va_arg when adding perm SVSHOLD
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6026 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 01:18:29 +00:00
peavey
8fa4bf7aef Fix a little = turned into a ==
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6025 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 01:17:56 +00:00
peavey
e2322b3feb Use safe iter for deleting while iterating
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6024 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 01:14:18 +00:00
brain
c2b1ee00bc someone test this please
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6023 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 01:07:28 +00:00
brain
ebb892cdfd If the caller said no linefeeds, dont bail, instead just turn the linefeeds into spaces, so that
"aaaa
bbbb"
becomes "aaaa bbbb".


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6022 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 00:35:05 +00:00
brain
1eb1b8d925 Add format="" value, at request of Emeric.
See: http://www.inspircd.org/forum/index.php/topic,245.0.html


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6019 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 23:15:50 +00:00
peavey
d7bc663d0a Config option added for prefixed channel NOTICEs and PRIVMSGs to turn on/off IRCU style of adding prefix to outgoing text.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6018 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 22:43:56 +00:00
brain
dbe93e4477 Add stuff so that the core catches CoreException properly
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:40:06 +00:00
brain
d2bc82e04d Allow linefeeds in this module in one value
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6016 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:14:54 +00:00
brain
26c01a6774 Tidy up text formatting
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6015 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:12:30 +00:00
brain
c44487d3b4 Change m_helpop to use the new boolean flag in ReadConf for allowing newlines, tidy up text formatting a bit.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6014 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:10:01 +00:00
brain
e65c1d261c Add an optional parameter to ConfigReader::ReadValue which defines if we want linefeeds or not.
Tidy up some duplicated code in configreader (error reporting)
Change ModuleException to inherit from CoreException, have the configreader throw and catch its CoreException on fatal error


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6013 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:04:47 +00:00
brain
30b15910f1 Add some comments to explain whats going off in one of the TreeSocket constructors
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6011 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 10:49:13 +00:00
brain
26d5bbeb12 Not sending capab when theres no transport module attached to a server socket
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6010 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 10:28:15 +00:00
brain
205108cd4e Get rid of HelpopException, use ModuleException thats had reasons for ages now
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6009 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 09:58:45 +00:00
w00t
b8fc8b8ea6 w00t: the power to rewrite modules in the leap of a small tiredness barrier. helpop refactored to use a leet cached map lookup, should be fast, leet, cool, etc. I'm going to bed.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6008 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 03:00:40 +00:00
peavey
c23b62f96a Make SNO notice for +o global
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6007 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 02:55:53 +00:00
peavey
696dea9924 Make irc::spacify take 'const char*' instead of 'char*'
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6005 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 02:54:03 +00:00
brain
daa206e243 Linefeeds in quotes, just for w00t.
WARNING: THIS NEEDS SOME EXTRA STUFF TOMORROW: Someone remind me to add a 'no linefeeds' bool flag to ConfigReader::ReadValue, because a lot of values should NOT have linefeeds in!


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6004 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 02:23:00 +00:00
w00t
377d8700af Usermode +G allowed opers to change other user's modes. As the core doesn't follow this behaviour anymore, neither does it.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6002 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 00:54:16 +00:00
brain
6aecd4c9ec Fix setting of * for bans in m_messageflood, this has been broken for quite some time and nobody noticed? :P
Spotted on barafranca, tested on chatspike.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6001 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 00:22:40 +00:00
w00t
96a89aef2d s/ChatSpike/InspIRCd/ development team
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5999 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 22:41:53 +00:00
w00t
a7cbd51d45 Still more massive commit fun. Headers in include/ still to be done, else that's it.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5997 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 22:03:27 +00:00
w00t
1552f3918a Jesus, look who's the commit whore today. More header updates, and removal of namespacing.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 21:45:30 +00:00
w00t
3a554ef1e9 Remove global namespacing, makes modules compile FASTAH. Also massive update on headers (change to InspIRCd Development Team, extend copyright to 2007).
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5995 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 21:33:22 +00:00
brain
827a4bcdb3 Try harder to make sure the ERROR string gets sent when closing a connection
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5994 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 18:12:37 +00:00
brain
457362304b Cleaning up irrelevent stuff in channels.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5993 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 17:32:16 +00:00
brain
bfca00707e Remove commented out FlushWriteBuf()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5992 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 21:30:21 +00:00
brain
29d6347953 Remove misc debug
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5991 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 20:43:39 +00:00
brain
458a3297e4 Fix silly bug of the day.
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
2006-12-14 20:35:21 +00:00
brain
51b1560725 Remove FlushWriteBuffer() from DoBackgroundUserStuff(). Its no longer required here, it used to try and flush the buffer before we actually monitored write events, long ago, without seeing if it could write first, and wasted cpu. It should be removed now and doesnt seem to affect anything.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5989 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 19:51:56 +00:00
brain
4652f73b9e CPU Usage percent in stats z! yay!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5988 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 19:30:42 +00:00
brain
1a59b542f9 Change how users are quit if they get a write error during the things they do.
Instead of QuitUser inside FlushWriteBuffer() (potentially *UNSAFE*), go back to using SetWriteError(),
but to ensure we dont get a cascade of bad write events from the socket engine, QuitUser the user before
returning in userrec::HandleEvent, after we can gaurantee ALL other reading or writing is done.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5987 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 17:58:13 +00:00
brain
a78cecbeb9 Refactor userrec::chans.
Old way: A vector of ucrec, MAXCHANS in size by default populated by NULLS, so you have to scan the vector to find an empty slot when joining a user, parting a user etc
New way: std::map<chanrec*, char> (the char holds their basic core permissions on the channel [voice, halfop, op])
This increases speed a ton, and removes some wtf-age.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5986 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 17:46:47 +00:00
brain
4eb254df41 Refactoring:
1) Chain together a resize and an append, to improve the buffer read efficiency
2) eliminate a const char* pointer by doing it purely with string, saving a data copy
3) use iterators rather than ints and vector::size() for spooling motd and rules files to users
4) change a usage of !length() to empty() to make it more readable


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5985 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 16:57:52 +00:00
brain
06149e3f2b Fix m_watch to properly use OnCleanup, and to delete pointer on quit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5984 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 22:48:55 +00:00
brain
cb3571cf32 Comments
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5981 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 20:24:19 +00:00
brain
a320a5c787 Turn watchlist back to map. watchlist is small, watchentries is large, only watchentries needs to be hash_map
(watchentries is the primary index of whos watching each nick, watchlist is the small nicklist attached to each user)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5980 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 20:08:45 +00:00
brain
6bd9e67851 Change m_watch to use hash_map rather than map, because of the large number of entries we deal with it will usually be faster
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5979 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 20:07:08 +00:00
brain
f240285155 Improve the way 005 ISUPPORT is sent to users when they connect, cache it in a much more sane format which is much simpler to spool to them
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5978 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 20:00:33 +00:00
brain
15e70c8fe6 Properly fix 'changed nickname from one thats on your notify to one thats not' condition.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5977 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 19:38:12 +00:00
brain
0f0f184418 Whoops, one too many params
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5976 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 19:29:56 +00:00