Jilles Tjoelker
725403fd7f
Don't end the flood grace period with the first AWAY.
...
This allows clients to restore an away message early in the connection
process without breaking flood grace.
2012-02-18 16:35:31 +01:00
Jilles Tjoelker
d42e6915cf
Pace aways.
...
This becomes important because of away-notify sending aways to common
channels much like nick changes (which are also paced).
Marking as unaway is not limited (but obviously only does something if the
user was away before). To allow users to fix typos in away messages, two
aways are allowed in sequence if away has not been used recently.
2012-02-18 16:32:57 +01:00
Keith Buck
29d224a1f8
ip_cloaking*: Do qjm locally too.
2012-02-18 05:16:03 +00:00
Keith Buck
7e132ff005
ratelimit: Add rate-limiting to MOTD, WHO, and remote WHOIS.
2012-02-18 03:56:47 +00:00
Keith Buck
e88a1f1b15
Add ratelimit for high-bandwidth commands.
2012-02-18 03:54:44 +00:00
Jilles Tjoelker
c25a890796
Remove some TS5 code from ms_bmask().
...
ms_bmask() used to send MODE messages to TS5 servers, but
TS5 support was removed long ago.
2012-02-17 00:36:12 +01:00
Jilles Tjoelker
23f6b63af6
Send forward channel when bans are added/removed because of TS/bursts.
...
If a netburst adds bans or a channel TS change removes bans, +b/-b modes
are generated. Make sure these contain the forward channel, if any.
This appears also broken in ircd-seven.
2012-02-17 00:09:39 +01:00
Jilles Tjoelker
7f0fc87d3c
Include forward channels when bursting bans to servers.
...
Obtained from: ircd-seven (spb)
2012-02-16 23:36:05 +01:00
Jilles Tjoelker
65b8d06c71
Do not send unchanged away messages to other users via away-notify.
2012-02-14 23:14:42 +01:00
William Pitcock
2885b8867d
CREDITS: Move mr_flea to committers section.
2012-02-14 08:22:49 -06:00
Keith Buck
c5bbc60375
Add away-notify client capability.
2012-02-14 14:15:44 +00:00
Jilles Tjoelker
e5520caf0a
Allow opers to do /stats C.
...
In particular, this allows remote /stats C.
2012-02-11 23:17:04 +01:00
Jilles Tjoelker
ed11b18f0f
Allow normal users to do PRIVS on themselves.
...
This basically shows a subset of the information shown by the notices
on connect like "*** You are exempt from K/X lines".
2012-02-06 23:15:03 +01:00
Keith Buck
3e910a1847
chmode.c: Fix bug in printing removed bans.
2012-02-06 16:38:10 +00:00
William Pitcock
ac37f16a3d
m_stats: iterate capability indexes on /stats C
2012-02-04 21:33:54 -06:00
William Pitcock
a16910aa4e
capability: add capability_index_stats() for getting statistics about the capability broker system
2012-02-04 21:27:43 -06:00
William Pitcock
885cd603b5
capability: add global list of capability indexes, and name all capability indexes
2012-02-04 21:16:40 -06:00
William Pitcock
deee7b4388
m_remove: fix parameter order on PART message
2012-02-04 18:49:46 -06:00
Jilles Tjoelker
bde42c6063
Don't shadow the name "index".
2012-02-04 15:15:26 +01:00
Jilles Tjoelker
63dd387b13
Require all modes to be set for + part in $m extban.
...
This is like the - part requiring none of the modes to be set and is more
useful because the old behaviour can be emulated with multiple bans.
2012-02-04 15:02:26 +01:00
William Pitcock
8bedf01d19
capability: store capability bit entries with actual bit numbers, instead of as an expanded mask
...
This makes accounting of number of bits allocated easier. Specifically, the amount of allocated
bits is computed by doing (index->highest_bit - 1) in code.
2012-02-04 05:23:15 -06:00
William Pitcock
e915e51f4d
capability: don't use DictionaryIter internals.
...
it's just ugly now that we're providing our own copies of keys.
2012-02-04 05:13:04 -06:00
William Pitcock
e679e38906
capability: do not use strings provided by modules for keyword index, instead duplicate the keyword.
2012-02-04 04:47:37 -06:00
William Pitcock
806402515b
m_server: make sure required_caps is non-zero.
2012-02-04 04:39:39 -06:00
William Pitcock
54bec06e97
Re-libtoolize.
2012-02-04 04:18:48 -06:00
William Pitcock
a949ab1a1c
configure: set version to charybdis 3.4.0-dev
2012-02-04 04:14:20 -06:00
William Pitcock
925c50efea
Add implementation of /REMOVE, based on ircd-seven implementation.
2012-02-04 02:20:56 -06:00
William Pitcock
79d488b283
m_server: reenable required cap negotiation
2012-02-04 02:03:52 -06:00
William Pitcock
f01f67f0ad
capability: add capability_require().
2012-02-04 02:00:33 -06:00
William Pitcock
0582290f21
capability: missed one
2012-02-04 01:58:07 -06:00
William Pitcock
5058c8ebce
capability: change CapabilityIndex.orphaned to (CapabilityIndex.flags & CAP_ORPHANED)
...
This makes it possible to add other flags to capabilities.
2012-02-04 01:55:11 -06:00
William Pitcock
346fba9252
Migrate capability negotiation code to new dynamic capability management API.
...
This needs a lot of testing, obviously.
2012-02-04 01:47:46 -06:00
William Pitcock
ec3a9055f2
capability: add capability_index_mask() which calculates old CAP_MASK
2012-02-04 00:39:53 -06:00
William Pitcock
5e773521a9
capability: add capability_index_list() to build a list of capabilities given an index and mask
2012-02-04 00:36:42 -06:00
William Pitcock
64b56afd8c
Add a new dynamic capability manager.
...
Specifically, what this capability manager does, is map keywords to
calculated bitmasks. These bitmasks are allocated at runtime, so that
the any managed capability index can be manipulated by modules.
Modules should call capability_orphan() when orphaning capabilities. This
makes it so that bitmasks aren't reallocated, except for cases where the
capability is the same.
2012-02-04 00:05:13 -06:00
William Pitcock
481b443b4d
Missed a few -Wformat-security warnings.
2012-01-25 13:24:04 -06:00
William Pitcock
32ea9d3d83
Fix some warnings when using -Wformat-security on Alpine.
2012-01-25 13:22:56 -06:00
Keith Buck
4862f41a02
extban : Correct logic for matching against permissions.
2012-01-24 17:13:32 +00:00
JD Horelick
a8eae73002
extb_usermode should declare itself as what it actually is.
2012-01-22 13:56:25 -05:00
William Pitcock
655e7dee45
extban $o: add support for matching against specific permissions.
...
Syntax: $o:oper:admin (match against the oper:admin permission)
2012-01-22 04:05:34 -06:00
William Pitcock
11f2e78727
extb_usermode: should use EXTBAN_INVALID if no modestring is provided
2012-01-22 03:58:32 -06:00
William Pitcock
0b18e32cad
Add extban target for matching against a user's modes.
...
Syntax: $m:+o (require usermode +o)
Syntax: $m:+o-a (require usermode +o but do not allow +a)
Syntax: $m:+a (require usermode +a)
Syntax: $m:-h (require user disables cloaking to enter)
2012-01-22 03:46:08 -06:00
Jilles Tjoelker
97532cfafb
Fix assertion failure when failing to join a channel and there is no forward.
...
This was harmless apart from the message.
2012-01-08 16:41:26 +01:00
Jilles Tjoelker
1c60de9757
Check +bq against underlying IPv4 as well.
...
As with k/dlines, exceptions (here +eI) are not checked.
2012-01-08 16:39:11 +01:00
Jilles Tjoelker
fe74401bf0
Add one more const.
2012-01-08 16:25:34 +01:00
Jilles Tjoelker
d9af501aa8
Fix a warning about const with forward channels.
2012-01-08 16:23:18 +01:00
Jilles Tjoelker
a14de124d6
Remove code duplication between is_banned() and is_quieted().
2012-01-08 16:21:07 +01:00
Jilles Tjoelker
d006b551c8
Check k/dlines against underlying IPv4 as well.
2012-01-08 15:51:48 +01:00
Jilles Tjoelker
ae52fe0ff7
Show underlying IPv4 in a remote whois.
2012-01-08 15:51:48 +01:00
Jilles Tjoelker
524a5b3ac7
Add code to get IPv4 addresses from 6to4 and Teredo IPv6 addresses.
...
It is not used yet.
2012-01-08 15:51:44 +01:00