| Commit message (Expand) | Author | Age | Files | Lines |
| * | Add batch support•••- Add "batch" client capability
- Support sending netsplit/netjoin batches
- Support receiving BATCH from clients and remote servers
- Support for modules to define supported batch types for incoming
batches
- Add "message_handler" hook to override the handler for a particular
incoming message
- Add technical and user-facing documentation for batches
- Add some more sendto_* overloads that support tags which were missing
from the initial message-tags implementation but turned out to be
needed
| Ryan Schmidt | 2026-01-21 | 1 | -0/+1 |
| * | EBMASK capab, to burst BMASK metadata (#354) | Jess Porter | 2022-08-20 | 1 | -1/+1 |
| * | channel: flood warnings for privmsg, not notice (#147) | Ed Kellett | 2021-04-17 | 1 | -1/+2 |
| * | Clean up duplication in ChannelModeFunc prototypes (#52) | Eric Mertens | 2020-11-07 | 1 | -2/+2 |
| * | chmode: Get elevated access for op-only queries | Ed Kellett | 2020-11-08 | 1 | -0/+1 |
| * | Rework channel mode handling•••Incoming MODE processing is split into a parsing step and an execution
step, instead of a mode's effector function being involved in its own
parsing. Modes can no longer use custom logic to control their parsing,
and instead supply a combination of CHM_* flags to the parser. As a
result, we know before we try to effect any mode changes what all of
them will be.
The reauthorize hack for override is no longer necessary. A side effect
of its introduction was that `MODE #foo b x!y@z` no longer worked; in
removing it we restore that behaviour.
We gain the ability to reject various invalid inputs that:
- mutate or query unknown modes
- supply excess mode arguments
- query modes that can't be queried
In each case, whether we *should* reject it is an open question; for now
I'm rejecting the first one.
| Ed Kellett | 2020-11-08 | 1 | -2/+12 |
| * | Add a comment explaining ITER_COMM_CHANNELS | Ed Kellett | 2020-10-21 | 1 | -3/+18 |
| * | Refactor common channel iteration | Ed Kellett | 2020-10-19 | 1 | -0/+9 |
| * | Centralise banmask matching logic | Ed Kellett | 2020-04-12 | 1 | -2/+4 |
| * | channels: fix IsChannelName() to actually use IsChanPrefix(). | William Pitcock | 2016-09-16 | 1 | -1/+1 |
| * | chmode: Move add_id() to a boolean | Matt Ullman | 2016-03-24 | 1 | -1/+1 |
| * | channel: Move flood_attack_channel() to a boolean | Matt Ullman | 2016-03-24 | 1 | -1/+1 |
| * | channel: Move check_channel_name() to a boolean | Matt Ullman | 2016-03-24 | 1 | -1/+1 |
| * | More cleanup | Matt Ullman | 2016-03-23 | 1 | -2/+2 |
| * | Detect stdbool.h and add conformant shims if it isn't available•••Charybdis requires C99 already, so it's high time we start using
stdbool. I've converted a few pieces of code already.
A lot of the old code that uses YES/NO should probably be updated too
because that's fucking hideous.
| Elizabeth Myers | 2016-03-08 | 1 | -1/+3 |
| * | Remove $Id tags from everything.•••These are obsolete and none have changed since 10 years gao...
| Elizabeth Myers | 2016-03-06 | 1 | -2/+0 |
| * | ircd: get_channel_access(): do not derive channel pointer from membership | William Pitcock | 2016-01-13 | 1 | -1/+1 |
| * | ircd: import hidden channel modes framework, from ircd-seven•••This allows for modules to define channel modes which are only visible to opers.
| William Pitcock | 2016-01-13 | 1 | -0/+1 |
| * | extensions/override: display mode-change string in override messages | William Pitcock | 2016-01-11 | 1 | -1/+1 |
| * | channel: cache duplicate calls to is_banned() and is_quieted() | William Pitcock | 2015-12-13 | 1 | -0/+5 |
| * | Revert "extban: implement helper functions for stackable extbans (part 1) (re...•••This reverts commit 304bd0d095917d8dffca8567768e4cada4a8748b.
| William Pitcock | 2015-12-10 | 1 | -1/+0 |
| * | extban: implement helper functions for stackable extbans (part 1) (ref #74) | William Pitcock | 2015-12-10 | 1 | -0/+1 |
| * | override: only engage override code if we're needing to authorize a WRITE to ... | William Pitcock | 2015-12-10 | 1 | -1/+1 |
| * | channel: Remove write-only field. | Jilles Tjoelker | 2014-05-29 | 1 | -1/+0 |
| * | channel: Stop pretending to support per-mode server capabilities.•••After a change for dynamic server capabilities, the code to send out mode
changes was changed to use the capabilities belonging to the last mode
being sent out. This does not make sense; therefore, just use no
capabilities and remove supporting infrastructure.
| Jilles Tjoelker | 2014-05-29 | 1 | -9/+0 |
| * | Remove trailing whitespace from all .c and .h files.•••3134 bytes were removed.
| Keith Buck | 2014-03-03 | 1 | -1/+1 |
| * | Remove MODE_NOCTCP from core, in favor of chm_noctcp. | William Pitcock | 2012-03-31 | 1 | -1/+0 |
| * | Remove MODE_NOCOLOR from core, replacing it with modules/chm_nocolour.so. | William Pitcock | 2012-03-31 | 1 | -1/+0 |
| * | Add one more const. | Jilles Tjoelker | 2012-01-08 | 1 | -2/+2 |
| * | Fix a warning about const with forward channels. | Jilles Tjoelker | 2012-01-08 | 1 | -1/+1 |
| * | Port ircd-seven banfowards to charybdis.•••nenolod gave the thumbs-up to port ircd-seven banfowards to charybdis to spb
for a while, and people have asked about it. Might as well do it since it's a
slow weekend.
Note that as a side effect use_forward is removed from the config and
unconditionally enabled!
| Elizabeth Jennifer Myers | 2011-08-12 | 1 | -5/+8 |
| * | Back out chanroles.•••While what chanroles are trying to accomplish is a good idea, it is
apparently unclear this is the proper way to do it. Until we figure out
the exact way we wish to do this, it should be reverted for now.
| Elizabeth Jennifer Myers | 2011-07-07 | 1 | -20/+1 |
| * | chanroles: instead of checking for chanop + CHANROLE_UNSET combination, grant...•••this allows ops with zero effective privilege.
| William Pitcock | 2011-07-06 | 1 | -0/+1 |
| * | chanroles: grant initial set of flags to people added to a channel with CHFL_...•••this allows us to, later on, add a hook that will enable us to disable channel ops entirely
without causing permissions revocation.
| William Pitcock | 2011-07-06 | 1 | -0/+2 |
| * | Implement chanroles, as discussed with nenolod.•••The theory behind this is that services sends an ENCAP * GRANT #channel
UID :+flagspec message specifying the chanroles the user has. They are
mapped into flag bits and applied to the membership of the user. They
then are restricted or permitted to what they can do based on the
permissions mask regardless of rank.
For backwards compatibility, the default permission bit (without a GRANT
statement) allows a user to to anything an existing op can do ONLY if
they are an op.
Todo: make CHANROLE_STATUS work (the ability to apply +ov to people),
which is at the moment controlled by CHANROLE_MODE.
| Elizabeth Jennifer Myers | 2011-07-06 | 1 | -2/+18 |
| * | Add send_channel_join(). | William Pitcock | 2010-12-16 | 1 | -0/+2 |
| * | Move flood_attack_channel to channel.c so it can be used outside m_message.c | B.Greenham | 2010-12-09 | 1 | -0/+2 |
| * | Reorder CHFL flags so that they can be used as ranks. | William Pitcock | 2010-12-07 | 1 | -3/+5 |
| * | Enforce TS rules on MLOCKs. | William Pitcock | 2010-08-23 | 1 | -1/+1 |
| * | Branch merge | Stephen Bennett | 2010-05-02 | 1 | -2/+1 |
| |\ |
|
| | * | Backed out changeset c57955c5225e•••Now that MLOCK is no longer stored as a struct Mode, this is unnecessary.
| Stephen Bennett | 2010-05-02 | 1 | -3/+1 |
| * | | Allow the final parameter of MLOCK to be empty, to remove an existing mlock | Stephen Bennett | 2010-05-02 | 1 | -1/+0 |
| * | | Rework ircd-side MLOCK enforcement: instead of trying to track modes locked o... | Stephen Bennett | 2010-04-30 | 1 | -3/+2 |
| * | | New custom channel mode API allowing reloading such modules.•••Additionally, attempting to use too many modes or two times
the same letter is now detected and prevented.
Modules now request that a channel mode be added/orphaned,
instead of ugly manipulation from which that request had
to be guessed.
Slight changes are needed to modules that provide channel modes.
From the old API, one important function has been made static,
the other important function has been renamed, so loading old
modules should fail safely.
| Jilles Tjoelker | 2010-04-01 | 1 | -3/+5 |
| * | | Add propagated resvs, like klines and xlines. | Jilles Tjoelker | 2010-03-27 | 1 | -0/+2 |
| * | | Add propagation of MLOCK state for simple modes.•••Special modes like +j can be tracked easily just by adding the necessary
code to parse them to set_channel_mlock(). This will cover propagation
as well.
| William Pitcock | 2010-03-07 | 1 | -0/+2 |
| |/ |
|
| * | Rename channel_modes() to channel_modes_real(), and use macros to build both ... | William Pitcock | 2010-03-07 | 1 | -1/+3 |
| * | struct Channel: add mode_lock structure to the channel object. | William Pitcock | 2010-03-07 | 1 | -0/+1 |
| * | struct Mode: add off_mode bitfield to describe disabled channel modes. | William Pitcock | 2010-03-07 | 1 | -0/+1 |
| * | Merge +C (no CTCP to channels) from ircd-seven. | William Pitcock | 2010-01-19 | 1 | -0/+1 |