Stephen Bennett
6657de63ac
Merge
2009-12-08 19:23:32 +00:00
Stephen Bennett
c127b45b83
Revert all presence-related changes
2009-12-08 19:22:55 +00:00
Jilles Tjoelker
f4d319c7ae
Use full (:n!u@h) prefix for sending ETB from a user to clients.
2009-09-20 00:44:47 +02:00
Jilles Tjoelker
c2c25552ca
Force part local users (not resv_exempt) on channel resv.
...
A notice will be sent to any force parted users that the channel
is temporarily/permanently unavailable on the server.
A new config option channel::resv_forcepart can be used to disable this.
from ircd-ratbox (dubkat)
2009-09-19 21:24:35 +02:00
Jilles Tjoelker
72d36704fc
Disallow changing away status via /presence.
...
Allowing this desynchronizes clients and servers that
do not know about this extension without good reason.
If you want to allow this, change it to spit out the
usual AWAY protocol.
2009-06-04 00:01:57 +02:00
Jilles Tjoelker
50325a6667
Reject presence updates with too long keys, instead of truncating them
...
and causing soft assertion failures. Values are still
silently truncated though.
2009-06-03 23:49:50 +02:00
Jilles Tjoelker
331c548d9d
Correct minimum parameter counts for PRESENCE.
2009-06-03 20:03:15 +02:00
Jilles Tjoelker
5beadfb00f
ENCAPs cannot come from local clients, no need to check.
2009-06-03 19:57:27 +02:00
Jilles Tjoelker
beafd0ee32
Remove special CAP presence handling of /whois away message.
...
This cannot work because /whois is executed remotely too
and CAPs aren't known remotely.
2009-06-03 19:54:49 +02:00
William Pitcock
0fc5aeca53
presence: m_presence module: Use safer get_metadata() where appropriate, to avoid crash possibilities.
2009-06-02 02:55:45 -05:00
William Pitcock
f72de72bf4
presence: Use RPL_WHOISMETADATA.
2009-06-02 02:44:31 -05:00
William Pitcock
8f2d1ccf7f
presence: If CLICAP_PRESENCE is enabled, then RPL_AWAY is replaced by the "away" keyword in the presence dataset.
...
As such, only fall back to legacy RPL_AWAY if CLICAP_PRESENCE is not set on source_p.
2009-06-02 02:17:42 -05:00
William Pitcock
54ff698839
presence: Add CLICAP_PRESENCE.
...
This will enable broadcasting presence updates on channels.
2009-06-02 02:14:44 -05:00
William Pitcock
4af8bcef59
presence: Replace stagnant free_away() call with delete_metadata(..., "away").
2009-06-02 02:06:18 -05:00
William Pitcock
884b5d41c1
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
William Pitcock
45d1f80189
presence: Add m_presence module. This provides an ENCAP s2s interface and lowlevel client interface.
2009-06-02 01:45:43 -05:00
Jilles Tjoelker
aa9c9ed268
Allow ctcp replies through floodcount after ctcp'ing a large group.
...
A large group is any $$ or $# or a channel with more than
floodcount/2 local members, checked on each server separately.
Note that floodcount checks are done on the sender's server.
The special treatment is active for 15 seconds.
2009-05-17 20:52:16 +02:00
Jilles Tjoelker
d69601a5e2
Rewrite perm xlines containing '",' from local opers (to '"\,').
...
The change also applies to xlines sent to other servers.
Note that the backslash must be supplied in an unxline.
Incoming xlines containing '",' are rejected to avoid
inconsistency between servers.
2009-05-08 14:42:55 +02:00
Jilles Tjoelker
cc169c9476
Disallow the sequence '",' in perm xlines,
...
it would cause problems with xline.conf.
2009-05-08 14:27:30 +02:00
Jilles Tjoelker
395935d103
Change \s to space when writing xline.conf, to be compatible with older versions.
2009-05-08 13:40:09 +02:00
Jilles Tjoelker
23a8f750f7
Disallow double quotes in klines.
...
These could cause parse problems with kline.conf.
2009-05-08 01:50:35 +02:00
Jilles Tjoelker
b0f30fa1ca
Disallow commas in channel resvs.
...
These can never match and could cause parse problems in resv.conf.
2009-05-08 01:23:40 +02:00
Jilles Tjoelker
97c9dd8a26
Change xlines to store spaces as \s.
...
Spaces in xline.conf files are changed to \s in memory
and recognized on unxline, but are not changed in the
file. New xlines are added to xline.conf files with \s.
xline.conf written by this commit or newer will not work
properly with charybdis older than 1124:131254925f32 (which
introduced \s support in match_esc()).
2009-05-08 00:21:14 +02:00
Jilles Tjoelker
39b23540e3
Stop changing \s to spaces in masktrace and testmask,
...
match_esc() handles \s directly now.
2009-05-07 23:58:32 +02:00
Jilles Tjoelker
a416ed2e79
Move check for required CAPABs to mr_server -- CAPAB may not be sent.
...
Also fix exit message.
2009-04-21 18:43:07 +02:00
William Pitcock
c6240d7940
Allow for capabilities to be marked as "required".
...
If capability negotiation fails on these capabilities, then the server link is dropped.
2009-04-20 09:36:55 -05:00
William Pitcock
5f8d323c59
can_kick hook, based on the ircd-seven one.
2009-04-20 09:20:11 -05:00
Stephen Bennett
9a180ae365
Allow / in spoofed hosts
2009-04-20 08:37:13 -05:00
Jilles Tjoelker
b7b1d686a9
Simplify floodcount checking, it is no longer affected by +g/+R anymore.
2009-04-19 00:04:21 +02:00
Jilles Tjoelker
631b4a542a
Use uid/sid for some ERR_CHANOPRIVSNEEDED if they go to a remote client.
2009-04-09 23:45:35 +02:00
Jilles Tjoelker
2ae93813bd
Add new topic command ETB, allowing services to set topic+setter+ts always
...
(provided channelTS != 0).
ETB is controlled by the EOPMOD capab. Fairly complicated
stuff is needed for older servers.
ETB can come from clients or servers, but at this time it
should only be sent from clients, as otherwise it is not
always possible to update older servers.
2009-03-29 17:08:42 +02:00
Jilles Tjoelker
c4d2d01419
Apply +z to messages blocked by +b and +q as well.
...
This adds a new server capab EOPMOD which will be used
for an extended topic command also.
2009-03-29 15:48:07 +02:00
Jilles Tjoelker
61b7e0d959
Do not send "<blah> is rehashing <blah>" notices to the remote oper.
2009-03-07 16:57:58 +01:00
Jilles Tjoelker
995f300eb1
Allow /rehash throttles to clear throttling.
2009-03-07 01:49:09 +01:00
Jilles Tjoelker
94734aacc6
Correct WHOX overflow check so it also works for fields other than the last.
...
Found with llvm static analyzer.
2009-03-01 01:58:53 +01:00
Jilles Tjoelker
f93bc39774
Remove some unused variables.
...
Found with llvm static analyzer.
2009-03-01 01:53:40 +01:00
Jilles Tjoelker
6865c0b099
Add channel::only_ascii_channels config option
...
to restrict channel names to printable ascii only.
Like disable_fake_channels this only applies to joins
by local users; unlike disable_fake_channels it applies
to opers as well.
2009-02-22 00:12:21 +01:00
Jilles Tjoelker
18fc47e681
Disallow invites to juped channels.
...
In particular, this is checked when the source is
local and not resv_exempt, or the target is local and
not resv_exempt.
2009-02-06 14:07:03 +01:00
Jilles Tjoelker
53307da8ca
Disable autoconnect for a server with excessive TS delta.
...
Note that in some cases (different TS delta settings,
heavy lag) it is possible only one of the servers
detects the problem and autoconnect may be left enabled.
The mechanism used for disabling is the same as
/quote set autoconn <server> 0; the A flag in /stats c
disappears and a rehash or /quote set autoconn can put
it back.
2009-02-05 23:43:07 +01:00
Jilles Tjoelker
e0f8d70cb2
Remove comments related to (removed) ability to disable TS6.
2009-01-30 16:50:00 +01:00
Jilles Tjoelker
ad08ad1876
For remote rehashes, send error messages to the requesting oper as well.
2009-01-30 00:11:12 +01:00
Jilles Tjoelker
e5b12a6143
Show D:line oper reason in /testline.
2009-01-27 20:20:37 +01:00
Jilles Tjoelker
1e57e391c5
Get rid of local variable shadowing.
2009-01-25 16:26:17 +01:00
Jilles Tjoelker
cb2540a673
commit 1df4ff0b0558e4698819f8e4ac6ecb7654b81a2c
...
Author: Stephen Bennett <spb@exherbo.org>
Date: Sun Jan 18 16:30:27 2009 +0000
Make testline show oper reason and setter information for K:lines, where applicable
2009-01-25 16:23:36 +01:00
Jilles Tjoelker
ff8e6e19e0
Remove some more references to parv[0] in comments.
2009-01-18 21:20:14 +01:00
Jilles Tjoelker
161f040940
Update comments for parv[0] removal.
2009-01-18 18:22:43 +01:00
Jilles Tjoelker
3a17735469
Change /stats O to show privset blocks (oper only).
...
To show operator blocks, only /stats o (lowercase) now works.
2009-01-18 01:35:24 +01:00
Jilles Tjoelker
3dfaa67120
Replace parv[0] with source_p->name.
2009-01-17 01:18:19 +01:00
Jilles Tjoelker
0a849a8fa9
Do not log ERROR messages from unknowns.
...
from ircd-ratbox (androsyn)
2009-01-17 00:23:02 +01:00
Jilles Tjoelker
463947ad90
Remove more TS5 remnants.
2009-01-16 23:18:10 +01:00