Commit Graph

241 Commits

Author SHA1 Message Date
Sam Dodrill 9890a48cd9 Change all code to a consistent style
We use the Linux Kernel format now.
2014-08-03 10:38:55 -07:00
Sam Dodrill 8036a22c25 Show remote server IP addresses 2014-06-01 15:20:37 -07:00
Sam Dodrill 02b334ff8f Fix extended-join for remote and fakequit users 2014-04-22 11:38:17 -07:00
Sam Dodrill 0953068ef0 m_part: Add quotes around part reason
This is a practice already used by some networks including freenode. It
makes it possible to distinguish user part messages and forced parts
such as /remove.

ref: atheme/charybdis@a0b4a9216d
2014-04-11 11:13:00 -07:00
Sam Dodrill f5945c6972 modules/core/m_message: Flood notices now global
To ease centralized management.
2014-04-10 20:29:11 -07:00
Sam Dodrill 8bff90d496 modules/core/m_metadata: Re-add support for the old metadata verbs and document the old metadata system. 2013-11-24 14:22:51 -08:00
Sam Dodrill 5810ebb18f modules/code/m_metadata: Changed to conform to IRCv3 command spec 2013-11-24 14:11:00 -08:00
Sam Dodrill ccf057bdd7 Revert "Nickname changes are a global SNOTE"
This reverts commit 3efbe7d9fa.
2013-10-08 11:22:56 -07:00
Sam Dodrill 3efbe7d9fa Nickname changes are a global SNOTE 2013-10-08 10:16:52 -07:00
Sam Dodrill 0d45b7860f Merge account-notify and extended-join client capabilities 2013-09-29 05:24:52 -07:00
Sam Dodrill 3ed02190ef Merge branch 'owner-mode' into devel 2013-09-28 20:39:55 -07:00
Sam Dodrill 1d878cec57 Documentation on +M clarified in helpfile and module source code 2013-09-17 18:26:12 -07:00
Sam Dodrill 25e7c22891 m_nick: Reject nicks with '~' in them, rather than cutting at the '~'
Merge of commit da2fc2cbdec471b516a2aa56ed9f3513da8df87c in master

The behavior of cutting at the first '~' is confusing at first, and
looks too much like a bug.

atheme/charybdis@96b89dce38
2013-09-17 17:43:52 -07:00
Sam Dodrill aa294a3a54 Support for channel owner mode added
This is a lot like the previous channel owner mode patch, except the
documentation that previously said "admin" now says "owner" in comments.

src/channel: Kicking logic for owner mode fixed

src/channel: Document the kick/deop logic

decruft: remove temporary files
2013-09-13 11:45:38 -07:00
JD Horelick 040c2a5ba9 Fix handling of ACTIONs when chmode +G is set. 2012-02-28 15:12:33 -05:00
Jilles Tjoelker 3cc95ad818 Allow kick_on_split_riding to protect channels with mlocked keys.
Do kick_on_split_riding if services sends an SJOIN
with a lower TS and a different key. This relies on
services restoring TS (changets option in atheme) and
services not immediately parting after receiving the
KICK, which is the case in recent atheme.

For invite-only channels, still only do
kick_on_split_riding in netbursts. Services is
assumed to handle this itself (atheme does).
2011-04-06 19:05:08 +02:00
William Pitcock 5ac470475d Add support for linking using SSL certificate fingerprints as the link credential rather than the traditional server-password pair. 2010-12-13 23:14:00 -06:00
B.Greenham 5323ec7352 Move flood_attack_channel to channel.c so it can be used outside m_message.c 2010-12-11 16:11:54 -05:00
William Pitcock 585e477be8 Filter bogus CTCP ACTION messages. 2010-11-05 01:16:03 -05:00
JD Horelick 10f11ca3b5 Fix a minor spelling error in m_kick.
Thanks to Elizabeth for pointing this out.
2010-11-17 19:08:47 -05:00
alxbl 829ce93fb8 Added check for division by 0 in m_message.c Hopefully fixes #25 2010-09-07 20:21:29 -04:00
B.Greenham 4023293674 Merge. 2010-10-11 11:58:39 -04:00
B.Greenham 90728edb58 Backed out changeset 3097ade953f5
Backout modesets.

They're overly invasive and a bit uglier than is required.
The same thing can be accomplished in a better way with another method.
2010-10-11 11:58:21 -04:00
William Pitcock fc579e36e7 Enforce TS rules on MLOCKs. 2010-08-23 20:22:59 -05:00
JD Horelick e610316019 First part of charybdis changeset 1393:da0c7fdb7ee1 2010-09-11 13:49:21 -04:00
B.Greenham 1fe75e33cc mode api: Remove most modes from the chmode_table, and have them initialized in modeset files.
Modeset files are modules stored in shadowircd/modes. All they do is initalize
a set of modes on load, and orphan said modes on unload.

