Adam
845ca576b4
More properly track topic change sources and allow users with access to change topics through topiclock
2015-01-28 22:57:15 -05:00
Adam
1f02278a1c
Log user away messages
2015-01-10 15:24:48 -05:00
Adam
2892c9580f
Replace spaces in opertypes with underscores in stats o
2014-12-28 18:09:37 -05:00
Adam
afffeb0a1d
Update Kill() calls to pass source pointer instead of name
2014-12-05 17:27:08 -05:00
Adam
48be41cf7b
Squit uplink when I receive an squit for myself
2014-10-12 14:34:15 -04:00
Adam
24f17de4aa
Fix stats u on Windows
2014-08-03 18:03:07 -04:00
Adam
f627a3bacd
Core prep for p10 stuff
2014-05-21 08:50:40 -04:00
Adam
866f3f32ab
Speed up akill xline checks
...
Cache xline nick, user, host, etc instead of rebuilding it everytime its
requested. Store users ip in sockaddr form and not string form to
prevent having to rebuild sockaddrs when checking xlines.
Also do not try to convert empty config values in Config::Get as this
can be rather common if a non string configuration value is not set, and
the cost of the ConvertException is great.
2014-05-20 21:16:00 -04:00
Adam
2ab4f175a8
Don't allow users to join channels they are already in
2014-04-25 16:20:23 -04:00
Adam
fee016bb84
Handle nick collisions somewhat instead of blindly overwriting the nicks
...
in memory, which does weird things.
For fun different ircds implement this differently (Unreal compares
timestamps, TS6 compares timestamps and user username/host), and whether
or not we get a kill for our user also varies, so just kill everyone.
This can't really happen anyway with properly set qlines, only if
services haven't yet set the qlines, or possibly in a bot add/nick
user introduce race, or with enforcers, which not many ircds require.
2014-02-27 22:42:54 -05:00
Adam
595dad4ec1
Update copyright to 2014. This was done with:
...
find include/ src/ lang/ docs/ modules/ *.* Config -exec sed -i 's/-20.. Anope Team/-2014 Anope Team/i' {} \;
2014-01-01 20:48:38 -05:00
Adam
6e6543d3ed
I don't think this OnBotKick to hold channels is necessary anymore as Sync should cover everything now, and this causes weird things when the last user in a channel kicks themselves out using the bot. Also handle users rejoining a channel while its held better.
2013-12-31 16:12:21 -05:00
Adam
ab6cd3b26c
Fix a few commands not being able to find non conf opers
2013-12-19 20:35:09 -05:00
Adam
fbbdedf17e
OnJoinChannel can modify the ts for a channel, so update keep_their_modes in the sjoin handler before processing a user. Otherwise we can desync and think users have a channel status when they really don't.
2013-11-20 18:10:26 -05:00
Adam
51a9f64adb
Use the source's sync state and not mine when processing sjoins to determine whether or not to sync the channel on creation, instead sync it when the server syncs.
2013-11-16 09:38:13 -05:00
Adam
e1d460e211
Call OnBotPrivmsg after checking if the message is a ctcp, not before. fix typo in opersrev.example.conf
2013-10-09 16:27:16 -04:00
Adam
ead4aa7ed9
Fix 318 raw being sent for uids on ts6 ircds
2013-08-17 14:05:01 -04:00
Adam
1e625b6837
Use MessageSource as the source for many IRCDProto funcs
...
Keep track of what user modes are oper only/server only/etc
2013-08-01 13:39:35 +00:00
Adam
2450a64bf4
Interally quit servers when juped
2013-07-26 07:38:42 -04:00
DukePyrolator
2ea594d677
added protocol support for incoming NOTICEs
2013-07-08 05:05:13 +02:00
Adam
1773eef143
Don't enforce usestrictprivmsg on TS6 IRCds and cache the value of usestrictprivmsg
2013-06-19 20:53:40 -04:00
Adam
9956da18e3
Move OnJoinChannel event to trigger after the user has completely joined and document it more about what you should and shouldnt do in it
2013-06-01 21:56:52 -04:00
Adam
b56e71ab14
Move CheckKick event to Channel and make os_forbid use it instead of kicking users in the join event, which does bad things
2013-06-01 14:55:45 -04:00
Adam
37b3535543
Initially attach all modules to all events, and detach them as the events are run if they are not implemented per module
2013-05-27 19:36:37 -04:00
Adam
22658d63bd
Get rid of the remaining references in the core to specific services. Move more stuff out of the core to the proper modules.
2013-05-26 17:13:11 -04:00
Adam
aabc217a6b
Fix /join 0
2013-05-20 23:45:41 -04:00
DukePyrolator
4237d49d41
improved handling of mlocks and topiclocks on inspircd
2013-05-12 11:09:34 +02:00
Adam
3f5f84c92c
The const char* specialization of this no longer works
2013-05-05 21:18:47 -04:00
Adam
1d0bb9b26b
Rework the config file reader to be much more flexible and move many configuration directives to the actual modules they are used in.
2013-05-05 01:55:04 -04:00
Adam
f08dbced60
Allow assigning service bots via /invite
2013-04-14 17:39:01 -05:00
Adam
fb7fef7a84
Optimizations of much of the more commonly used code
2013-04-07 23:46:44 -05:00
Adam
62262f4b0d
Fix typo in Mode message handler
2013-03-31 00:43:11 -05:00
Adam
01413dd3cc
Use channel mode +r to determine if a channel has either been newly created or
...
created while we were offline (eg, during the inital burst to the
uplink). Fixes not knowing whether or not channels ops in non-secureop
non-persistent channels obtained op while we were offline by creating
the channel or legitimately by being set op by another channel op.
2013-02-07 21:49:49 -05:00
Adam
ddaa001daf
Merge usefulness of Flags and Extensible classes into Extensible, made most flags we have juse strings instead of defines/enums
2013-01-21 22:31:16 -05:00
Adam
5007b72b28
Update copyright to 2013. This was done with:
...
find include/ src/ lang/ docs/ modules/ *.* Config -exec sed -i 's/-2012 Anope Team/-2013 Anope Team/i' {} \;
2013-01-09 04:20:55 -05:00
Adam
098157dca8
Don't delete users immediately when quit or killed, instead wait until message processing is done
2013-01-03 12:34:01 -05:00
Adam
b591e8cdc8
Use the same object for chanusercontainer and userchancontainer
2012-12-28 10:43:30 -05:00
Adam
a4468dd56e
Allow modules to use the encryption modules to encrypt arbitrary things.
...
Made enc_old depend on enc_md5.
Allow not loading any encryption modules if you want to only use an
external mechanism.
Removed ns_sendpass since it's just a bad idea.
2012-11-30 02:53:03 -05:00
Adam
36b1166cf6
Change the return type of ircdmessage to void now that we don't use it, add an ircd message module event, and a few more fixups
2012-11-23 16:56:06 -05:00
Adam
d33a0f75a5
Pretty large coding style cleanup, in source doc
...
cleanup, and allow protocol mods to depend on each
other
2012-11-22 00:50:33 -05:00
Adam
72eb2ccf50
Sometimes capab is sent as one parameter
2012-11-06 11:02:12 -05:00
Adam
36f357c354
Fixed build errors and warnings with -std=c++11
2012-10-30 17:10:31 -04:00
Adam
4fdc157f68
Better clarify signon vs timestamp and allow updating users timestamp to an ircd given value from NICK
2012-10-14 01:05:24 -04:00
Adam
cd28fdc192
Show the correct reciever nick when use strict privmsg is enabled
2012-10-06 01:01:45 -04:00
Adam
7042223f2e
Somehow the kick handler got lost in the confusion. Send the topic time with ftopic on inspircd not the current time. Removed some unneeded protocol functions
2012-10-02 21:21:37 -04:00
Adam
89428a9d10
Cleanup of all of the protocol modules, rewrote message handling system to be a bit more C++ ish
2012-10-01 01:56:57 -04:00
Adam
573e49a7ea
Reworked live SQL support yet again
2012-04-23 05:08:26 -04:00
Adam
b84e080463
Made our message sources actual clients/servers, and put in a few more default messages for very standard things (KICK etc)
2012-02-19 20:54:55 -05:00
Adam
a9772cde21
Clean up and reorganize our header files
2012-02-14 15:13:27 -05:00
Adam
4204ece7a8
Updated Copyright to 2012
2012-01-02 21:28:24 -05:00