Commit graph

37 commits

Author SHA1 Message Date
Ed Kellett d4f7eb4ce6
Replace most checks for +o with oper:general
I'm preparing to PR a succession of privs changes with the ultimate goal
of severely limiting the scope of the binary oper/user dichotomy and
move conceptually distinct oper functions into their own privs.

Accomplishing this is a non-trivial task, and can wait, but it's
inconvenient now to have such functions enabled by the same mechanism
that grants any privs at all--so I'm moving all of them to a
transitional priv with the intention of eroding that later.
2020-08-04 22:58:30 +01:00
Ed Kellett 1123eefcb0
Rework oper hiding
As it stands, oper hiding is rather messy and inconsistent. Add
SeesOper(target, source), which is true iff target should appear as an
oper to source. If I haven't missed something, all commands that reveal
oper status now use the same logic.

general::hide_opers_in_whois is a special case, and affects /whois only.

general::hide_opers is introduced, and has the same effect as giving
everyone oper:hidden. All commands that reveal oper status respect both.
2019-09-12 23:14:15 +01:00
Elizabeth Myers 79435744c7 common.h: raison d'être is gone, so out it goes.
Fold whatever was left into ircd_defs.h
2016-03-23 09:33:56 -05:00
Elizabeth Myers 3c7d6fcce7 Message handlers should return void.
Also fix up some return values and stuff to use bool (or void if
nothing). I just did it whilst I was here.

According to jilles, the return value used to signify whether or not the
client had exited. This was error-prone and was fixed a long, long time
ago, but the return value was left int for historical reasons.

Since the return type is not used (and has no clear use case anyway),
it's safe to just get rid of it.
2016-03-09 01:37:03 -06:00
Elizabeth Myers eeabf33a7c Move module description headers to the top
This is cleaner.

Note this was broken out of a much larger piece of work I did, so if
there's any problems, I apologise!
2016-03-09 01:29:41 -06:00
Andrew Wilcox 3bf449fe26 modules: Add AV2 descriptions for m_w* modules 2016-03-07 02:53:27 -06:00
Elizabeth Myers 105a4985b4 Migrate remaining modules to AV2
No descriptions yet. :(
2016-03-07 00:03:39 -06:00
Elizabeth Myers cbeab4bc34 Remove $Id tags from everything.
These are obsolete and none have changed since 10 years gao...
2016-03-06 02:47:27 -06:00
William Pitcock 7baa37a9ef msg: remove last vestiges of the fakelag system. charybdis has never supported fakelag. 2016-02-19 16:43:39 -06:00
William Pitcock 428ca87b01 modules: chase MsgBuf API change 2016-02-10 20:54:17 -06:00
Valerii Iatsko 5203cba5ce Remove libratbox's snprintf.c, update related ircd code 2016-02-10 02:25:32 +01:00
William Pitcock 0b904d91bf supported: move ISUPPORT tokens provided by modules to their specific modules:
- m_cmessage: CPRIVMSG/CNOTICE
- m_etrace: ETRACE
- m_knock: KNOCK
- m_services: FNC
- m_who: WHOX
2015-12-26 22:41:09 -06:00
Keith Buck 55abcbb20a Remove trailing whitespace from all .c and .h files.
3134 bytes were removed.
2014-03-03 04:25:47 +00:00
Keith Buck 7e132ff005 ratelimit: Add rate-limiting to MOTD, WHO, and remote WHOIS. 2012-02-18 03:56:47 +00:00
Stephen Bennett c127b45b83 Revert all presence-related changes 2009-12-08 19:22:55 +00:00
William Pitcock 884b5d41c1 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
Jilles Tjoelker 94734aacc6 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 161f040940 Update comments for parv[0] removal. 2009-01-18 18:22:43 +01:00
Jilles Tjoelker 9a7ab95b89 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 bac250f689 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 ea6dade261 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 9cd063980a 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 62656efdd6 Should use rb_strlcpy instead of strlcpy... 2008-11-09 01:05:39 +01:00
Jilles Tjoelker 04d7768492 Remove LOCAL_COPY (and thus alloca) usage from /who. 2008-11-09 00:13:48 +01:00
Jilles Tjoelker 02eca3f19a 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 48957a4951 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
Valery Yatsko 4562c60489 irc_string.h -> match.h, irc_string.h; includes changed 2008-04-20 09:47:38 +04:00
Valery Yatsko cbe4e1ba31 legacy irc sprintf gone 2008-04-20 09:12:09 +04:00
William Pitcock 4016731b1c s_log.* -> logger.* (s_foo looks ugly, lets try to get rid of it) 2008-04-02 21:52:01 -05:00
Valery Yatsko e335494516 CurrentTime -> rb_currenttime(); 2008-04-02 03:53:20 +04:00
Valery Yatsko 81af5bcb39 libcharybdis includes gone. 2008-04-02 02:39:19 +04:00
William Pitcock 7cdb0a09b9 ircsprintf -> rb_sprintf 2008-04-01 15:21:53 -05:00
William Pitcock 5b96d9a6b9 start making this compile 2008-04-01 15:18:48 -05:00
William Pitcock c88cdb0095 Get rid of User.server. 2007-11-20 06:36:55 -06:00
jilles f71e18eee5 [svn] Repair operspy who !#channel, broken by me in r3283. 2007-04-02 15:03:08 -07:00
jilles 4cda5f2264 [svn] Fix /who on channels with ** in their name. 2007-03-28 06:11:30 -07:00
nenolod 212380e3f4 [svn] - the new plan:
+ branches/release-2.1 -> 2.2 base
  + 3.0 -> branches/cxxconversion
  + backport some immediate 3.0 functionality for 2.2
  + other stuff
2007-01-24 22:40:21 -08:00