solanum/ircd
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
..
authproc.c Add basic SCTP listener support that binds to multiple addresses 2017-08-24 20:08:20 +01:00
bandbi.c remove RB_IPV6 2017-08-20 12:54:46 +01:00
cache.c free cache emptyline rb_dlink_node, allocated automatically but never freed 2016-10-30 12:05:45 +00:00
capability.c ircd: Fix capability entry name string ownership. 2016-06-21 17:32:28 -07:00
channel.c gcc7 fixes: NICKLEN -> NAMELEN 2018-01-19 23:26:20 +00:00
chmode.c ircd: send tags on every message 2017-08-06 16:21:29 +01:00
class.c class: remove unused macros 2016-06-01 20:54:12 +00:00
client.c ircd: remove debug 2019-08-31 16:36:41 +01:00
dns.c remove RB_IPV6 2017-08-20 12:54:46 +01:00
extban.c common.h: raison d'être is gone, so out it goes. 2016-03-23 09:33:56 -05:00
getopt.c YESNO options are of type bool, not int 2018-03-23 16:46:38 +00:00
hash.c ircd: get_or_create_channel: avoid clang static analysis warning 2017-07-29 22:28:51 +01:00
hook.c m_sasl: check if the agent is present after every client_exit 2018-08-12 12:50:43 +01:00
hostmask.c librb: Fix type of dst for rb_inet_pton_sock() 2019-08-31 16:10:50 +01:00
ircd.c tests: add sendto_* test framework 2017-08-05 14:09:01 +01:00
ircd_lexer.l ircd_lexer: fix another crash with the same cause 2016-05-15 00:57:16 +00:00
ircd_parser.y conf_parser: warning fixes 2016-06-18 00:52:54 -05:00
ircd_signal.c ircd_signal: a function that tailcalls a noreturn function should be marked noreturn 2016-06-01 20:54:12 +00:00
listener.c librb: Fix type of dst for rb_inet_pton_sock() 2019-08-31 16:10:50 +01:00
logger.c logger: add idebug 2016-03-28 19:06:31 -05:00
main.c ircd: add main.c stub executable 2016-01-06 23:57:35 -06:00
Makefile.am Revert "Implement the netsplit batch type." 2016-04-16 11:05:00 -05:00
match.c remove RB_IPV6 2017-08-20 12:54:46 +01:00
modules.c Deferred capability notifications from modules 2019-09-07 14:59:33 +01:00
monitor.c ircd: send tags on every message 2017-08-06 16:21:29 +01:00
msgbuf.c ircd: send tags on every message 2017-08-06 16:21:29 +01:00
newconf.c Rework oper hiding 2019-09-12 23:14:15 +01:00
operhash.c ircd: Fix missing operhash reference decrement from b02a913b. 2016-07-19 23:24:33 +00:00
packet.c Add basic SCTP listener support that binds to multiple addresses 2017-08-24 20:08:20 +01:00
parse.c ircd: log command in mod_add_cmd/mod_del_cmd error scenarios 2017-08-05 12:29:52 +01:00
privilege.c Use rb_* versions of nonportable string functions 2016-04-05 05:39:59 -05:00
ratelimit.c rename src to ircd, libcore to libircd 2016-01-06 01:16:08 -06:00
reject.c remove RB_IPV6 2017-08-20 12:54:46 +01:00
restart.c getopt: don't modify argv as it breaks restart() 2016-04-25 23:32:18 +01:00
s_conf.c Rework oper hiding 2019-09-12 23:14:15 +01:00
s_newconf.c librb: Fix type of dst for rb_inet_pton_sock() 2019-08-31 16:10:50 +01:00
s_serv.c librb: Fix type of dst for rb_inet_pton_sock() 2019-08-31 16:10:50 +01:00
s_user.c Revert "ircd: Fix umode orphan scheme." 2019-08-31 14:43:34 +01:00
scache.c common.h: raison d'être is gone, so out it goes. 2016-03-23 09:33:56 -05:00
send.c ircd: send tags on every message 2017-08-06 16:21:29 +01:00
snomask.c Remove $Id tags from everything. 2016-03-06 02:47:27 -06:00
sslproc.c librb: remove unnecessary NULL from the end of rb_string_to_array output 2017-07-29 22:46:04 +01:00
substitution.c ircd: substitution: fix buffer overrun if variable name is too long 2017-08-05 11:27:02 +01:00
supported.c supported: fix up CHANTYPES 2016-09-16 14:00:00 -05:00
tgchange.c rename src to ircd, libcore to libircd 2016-01-06 01:16:08 -06:00
version.c.SH version.c.SH: Fix build 2016-04-09 06:05:08 -04:00
whowas.c typedef-ify rb_radixtree for consistency. 2016-03-23 08:32:22 -05:00
wsproc.c remove unused variables 2017-08-04 20:02:20 +01:00