12764 Commits

Author SHA1 Message Date
Attila Molnar
b8c3f13887 Fix InspIRCd::StripColor() stripping characters that shouldn't be stripped 2015-12-29 12:40:20 +01:00
Attila Molnar
934ca97315 cmd_part Send ERR_NOTONCHANNEL if the user is not on the channel
Fixes issue #1117 reported by @ProgVal
2015-12-28 17:29:00 +01:00
Attila Molnar
e17fcc226b Return true from Channel::PartUser() if the user was on the channel 2015-12-28 17:27:40 +01:00
Attila Molnar
419537e745 Invert if in Channel::PartUser() 2015-12-28 17:25:30 +01:00
Attila Molnar
299f262a4f Fix some whitespace issues 2015-12-28 16:59:03 +01:00
Attila Molnar
03561f500e m_cap Fix incorrect syntax of empty CAP LIST reply
Fixes issue #1120 reported by @ProgVal
2015-12-28 16:50:49 +01:00
Attila Molnar
ac861f854c m_xline_db Don't flush database when an xline expires 2015-12-18 09:35:39 +01:00
Attila Molnar
5b5590f095 Strip all control codes except \001 in InspIRCd::StripColor()
Fixes issue #1100 reported by @uecasm
2015-12-08 16:32:50 +01:00
Attila Molnar
374d7eb098 Merge pull request #1110 from SaberUK/insp20+cap
[2.0] Fix CAP REQ to be atomic like the standard dictates.
2015-12-07 10:53:53 +01:00
Peter Powell
e114a7ec08 Work around irc::spacesepstream not stripping extraneous spaces. 2015-12-07 09:48:33 +00:00
Peter Powell
be0d7ab72a Fix CAP REQ to be atomic like the standard dictates.
Reported by @dequis on IRC.
2015-12-07 09:47:54 +00:00
Attila Molnar
306ef5e3ea Deduplicate code in InspIRCd::FindNick() 2015-12-07 10:19:02 +01:00
Attila Molnar
6352a6f9c9 Remove some IS_SERVER() checks
- InspIRCd::FindUUID() and FindNick() no longer return FakeUsers so checking the user returned from those methods is needless
- m_dccallow is calling FindNickOnly() so it had the check needlessly
2015-12-07 10:17:49 +01:00
Attila Molnar
6bc4db5e92 Do not insert FakeUsers into UserManager::uuidlist
Inserting them causes FindUUID() and FindNick() to return server users which is not what modules want
2015-12-07 10:11:09 +01:00
Attila Molnar
5b138fa099 m_spanningtree Try FindServerID() first if the prefix looks like a sid in TreeSocket::FindSource() 2015-12-07 10:07:03 +01:00
Attila Molnar
619c5eabb1 m_spanningtree Change allocation of ModuleSpanningTree::commands to be physically part of the object containing it 2015-12-06 12:19:06 +01:00
Attila Molnar
d1bb97f3fb m_spanningtree Implement ServerCommand::RegisterService() 2015-12-06 12:16:37 +01:00
Attila Molnar
7343ac33fb Merge branch 'master+echomessage-invitenotify' 2015-12-06 12:01:02 +01:00
Attila Molnar
f9f59c2706 Add m_ircv3_invitenotify which implements the IRCv3.2 invite-notify extension 2015-12-06 11:30:13 +01:00
Attila Molnar
fd87f9f073 Add minimum channel rank and exception list parameters to the OnUserInvite hook 2015-12-06 11:24:39 +01:00
Attila Molnar
f307c873e0 cmd_invite Fire the OnUserInvite event before announcing the invite 2015-12-06 11:20:45 +01:00
Attila Molnar
81215de4f0 cmd_invite Extend scope of the prefix character variable 2015-12-06 11:20:00 +01:00
Attila Molnar
27f69fdc42 Add m_ircv3_echomessage which implements the IRCv3.2 echo-message extension 2015-12-06 11:14:17 +01:00
Attila Molnar
489ba0ad54 Remove <options:ircumsgprefix> entirely 2015-12-06 11:09:03 +01:00
Attila Molnar
e4b17fd39b Merge branch 'master+cap' 2015-12-06 11:00:12 +01:00
Attila Molnar
ecca6c2300 Add m_ircv3_chghost which implements the IRCv3.2 chghost extension 2015-12-05 16:55:09 +01:00
Attila Molnar
18d5754871 m_ircv3 Make WriteNeighborsWithCap() available for use in other modules 2015-12-05 16:47:41 +01:00
Attila Molnar
c933f32408 m_cap Make Capability objects compatible with dynamic_references, add Cap::Reference 2015-12-05 16:42:17 +01:00
Attila Molnar
b553bf9002 Add m_ircv3_capnotify which implements the IRCv3.2 cap-notify extension 2015-12-05 16:38:51 +01:00
Attila Molnar
4a02829e4f m_cap Save and restore the cap state of a module when it is reloaded 2015-12-05 16:24:12 +01:00
Attila Molnar
425d54073a m_cap Specialize extension item 2015-12-05 16:16:49 +01:00
Attila Molnar
ddc6999a1d m_sasl Advertise SASL mechanism list to supporting clients 2015-12-05 16:01:30 +01:00
Attila Molnar
302053cf8f m_cap Provide the OnCapValueChange event and add Cap::Manager::NotifyValueChange() 2015-12-05 15:58:48 +01:00
Attila Molnar
912fd7a922 m_cap Provide the OnCapAddDel() event 2015-12-05 15:57:00 +01:00
Attila Molnar
b9c6792cd6 m_cap Add Capability::GetCapValue(), list capabilities with values 2015-12-05 15:50:07 +01:00
Attila Molnar
a58f0c00f1 m_cap Reject CAP CLEAR from clients newer than 3.1 2015-12-05 15:45:59 +01:00
Attila Molnar
9ac2eae1f0 m_cap Learn the supported capability negotiation protocol of a client from CAP LS
Let modules implementing caps query this information
2015-12-05 15:45:20 +01:00
Attila Molnar
3e08629e83 m_cap Add Capability::OnList() hook 2015-12-05 15:42:04 +01:00
Attila Molnar
53b9f55c18 m_sasl Create SASLCap which subclasses Cap::Capability and implements OnRequest() 2015-12-05 15:39:52 +01:00
Attila Molnar
bc388aa97c m_cap Add Capability::OnRequest() hook 2015-12-05 15:35:05 +01:00
Attila Molnar
259b111394 Add rewritten m_cap module
- Caps are now managed by m_cap
- Each cap uses one bit in an extension item shared with other caps
2015-12-05 15:29:01 +01:00
Attila Molnar
33691d74df m_sasl Enforce usage of uuids in server-to-server SASL command 2015-12-05 15:04:29 +01:00
Attila Molnar
0528e83604 Nuke m_cap 2015-12-05 15:04:00 +01:00
Attila Molnar
806f486279 m_ircv3 Change signature of WriteNeighboursWithExt to accept a cap, rename 2015-12-05 15:02:20 +01:00
Attila Molnar
860f5cbf1e Merge branch 'master+serviceinit' 2015-12-02 13:30:24 +01:00
Attila Molnar
44b5a8fa89 Merge branch 'master+reloadmod' 2015-12-01 12:23:50 +01:00
Attila Molnar
0a12e928e6 Merge branch 'master+whowas-purge-empty' 2015-12-01 12:21:21 +01:00
Attila Molnar
19cc9292ab core_reloadmodule Allow modules to handle reload failures of other mods 2015-11-26 15:14:07 +01:00
Attila Molnar
d3eb1a77d7 core_reloadmodule Allow modules to save and restore their own data when reloading another mod 2015-11-26 15:10:00 +01:00
Attila Molnar
1833fdd31e core_reloadmodule Save and restore module state (modes, extensions) on reload 2015-11-26 14:58:18 +01:00