William Pitcock
3aa4e417b9
Make this work again.
2010-01-07 17:50:49 -06:00
William Pitcock
03368cb9ab
Make this work again.
2010-01-07 17:49:08 -06:00
William Pitcock
d63447bfe7
Readd some oper notices.
2010-01-07 17:37:52 -06:00
William Pitcock
d8a4c5f618
Update modules to use bandb_add()/bandb_del().
2010-01-07 17:19:03 -06:00
Jilles Tjoelker
9e8b3b4345
SCAN UMODES: default list-max to 500, like a global WHO.
2010-01-01 22:55:25 +01:00
Stephen Bennett
4606e8fc6c
Merge
2009-12-08 19:23:32 +00:00
Stephen Bennett
c387fc41ae
Revert all presence-related changes
2009-12-08 19:22:55 +00:00
Jilles Tjoelker
14a64ad404
Use full (:n!u@h) prefix for sending ETB from a user to clients.
2009-09-20 00:44:47 +02:00
Jilles Tjoelker
100563e836
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
f80e76cf2c
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
338dd42d64
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
f62bb0776a
Correct minimum parameter counts for PRESENCE.
2009-06-03 20:03:15 +02:00
Jilles Tjoelker
320a0f8528
ENCAPs cannot come from local clients, no need to check.
2009-06-03 19:57:27 +02:00
Jilles Tjoelker
7cc7a2c041
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
fa00b4ada9
presence: m_presence module: Use safer get_metadata() where appropriate, to avoid crash possibilities.
2009-06-02 02:55:45 -05:00
William Pitcock
50aa2dd31d
presence: Use RPL_WHOISMETADATA.
2009-06-02 02:44:31 -05:00
William Pitcock
fa2a410abe
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
6364809623
presence: Add CLICAP_PRESENCE.
...
This will enable broadcasting presence updates on channels.
2009-06-02 02:14:44 -05:00
William Pitcock
51f73b614b
presence: Replace stagnant free_away() call with delete_metadata(..., "away").
2009-06-02 02:06:18 -05: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
William Pitcock
0827f524e0
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
fcda56627d
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
cbd758d71c
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
b6c85cc60b
Disallow the sequence '",' in perm xlines,
...
it would cause problems with xline.conf.
2009-05-08 14:27:30 +02:00
Jilles Tjoelker
44bdc688cb
Change \s to space when writing xline.conf, to be compatible with older versions.
2009-05-08 13:40:09 +02:00
Jilles Tjoelker
448a723f81
Disallow double quotes in klines.
...
These could cause parse problems with kline.conf.
2009-05-08 01:50:35 +02:00
Jilles Tjoelker
6e5b8a5dec
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
63860dd1a7
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
eb5e3f1520
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
031c4b89d3
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
fde16193c4
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
16d8d9fc6d
can_kick hook, based on the ircd-seven one.
2009-04-20 09:20:11 -05:00
Stephen Bennett
59bb80930d
Allow / in spoofed hosts
2009-04-20 08:37:13 -05:00
Jilles Tjoelker
cb9345dcd1
Simplify floodcount checking, it is no longer affected by +g/+R anymore.
2009-04-19 00:04:21 +02:00
Jilles Tjoelker
c925bc7706
Use uid/sid for some ERR_CHANOPRIVSNEEDED if they go to a remote client.
2009-04-09 23:45:35 +02:00
Jilles Tjoelker
80df74cfc5
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
6ce8910d97
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
cb4ddd7268
Do not send "<blah> is rehashing <blah>" notices to the remote oper.
2009-03-07 16:57:58 +01:00
Jilles Tjoelker
0b1e46f5b4
Allow /rehash throttles to clear throttling.
2009-03-07 01:49:09 +01:00
Jilles Tjoelker
8fc0a9b621
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
a6210c453a
Remove some unused variables.
...
Found with llvm static analyzer.
2009-03-01 01:53:40 +01:00
Jilles Tjoelker
dea418e9b4
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
f47964e44a
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
6b2cf989b6
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
af2484840a
Remove comments related to (removed) ability to disable TS6.
2009-01-30 16:50:00 +01:00
Jilles Tjoelker
1ba281712f
For remote rehashes, send error messages to the requesting oper as well.
2009-01-30 00:11:12 +01:00
Jilles Tjoelker
c70fcd85f7
Show D:line oper reason in /testline.
2009-01-27 20:20:37 +01:00
Jilles Tjoelker
1b09d11527
Get rid of local variable shadowing.
2009-01-25 16:26:17 +01:00
Jilles Tjoelker
e19c515ce9
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
77f3c1f440
Remove some more references to parv[0] in comments.
2009-01-18 21:20:14 +01:00
Jilles Tjoelker
ac408af6cb
Update comments for parv[0] removal.
2009-01-18 18:22:43 +01:00
Jilles Tjoelker
3619e29987
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
8e425f4137
Replace parv[0] with source_p->name.
2009-01-17 01:18:19 +01:00
Jilles Tjoelker
a13b19f9fe
Do not log ERROR messages from unknowns.
...
from ircd-ratbox (androsyn)
2009-01-17 00:23:02 +01:00
Jilles Tjoelker
1c4d0f3ceb
Remove more TS5 remnants.
2009-01-16 23:18:10 +01:00
Jilles Tjoelker
ffa772f3d4
Log to serverlog when throwing out a server because of a bad nickname.
2009-01-16 23:10:49 +01:00
Jilles Tjoelker
6eb9f03a13
Close the local link that sends a TS5 NICK introduction.
...
This is no longer supported and was already broken,
sending out a UID message without UID parameter to
other servers.
2009-01-16 23:08:05 +01:00
Jilles Tjoelker
9f811fcefd
Reject SCAN UMODES if invalid parameters are given.
2009-01-16 18:33:38 +01:00
Jilles Tjoelker
7b31d528b1
Remove obsolete comment.
2009-01-07 23:35:24 +01:00
Jilles Tjoelker
c80b76f022
Make SCAN UMODES GLOBAL NO-LIST MASK <mask> no longer an operspy command.
...
This agrees with allowing MODE <nick> as non-operspy.
2009-01-01 20:32:30 +01:00
Jilles Tjoelker
6dfa266965
Allow opers and shide_exempt users to see hopcounts even if flatten_links is on.
2008-12-27 22:41:52 +01:00
Jilles Tjoelker
c552a39d49
Show libratbox version info to opers in /info.
2008-12-23 00:28:05 +01:00
Jilles Tjoelker
0ec112cc00
Add code to detect overflow in WHOX.
...
This should currently be impossible, but may be
possible with extremely long server/nick names and
additional fields.
In case of overflow, the string sent to to the user is
truncated and if it was the first overflow since the
module was loaded a notice is sent to snomask +d.
2008-12-20 17:17:27 +01:00
Jilles Tjoelker
760ef9e1ea
Show rejectcache/throttle in /testline output.
...
This adds more RPL_TESTLINE numerics with code '!'.
Different from the other results, the I/K line or
RESV will be shown as well.
2008-12-19 19:24:12 +01:00
Jilles Tjoelker
76d4968137
Show throttle info in /stats t.
...
from ircd-ratbox (androsyn)
2008-12-16 21:02:04 +01:00
Jilles Tjoelker
f717c20dbb
As in shadowircd, increase buffer for /who status.
...
Not necessary here but nice for consistency.
2008-12-03 22:54:30 +01:00
Jilles Tjoelker
73788f7953
Add operspy /topic.
...
This allows querying any channel's topic under the
operspy rules, but not changing it.
2008-12-03 00:16:05 +01:00
Jilles Tjoelker
e752dd2618
Allow coloured part reasons in -c channels.
2008-11-29 22:22:18 +01:00
Aaron Sethman
17d00839b3
make is_cti/is_sti collect times connected in unsigned long long instead of time_t as well..on 32bit boxes that is going to wrap pretty quickly
...
committer: Valeriy Yatsko <dwr@it-penza.org>
2008-11-16 10:04:09 +03:00
Jilles Tjoelker
59eedf155f
Allow +z messages from outside if -n.
...
This gives a useful meaning to the cmode combo +mz-n:
messages from ops and voices go to all channel members,
messages from anyone else (on or off channel) go to ops.
With +mnz, messages from outside are not allowed at all.
2008-11-15 22:56:09 +01:00
Jilles Tjoelker
79ba162940
Truncate idle time in /who to 32 bits.
...
Pointed out by dwr (but solved differently).
2008-11-15 21:15:38 +01:00
Jilles Tjoelker
863efb0e6b
Should use rb_strlcpy instead of strlcpy...
2008-11-09 01:05:39 +01:00
Jilles Tjoelker
8e0f260b04
Remove LOCAL_COPY (and thus alloca) usage from /who.
2008-11-09 00:13:48 +01:00
Jilles Tjoelker
aff2058aa8
who: Use @+ combining for 354 numeric.
...
The 352 numeric uses it if CAP multi-prefix is enabled, as before.
2008-11-09 00:13:29 +01:00
Jilles Tjoelker
555801db60
Add ircu-like /who format options.
...
Use /quote help who for details.
The format code "o" (oplevel) is not documented,
but implemented showing dummy information (999 for
chanop, n/a otherwise).
2008-11-09 00:12:56 +01:00
Jilles Tjoelker
9d35015621
Make comment for ms_join() up to date.
2008-11-09 00:05:15 +01:00
Jilles Tjoelker
28823cd3db
Allow normal users to use /chantrace.
...
The same information is already available via a
combination of /who and /trace.
2008-11-08 01:28:16 +01:00
Jilles Tjoelker
2976cd5379
Do not send snotes/logs about juped servers trying to connect.
...
A juped server is defined as a server that already
exists with a service{} server as uplink.
If a juped server is introduced by another server,
this generates snotes/logs as before.
2008-09-25 00:00:36 +02:00
Jilles Tjoelker
e6a0717d15
Make TS deops appear to come from the same server the other modes come from.
...
In particular, this makes atheme changets deops come
from the services server instead of the user's server.
2008-09-24 23:13:10 +02:00
Jilles Tjoelker
18c12212b7
Add more detail in squit reason for certain invalid NICK/UID/EUID commands.
2008-09-16 22:53:44 +02:00
Jilles Tjoelker
3c80e9d634
Avoid hardcoding the number of shared{} flags another time.
2008-09-09 18:42:59 +02:00
Jilles Tjoelker
90b9ef6c6d
Fix indentation.
2008-09-09 18:40:57 +02:00
Jilles Tjoelker
663bbb2836
Add need_ssl to auth{} and operator{}.
...
Specifying need_ssl on auth{} denies the connection if
it is not SSL/TLS, much like need_ident or need_sasl.
Specifying need_ssl on operator{} refuses opering with
ERR_NOOPERHOST if the connection is not SSL/TLS.
from ircd-ratbox
2008-09-07 01:18:58 +02:00
Jilles Tjoelker
4137c21c96
Close the link that sends an invalid UID.
...
It does not make sense to send a kill using an invlid
identifier to an obviously broken server, as was
previously done.
2008-09-06 15:13:28 +02:00
Jilles Tjoelker
77a742c11c
Remove check that cannot happen due to minparc in Message struct.
2008-09-06 01:33:18 +02:00
Jilles Tjoelker
c71ae7f0dc
Improve server notices for hub_mask/leaf_mask.
...
Local-only server notices kept here because
hub_mask/leaf_mask tends to be specific to a (hub)
server. The same information is now available in
Netsplit notices.
2008-09-06 01:21:16 +02:00
Jilles Tjoelker
5b0a527927
Use rb_snprintf() in various places.
2008-09-06 01:00:20 +02:00
Jilles Tjoelker
341504a702
Remove comment referencing LazyLeaf.
2008-09-06 00:44:09 +02:00
Jilles Tjoelker
bdfc9ce626
Avoid empty strings in various notices about rejected server connections.
...
These come from the name field which is empty for unknown
connections attempting to become a server.
Instead, put [@255.255.255.255] just like ratbox3 does.
2008-09-05 22:56:59 +02:00
Jilles Tjoelker
deb7449471
Improve server notices for servers introducing existing servers.
2008-09-05 22:52:39 +02:00
Jilles Tjoelker
9649981ba7
Improve server notices about duplicate SIDs.
...
Note that this is checked after duplicate server names,
so it can only happen if multiple servers have the
same SID configured.
2008-09-04 01:41:49 +02:00
William Pitcock
9ac19244c0
Automated merge with ssh://hg.atheme.org//hg/charybdis
2008-08-29 14:48:06 -05:00
Stephen Bennett
1d53b4283b
don't set an empty password or auth_user
2008-08-29 14:47:51 -05:00
Jilles Tjoelker
628eee0041
Remove some dead code.
...
found using llvm static analyzer
2008-08-29 02:53:52 +02:00
Jilles Tjoelker
509c9ee183
Remove another remnant of server hostmasking.
2008-08-26 00:00:11 +02:00
William Pitcock
028aef6ed6
m_privs: Add stuff for privsets here too.
2008-08-17 08:56:40 -05:00
William Pitcock
e2d7f73174
/stats o: display name of privset instead of privs
2008-08-17 08:40:10 -05:00
Jilles Tjoelker
97a6160b45
Allow /list on a named +p channel.
...
A full /list already included +p channels.
2008-08-12 22:34:37 +02:00
Jilles Tjoelker
d1275a8fd6
Move to ratbox3 reject and throttle code.
...
Throttle replaces max_unknown_ip, reject is like before
(including the charybdis-specific unkline handling).
Both of these now apply before SSL negotiation.
This commit does not include the global_cidr and new dline code.
m_webirc is a bit nasty with throttling (unlike before
with max_unknown_ip), this may be fixed later (or
the webirc IP needs to be exempt{}ed).
2008-08-01 01:59:08 +02:00
Jilles Tjoelker
4045502246
Fix testline crashes, introduced by the auth_user patch.
2008-07-31 22:25:17 +02:00