All cmodes not included in ircd-ratbox are now located in modeset files, rather
than being in the core. These modes no longer simply use defines, their
locations are stored in a the new struct module_modes. Each of these is set
when intializing the mode in the modeset files, and set to 0 when orphaning
the mode upon unloading the modeset file.

In addition, use_forward has been removed, as it is now obsoleted by modesets.
2010-07-02 19:09:46 -04:00
JD Horelick 133755685e Removal of ancient SVN ID's part one 2010-06-10 21:22:44 -04:00
Stephen Bennett c554add299 Allow the final parameter of MLOCK to be empty, to remove an existing mlock 2010-05-02 20:42:46 +01:00
Stephen Bennett b72bd23a03 Rework ircd-side MLOCK enforcement: instead of trying to track modes locked on or off, instead keep a simple list of mode letters that are locked, and reject any change to those modes. 2010-04-30 22:01:21 +01:00
Jilles Tjoelker 9dc68130ea Improve technical documentation of BAN protocol. 2010-04-29 00:26:49 +02:00
B.Greenham 2498a1b577 Fix some valgrind warnings. 2010-05-27 18:03:51 -04:00
JD Horelick f0e0e5672d Backed out changeset 9bd802724b74 2010-05-21 04:08:05 -04:00
JD Horelick 446c7d4f57 Remove +J chmode (KICKNOREJOIN) 2010-05-21 03:29:07 -04:00
JD Horelick f968f34f4b Update comment for me_svsjoin explaining the sort of morality of it. 2010-03-31 02:16:00 -04:00
JD Horelick b4db7c8695 It'd take the world's longest tape measure to gauge the length of my fail.
-- JD, March 31, 2010
2010-03-31 01:47:24 -04:00
JD Horelick 1d59ea37bb Add me_svsjoin function to allow services to "force"join clients
to channels, primarily for ns_ajoin.
2010-03-30 21:20:26 -04:00
Jilles Tjoelker 7c880acbfe Fix various compiler warnings. 2010-03-27 20:09:46 +01:00
Jilles Tjoelker 9b9d818b32 Add propagated resvs, like klines and xlines. 2010-03-27 16:13:57 +01:00
Jilles Tjoelker a75522e6a5 BAN: xlines do not have oper reasons, their "reason" is already oper only. 2010-03-18 00:22:35 +01:00
Jilles Tjoelker 112e8a666b Add propagated xlines, like klines. 2010-03-16 23:05:50 +01:00
William Pitcock 28805dc5fc 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.
2010-03-07 23:13:39 -06:00
B.Greenham 01b2be6fe1 Allow users to send replies through +G the same as they can through +g. 2010-09-10 13:26:41 -04:00
B.Greenham ca328a798f Fix crash upon recieving SVSJOIN for remote user. 2010-08-30 18:25:40 -04:00
Jilles Tjoelker d8316e070f Provide an error message when a user does /quote ban. 2010-08-29 15:16:47 +02:00
Jilles Tjoelker 9e94d9ea13 Add target change for channels.
This has a separate enabling option channel::channel_target_change.

It applies to PRIVMSG, NOTICE and TOPIC by unvoiced unopped non-opers.

The same slots are used for channels and users.
2010-08-28 20:02:42 -04:00
B.Greenham ffd69d40d1 Fix the 'phantom user' bug, along with a bug that would make repeat mode changes appear on burst. 2010-07-28 19:54:22 -04:00
JD Horelick 2588ff97f4 Change a bit of the last commit since opers do not go through +g on ShadowIRCd as they do on Charybdis. 2010-07-04 16:12:31 -04:00
JD Horelick 33736ea75f Tweak auto-accept:
* does not apply to NOTICE (as those may well be automated)
* mirrors +g behaviour so that no useless accept entries are added for services
* respects max_accept, if it would be exceeded the message is dropped with numeric 494
* check moved up so this is checked before floodcount/tgchange

Pulled from Charybdis upstream changeset 1388:b1ef26176350 done by jilles.
2010-07-04 15:27:34 -04:00
William Pitcock 5b71b8ec50 Stop griefing through taunting while hiding behind CALLERID.
This shouldn't provide any way for a client to get on a CALLERID list
without authorization, as if a client is +g already, a CTCP request, for
example, won't be replied to.
2010-07-03 00:44:55 -05:00
Jilles Tjoelker 70fd7fc9fb BAN: Reject bans with insufficient non-wildcard characters.
Such bans are not applied locally, but are propagated normally.
They can only be removed on a server that applies them.

Note that normally KLINE will not accept such bans.
This is mainly for services, differing min_wildcard and
ircd changes.
2010-03-06 01:45:41 +01:00