]>
jfr.im git - solanum.git/log
Jilles Tjoelker [Tue, 17 Nov 2009 23:00:07 +0000 (00:00 +0100)]
Add two more reasons why ssld_count>1 can be useful: bugs and fd limits.
Jilles Tjoelker [Sun, 15 Nov 2009 22:11:18 +0000 (23:11 +0100)]
ssld: Fix an fd leak when closing connections.
Lightly tested.
Jilles Tjoelker [Sun, 15 Nov 2009 21:41:02 +0000 (22:41 +0100)]
ssld: Do not crash if not all fds in a message could be received.
Actually fill the mod_ctl_buf_t.nfds field.
William Pitcock [Sun, 25 Oct 2009 02:07:53 +0000 (21:07 -0500)]
Automated merge with ssh://hg.atheme.org//hg/charybdis
William Pitcock [Sun, 25 Oct 2009 02:07:41 +0000 (21:07 -0500)]
If you're going to censor my jokes, at least do it right.
Jilles Tjoelker [Sun, 18 Oct 2009 19:08:37 +0000 (21:08 +0200)]
Note that blacklist{} only accepts host/reason pairs, no host+host+reason.
Jilles Tjoelker [Sat, 19 Sep 2009 22:44:47 +0000 (00:44 +0200)]
Use full (:n!u@h) prefix for sending ETB from a user to clients.
Jilles Tjoelker [Sat, 19 Sep 2009 19:24:35 +0000 (21:24 +0200)]
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)
William Pitcock [Mon, 13 Jul 2009 17:55:35 +0000 (12:55 -0500)]
Display o:line "nickname" in global oper-up messages.
Jilles Tjoelker [Thu, 9 Jul 2009 22:27:01 +0000 (00:27 +0200)]
Fix fd passing on FreeBSD/amd64 and possibly Solaris/sparc.
The number of file descriptors in the message was not
determined correctly.
Jilles Tjoelker [Wed, 17 Jun 2009 22:37:19 +0000 (00:37 +0200)]
Show yyerror() parse errors on stderr on startup.
Noticed by: spb
Jilles Tjoelker [Tue, 9 Jun 2009 16:46:40 +0000 (18:46 +0200)]
Correct clone command.
Jilles Tjoelker [Wed, 3 Jun 2009 22:01:57 +0000 (00:01 +0200)]
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.
Jilles Tjoelker [Wed, 3 Jun 2009 21:49:50 +0000 (23:49 +0200)]
Reject presence updates with too long keys, instead of truncating them
and causing soft assertion failures. Values are still
silently truncated though.
Jilles Tjoelker [Wed, 3 Jun 2009 21:38:07 +0000 (23:38 +0200)]
Add new constants for presence key/value lengths
instead of overloading NICKLEN/TOPICLEN.
Jilles Tjoelker [Wed, 3 Jun 2009 21:18:07 +0000 (23:18 +0200)]
Remove two obsolete constants.
Stephen Bennett [Tue, 8 Dec 2009 19:23:32 +0000 (19:23 +0000)]
Merge
Stephen Bennett [Tue, 8 Dec 2009 19:22:55 +0000 (19:22 +0000)]
Revert all presence-related changes
Jilles Tjoelker [Sat, 5 Dec 2009 19:48:02 +0000 (20:48 +0100)]
Fix crashes when there are no alias blocks in the conf.
Jilles Tjoelker [Wed, 3 Jun 2009 21:18:07 +0000 (23:18 +0200)]
Remove two obsolete constants.
Jilles Tjoelker [Wed, 3 Jun 2009 18:44:37 +0000 (20:44 +0200)]
Do not send two 792 numerics when changing a metadata from one non-empty value to another.
Jilles Tjoelker [Wed, 3 Jun 2009 18:03:15 +0000 (20:03 +0200)]
Correct minimum parameter counts for PRESENCE.
Jilles Tjoelker [Wed, 3 Jun 2009 17:57:27 +0000 (19:57 +0200)]
ENCAPs cannot come from local clients, no need to check.
Jilles Tjoelker [Wed, 3 Jun 2009 17:54:49 +0000 (19:54 +0200)]
Remove special CAP presence handling of /whois away message.
This cannot work because /whois is executed remotely too
and CAPs aren't known remotely.
William Pitcock [Tue, 2 Jun 2009 07:55:45 +0000 (02:55 -0500)]
presence: m_presence module: Use safer get_metadata() where appropriate, to avoid crash possibilities.
William Pitcock [Tue, 2 Jun 2009 07:48:22 +0000 (02:48 -0500)]
presence: send..._with_capability...(): don't send if the client does not have the capab but isn't on a channel
William Pitcock [Tue, 2 Jun 2009 07:46:37 +0000 (02:46 -0500)]
presence: delete_metadata(): Free from the right heap.
William Pitcock [Tue, 2 Jun 2009 07:44:31 +0000 (02:44 -0500)]
presence: Use RPL_WHOISMETADATA.
William Pitcock [Tue, 2 Jun 2009 07:38:38 +0000 (02:38 -0500)]
presence: Add _butone() variant of sendto_common_channels_local_with_capability().
William Pitcock [Tue, 2 Jun 2009 07:36:18 +0000 (02:36 -0500)]
presence: Broadcast presence changes to peer clients with CLICAP_PRESENCE.
William Pitcock [Tue, 2 Jun 2009 07:32:07 +0000 (02:32 -0500)]
presence: Declare RPL_METADATACHG.
William Pitcock [Tue, 2 Jun 2009 07:28:02 +0000 (02:28 -0500)]
presence: Add sendto_common_channels_local_with_capability(), used for broadcasting presence updates.
William Pitcock [Tue, 2 Jun 2009 07:19:37 +0000 (02:19 -0500)]
presence: Declare RPL_WHOISMETADATA.
William Pitcock [Tue, 2 Jun 2009 07:17:42 +0000 (02:17 -0500)]
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.
William Pitcock [Tue, 2 Jun 2009 07:14:44 +0000 (02:14 -0500)]
presence: Add CLICAP_PRESENCE.
This will enable broadcasting presence updates on channels.
William Pitcock [Tue, 2 Jun 2009 07:08:45 +0000 (02:08 -0500)]
presence: Remove no longer used away_heap.
William Pitcock [Tue, 2 Jun 2009 07:06:18 +0000 (02:06 -0500)]
presence: Replace stagnant free_away() call with delete_metadata(..., "away").
William Pitcock [Tue, 2 Jun 2009 07:03:51 +0000 (02:03 -0500)]
presence: Remove user.away, replaced by a metadata entry.
Cache the metadata retrieval value where feasible for minimal performance impact.
William Pitcock [Tue, 2 Jun 2009 06:53:05 +0000 (01:53 -0500)]
presence: Make set_metadata() erase any old metadata for an entry.
William Pitcock [Tue, 2 Jun 2009 06:50:40 +0000 (01:50 -0500)]
presence: Add get_metadata().
William Pitcock [Tue, 2 Jun 2009 06:45:43 +0000 (01:45 -0500)]
presence: Add m_presence module. This provides an ENCAP s2s interface and lowlevel client interface.
William Pitcock [Tue, 2 Jun 2009 06:41:44 +0000 (01:41 -0500)]
presence: Add set_metadata() and delete_metadata().
William Pitcock [Tue, 2 Jun 2009 06:32:09 +0000 (01:32 -0500)]
presence: Declare RPL_METADATASET and RPL_METADATAREM.
William Pitcock [Tue, 2 Jun 2009 06:29:58 +0000 (01:29 -0500)]
presence: Declare MetadataEntry struct.
William Pitcock [Sat, 30 May 2009 18:30:57 +0000 (13:30 -0500)]
presence: Create presence metadata tracking structures where appropriate.
William Pitcock [Sat, 30 May 2009 18:17:39 +0000 (13:17 -0500)]
struct Client: add a dictionary to contain presence metadata.
William Pitcock [Sat, 30 May 2009 18:16:01 +0000 (13:16 -0500)]
Automated merge with ssh://hg.atheme.org//hg/charybdis
William Pitcock [Sat, 30 May 2009 18:15:58 +0000 (13:15 -0500)]
Add irc_dictionary.h to stdinc. I'm lazy.
Jilles Tjoelker [Thu, 21 May 2009 21:11:32 +0000 (23:11 +0200)]
Remove check_banned_lines() code duplication.
We can just call check_dlines(), check_klines() and check_xlines().
Jilles Tjoelker [Thu, 21 May 2009 14:01:46 +0000 (16:01 +0200)]
Remove some obsolete unused definitions.
Jilles Tjoelker [Sun, 17 May 2009 18:52:16 +0000 (20:52 +0200)]
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.
Jilles Tjoelker [Wed, 13 May 2009 20:07:57 +0000 (22:07 +0200)]
Check the return value on rb_pipe.
from ircd-ratbox (r26515) (androsyn)
Jilles Tjoelker [Tue, 12 May 2009 21:56:28 +0000 (23:56 +0200)]
Remove unused inet_socketpair() code, this is in libratbox now.
Jilles Tjoelker [Tue, 12 May 2009 21:30:46 +0000 (23:30 +0200)]
More rb_socketpair() return value checks.
from ircd-ratbox (r26507) (androsyn)
Jilles Tjoelker [Tue, 12 May 2009 21:18:41 +0000 (23:18 +0200)]
Report errors and close the incoming connection if socketpair fails
for ssl connections.
from ircd-ratbox (r26503) (androsyn)
Jilles Tjoelker [Fri, 8 May 2009 20:40:18 +0000 (22:40 +0200)]
Update copyright years in sgml docs.
Jilles Tjoelker [Fri, 8 May 2009 20:37:20 +0000 (22:37 +0200)]
Remove notes about now fixed xline \s bugs from sgml docs.
Jilles Tjoelker [Fri, 8 May 2009 12:42:55 +0000 (14:42 +0200)]
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.
Jilles Tjoelker [Fri, 8 May 2009 12:27:30 +0000 (14:27 +0200)]
Disallow the sequence '",' in perm xlines,
it would cause problems with xline.conf.
Jilles Tjoelker [Fri, 8 May 2009 11:40:09 +0000 (13:40 +0200)]
Change \s to space when writing xline.conf, to be compatible with older versions.
Jilles Tjoelker [Thu, 7 May 2009 23:50:35 +0000 (01:50 +0200)]
Disallow double quotes in klines.
These could cause parse problems with kline.conf.
Jilles Tjoelker [Thu, 7 May 2009 23:23:40 +0000 (01:23 +0200)]
Disallow commas in channel resvs.
These can never match and could cause parse problems in resv.conf.
Jilles Tjoelker [Thu, 7 May 2009 22:21:14 +0000 (00:21 +0200)]
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()).
Jilles Tjoelker [Thu, 7 May 2009 21:58:32 +0000 (23:58 +0200)]
Stop changing \s to spaces in masktrace and testmask,
match_esc() handles \s directly now.
Jilles Tjoelker [Tue, 21 Apr 2009 16:43:07 +0000 (18:43 +0200)]
Move check for required CAPABs to mr_server -- CAPAB may not be sent.
Also fix exit message.
William Pitcock [Mon, 20 Apr 2009 14:36:55 +0000 (09:36 -0500)]
Allow for capabilities to be marked as "required".
If capability negotiation fails on these capabilities, then the server link is dropped.
William Pitcock [Mon, 20 Apr 2009 14:20:11 +0000 (09:20 -0500)]
can_kick hook, based on the ircd-seven one.
William Pitcock [Mon, 20 Apr 2009 13:43:35 +0000 (08:43 -0500)]
Automatic branch merge from 'origin/freenode/ircd-seven-merge-to-3.2' to 'trunk'.
Stephen Bennett [Mon, 20 Apr 2009 13:42:41 +0000 (08:42 -0500)]
/ is a host character and not a nick character, so make pretty_mask treat it as such
Stephen Bennett [Mon, 20 Apr 2009 13:37:13 +0000 (08:37 -0500)]
Allow / in spoofed hosts
Jilles Tjoelker [Sat, 18 Apr 2009 22:04:21 +0000 (00:04 +0200)]
Simplify floodcount checking, it is no longer affected by +g/+R anymore.
Jilles Tjoelker [Thu, 9 Apr 2009 21:45:35 +0000 (23:45 +0200)]
Use uid/sid for some ERR_CHANOPRIVSNEEDED if they go to a remote client.
Jilles Tjoelker [Wed, 8 Apr 2009 19:30:58 +0000 (21:30 +0200)]
Fix compilation with --enable-assert=soft.
Jilles Tjoelker [Wed, 8 Apr 2009 19:30:34 +0000 (21:30 +0200)]
Remove some unused variables.
Jilles Tjoelker [Sun, 29 Mar 2009 20:05:59 +0000 (22:05 +0200)]
Add description for TB and TOPIC messages.
Jilles Tjoelker [Sun, 29 Mar 2009 16:55:23 +0000 (18:55 +0200)]
Update sgml documentation for +z enhancement.
Jilles Tjoelker [Sun, 29 Mar 2009 15:08:42 +0000 (17:08 +0200)]
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.
Jilles Tjoelker [Sun, 29 Mar 2009 13:48:07 +0000 (15:48 +0200)]
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.
Jilles Tjoelker [Sun, 29 Mar 2009 13:04:17 +0000 (15:04 +0200)]
Mention that @#chan/+#chan requires CHW capab.
Jilles Tjoelker [Tue, 24 Mar 2009 23:34:12 +0000 (00:34 +0100)]
Add GUNGLINE to protocol documentation (efnet only, not in charybdis).
Jilles Tjoelker [Fri, 13 Mar 2009 18:36:49 +0000 (19:36 +0100)]
No profanity.
William Pitcock [Mon, 9 Mar 2009 02:06:33 +0000 (21:06 -0500)]
Our IRC oper messages are now as enhanced as enhanced interrogation techniques.
Jilles Tjoelker [Sun, 8 Mar 2009 15:45:09 +0000 (16:45 +0100)]
Add /rehash throttles to help file.
Jilles Tjoelker [Sun, 8 Mar 2009 13:31:50 +0000 (14:31 +0100)]
rehash bans: show mask in k/x line over-ruled notice
This was already shown in the over-ruled notices on k/x line add.
Jilles Tjoelker [Sun, 8 Mar 2009 12:30:30 +0000 (13:30 +0100)]
rehash bans: still check k/x lines for users exempt from dlines
Jilles Tjoelker [Sun, 8 Mar 2009 01:14:26 +0000 (02:14 +0100)]
Use ratbox's match_esc(), this allows \s for space.
Jilles Tjoelker [Sat, 7 Mar 2009 15:57:58 +0000 (16:57 +0100)]
Do not send "<blah> is rehashing <blah>" notices to the remote oper.
Jilles Tjoelker [Sat, 7 Mar 2009 02:23:17 +0000 (03:23 +0100)]
Fix close detection with ssl+zip, porting more code from ircd-ratbox.
This tells the SSL ssld to report connection closure to ircd
using the new fd.
Jilles Tjoelker [Sat, 7 Mar 2009 00:49:09 +0000 (01:49 +0100)]
Allow /rehash throttles to clear throttling.
Jilles Tjoelker [Sat, 7 Mar 2009 00:27:05 +0000 (01:27 +0100)]
Rework remote rehash messages to apply to all server notices during rehash.
Previously various notices such as those applying
to modules were not sent to the remote oper.
Jilles Tjoelker [Tue, 3 Mar 2009 21:32:18 +0000 (22:32 +0100)]
ssld: Do not do redundant rb_setselect().
Apparently solaris devpoll/ports may have a problem
with this.
from ircd-ratbox (androsyn)
Jilles Tjoelker [Tue, 3 Mar 2009 21:26:45 +0000 (22:26 +0100)]
Remove unused declaration.
Jilles Tjoelker [Sun, 1 Mar 2009 00:58:53 +0000 (01:58 +0100)]
Correct WHOX overflow check so it also works for fields other than the last.
Found with llvm static analyzer.
Jilles Tjoelker [Sun, 1 Mar 2009 00:53:40 +0000 (01:53 +0100)]
Remove some unused variables.
Found with llvm static analyzer.
Jilles Tjoelker [Sun, 1 Mar 2009 00:03:58 +0000 (01:03 +0100)]
Document efnet-style GLINE protocol.
Jilles Tjoelker [Sat, 21 Feb 2009 23:59:16 +0000 (00:59 +0100)]
Import new mkpasswd from ircd-ratbox.
This now uses libratbox.
Jilles Tjoelker [Sat, 21 Feb 2009 23:45:50 +0000 (00:45 +0100)]
Rerun autoconf.
Jilles Tjoelker [Sat, 21 Feb 2009 23:45:41 +0000 (00:45 +0100)]
Remove some warning that will not be fixed.
Jilles Tjoelker [Sat, 21 Feb 2009 23:12:21 +0000 (00:12 +0100)]
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.
Jilles Tjoelker [Sat, 21 Feb 2009 23:05:48 +0000 (00:05 +0100)]
Avoid unnecessary const violation.