JD Horelick
040c2a5ba9
Fix handling of ACTIONs when chmode +G is set.
2012-02-28 15:12:33 -05:00
B.Greenham
5323ec7352
Move flood_attack_channel to channel.c so it can be used outside m_message.c
2010-12-11 16:11:54 -05:00
William Pitcock
585e477be8
Filter bogus CTCP ACTION messages.
2010-11-05 01:16:03 -05:00
alxbl
829ce93fb8
Added check for division by 0 in m_message.c Hopefully fixes #25
2010-09-07 20:21:29 -04:00
B.Greenham
4023293674
Merge.
2010-10-11 11:58:39 -04:00
B.Greenham
90728edb58
Backed out changeset 3097ade953f5
...
Backout modesets.
They're overly invasive and a bit uglier than is required.
The same thing can be accomplished in a better way with another method.
2010-10-11 11:58:21 -04:00
B.Greenham
1fe75e33cc
mode api: Remove most modes from the chmode_table, and have them initialized in modeset files.
...
Modeset files are modules stored in shadowircd/modes. All they do is initalize
a set of modes on load, and orphan said modes on unload.
All cmodes not included in ircd-ratbox are now located in modeset files, rather
than being in the core. These modes no longer simply use defines, their
locations are stored in a the new struct module_modes. Each of these is set
when intializing the mode in the modeset files, and set to 0 when orphaning
the mode upon unloading the modeset file.
In addition, use_forward has been removed, as it is now obsoleted by modesets.
2010-07-02 19:09:46 -04:00
JD Horelick
133755685e
Removal of ancient SVN ID's part one
2010-06-10 21:22:44 -04:00
B.Greenham
2498a1b577
Fix some valgrind warnings.
2010-05-27 18:03:51 -04:00
JD Horelick
6f7a78f6aa
Added check for flood settings in m_message. Why was this not here
...
before? What good are flood settings really if they're not applied
to messages?
2010-03-21 03:43:25 -04:00
B.Greenham
aa9a8067b1
Use strip_unprintable for chmodes +K and +G, which makes evasion less trivial.
2010-03-20 12:49:57 -04:00
JD Horelick
b705a46f43
Fix a signedness comparison warning.
2010-03-17 03:42:40 -04:00
B.Greenham
7469e4b0d2
Remove the ability of overriding opers to privmsg/notice @#channel while lacking ops.
...
Since this goes past +q/+m and so on, it could easily and silently be abused.
2010-03-16 13:47:03 -04:00
B.Greenham
01b2be6fe1
Allow users to send replies through +G the same as they can through +g.
2010-09-10 13:26:41 -04:00
Jilles Tjoelker
9e94d9ea13
Add target change for channels.
...
This has a separate enabling option channel::channel_target_change.
It applies to PRIVMSG, NOTICE and TOPIC by unvoiced unopped non-opers.
The same slots are used for channels and users.
2010-08-28 20:02:42 -04:00
JD Horelick
2588ff97f4
Change a bit of the last commit since opers do not go through +g on ShadowIRCd as they do on Charybdis.
2010-07-04 16:12:31 -04:00
JD Horelick
33736ea75f
Tweak auto-accept:
...
* does not apply to NOTICE (as those may well be automated)
* mirrors +g behaviour so that no useless accept entries are added for services
* respects max_accept, if it would be exceeded the message is dropped with numeric 494
* check moved up so this is checked before floodcount/tgchange
Pulled from Charybdis upstream changeset 1388:b1ef26176350 done by jilles.
2010-07-04 15:27:34 -04:00
William Pitcock
5b71b8ec50
Stop griefing through taunting while hiding behind CALLERID.
...
This shouldn't provide any way for a client to get on a CALLERID list
without authorization, as if a client is +g already, a CTCP request, for
example, won't be replied to.
2010-07-03 00:44:55 -05:00
JD Horelick
b6a3d80129
Change many of the ERR_CANNOTSENDTOCHAN messages to say WHY the user
...
can not send to the channel for the new chmodes.
2010-03-07 17:03:12 -05:00
B.Greenham
bc4764aefd
Looks like irc_dictionary things cannot support more than one key with the same value. Therefore, a rework of +J and OACCEPT's metadata are required to make them work properly with multiple users.
2010-03-06 19:22:59 -05:00
B.Greenham
e80126d0d3
Fix +K unintentionally stripping any messages to the channel of color.
2010-03-05 20:59:23 -05:00
B.Greenham
1c646b8914
Fix +g messages not showing to opers.
2010-03-05 14:39:42 -05:00
B.Greenham
e6f94b0c3c
Make oaccept use UIDs instead of nicks.
2010-03-05 14:34:44 -05:00
B.Greenham
85465c4341
Make +gGR not affect services.
2010-03-05 14:28:48 -05:00
B.Greenham
75a9b0c8b0
Make oaccept work for multiple opers on the same target.
2010-03-05 14:26:40 -05:00
B.Greenham
9a4dc29c68
Finish chmode +K, which prevents repeated lines.
2010-03-04 18:05:15 -05:00
B.Greenham
1fbf6db662
Add extensions/m_oaccept , a module to allow opers to bypass +gGR with a command.
2010-03-04 01:40:13 -05:00
B.Greenham
5ad94b5000
Add channel::exemptchanops, and make +cCDTNG support it.
2010-03-01 02:43:55 -05:00
B.Greenham
0099f31acf
Add some code back in that I accidentally deleted.
2010-02-25 20:41:19 -05:00
B.Greenham
99c780941a
Fix everything I broke with the last three commits and make +G work for real.
2010-02-25 20:36:03 -05:00
B.Greenham
12cbce8059
Fix up +G and make it actually work.
2010-02-25 19:16:38 -05:00
B.Greenham
61ffa214b4
Add umode +G, soft callerid.
2010-02-25 17:57:12 -05:00
JD Horelick
13a467bb98
Override part one.
2010-02-25 16:01:03 -05:00
JD Horelick
afe430eebb
Backed out changeset 677d7b5cbbcc
2010-02-25 15:47:08 -05:00
JD Horelick
c7c1673d10
bad
2010-02-25 15:46:42 -05:00
B.Greenham
2b3c7c29c3
Add chmode +G, which blocks messages in all caps.
2010-02-25 01:51:28 -05:00
B.Greenham
0bd6cfbe28
Compile fix.
2010-02-23 01:58:38 -05:00
B.Greenham
7e6c9180da
Add chmode +D, which blocks CTCP ACTION.
2010-02-23 01:08:42 -05:00
B.Greenham
6afd4b916f
Add chmode +T, which blocks notices.
2010-02-23 00:49:24 -05:00
B.Greenham
ccfc9b567d
Add umode +C, which blocks CTCPs to anyone with it set.
2010-02-22 22:14:47 -05:00
Jilles Tjoelker
878733fd68
Move target change code to src/tgchange.c,
...
so we can use it for /invite as well.
2010-02-15 21:58:34 +01:00
Jilles Tjoelker
7eb9307794
target change: Allow free replies.
...
When a user receives a private message, notice or RPL_UMODEGMSG,
add the source to a special set of 5 target slots.
These slots are checked in the normal way when sending messages,
allowing a reply without using up a free target.
This feature will not be very useful if a user is being messaged
by many different users; to help this, messages blocked entirely
by +g or +R do not affect the targets. CTCP replies also remain
free in terms of targets.
2010-02-15 01:07:07 +01:00
Jilles Tjoelker
3002877654
target change: Overwrite the least recently used target with a new one.
2010-02-15 00:31:17 +01:00
Jilles Tjoelker
d29b1834c3
Make the number of targets tracked for target change a #define.
2010-02-13 15:18:17 +01:00
Jilles Tjoelker
04bf0760f9
Fix op-moderate (cmode +z) for channel names with '@'.
2010-01-24 19:37:00 +01:00
Jilles Tjoelker
343e239585
Put back fb7d6089158e, not setting large_ctcp_sent for CTCP ACTION.
2010-01-20 00:03:57 +01:00
William Pitcock
92a7995129
Merge +C (no CTCP to channels) from ircd-seven.
2010-01-19 02:11:04 -06:00
Jilles Tjoelker
ebc55af53c
Do not set large_ctcp_sent for CTCP ACTION as it does not request a reply.
2010-01-14 01:12:16 +01:00
Stephen Bennett
c387fc41ae
Revert all presence-related changes
2009-12-08 19:22:55 +00:00
William Pitcock
987ef7eb1f
presence: Remove user.away, replaced by a metadata entry.
...
Cache the metadata retrieval value where feasible for minimal performance impact.
2009-06-02 02:03:51 -05:00