]>
jfr.im git - solanum.git/log
Ed Kellett [Sun, 11 Apr 2021 22:25:49 +0000 (23:25 +0100)]
m_whois: put opername/privset in RPL_WHOISOPERATOR
Show just the opername if you're an oper the target is not hidden from
and you don't have oper:privs.
close #100
Ed Kellett [Mon, 12 Apr 2021 09:59:01 +0000 (10:59 +0100)]
Allow privset-less OPER bursting
Ed Kellett [Sun, 11 Apr 2021 22:55:38 +0000 (23:55 +0100)]
m_oper: receive ircd-seven-style opernames
megubyte [Sat, 5 Jun 2021 14:57:03 +0000 (14:57 +0000)]
m_invite: send message tags (#173)
Aaron Jones [Thu, 3 Jun 2021 01:19:11 +0000 (01:19 +0000)]
GitHub CI: Ignore more text file updates
NetSysFire [Tue, 1 Jun 2021 16:42:44 +0000 (18:42 +0200)]
Improve README.md
Some minor changes, mostly more consistent use of monospace, more convenient links to mentioned files, consistent captialization of Solanum.
jailbird777 [Wed, 2 Jun 2021 03:34:44 +0000 (22:34 -0500)]
librb mbedTLS: der_pubkey is used out of scope
Ariadne Conill [Tue, 1 Jun 2021 16:40:02 +0000 (11:40 -0500)]
Mailmap and copyright update for Ariadne
Doug Freed [Sun, 30 May 2021 21:13:20 +0000 (17:13 -0400)]
CREDITS: update IRC channel for network move
mniip [Wed, 26 May 2021 22:18:29 +0000 (01:18 +0300)]
Fix time.h in librb autoconf
Ariadne Conill [Sun, 30 May 2021 03:32:44 +0000 (21:32 -0600)]
librb: radixtree: fix iteration restarting
STATE_CUR(state) = NULL causes rb_radixtree_foreach_next() to fail,
instead set both state pointers to the same address.
Mike Quin [Fri, 28 May 2021 23:41:25 +0000 (00:41 +0100)]
Use plain language in +r/+R error messages (#169)
Doug Freed [Thu, 27 May 2021 20:01:24 +0000 (15:01 -0500)]
README: change IRC network (#172)
Sadie Powell [Tue, 25 May 2021 10:08:59 +0000 (11:08 +0100)]
Remove the CLIENTVER 005 token. (#161)
This was introduced in commit
bde6442c47 but the rationale for it is
pretty shaky. No other non-Charybdis-derived servers send it and the
features the original commit claims it can be used to detect all have
their own methods of detection. The concept of "core capabilities" and
versioned releases was also dropped by IRCv3 many years ago in favour
of living specifications.
Mike Quin [Sat, 22 May 2021 22:52:07 +0000 (23:52 +0100)]
Document +u in umode and cmode help
Ed Kellett [Tue, 27 Apr 2021 13:45:04 +0000 (14:45 +0100)]
Allow temporary K-lines to extend shorter ones (#142)
* Temp K-lines may extend shorter temp K-lines
* /unkline removes multiple matching K-lines
* K-lines remove any temp K-lines they're replacing
Ed Kellett [Sat, 24 Apr 2021 11:47:27 +0000 (12:47 +0100)]
Remove $x's magical powers
Ed Kellett [Sat, 24 Apr 2021 11:15:20 +0000 (12:15 +0100)]
Add channel::ip_bans_through_vhost
Ed Kellett [Mon, 26 Apr 2021 16:31:26 +0000 (17:31 +0100)]
Remove redundant param to update_session_deadline
Ed Kellett [Mon, 26 Apr 2021 00:26:43 +0000 (01:26 +0100)]
Manage override sessions properly
jess [Mon, 26 Apr 2021 16:24:36 +0000 (17:24 +0100)]
add separate priv (oper:message) for walking over CALLERID (umode +g) (#152)
Ed Kellett [Tue, 20 Apr 2021 11:22:50 +0000 (12:22 +0100)]
Add an s2s cap for ECHO (#141)
Ed Kellett [Sat, 17 Apr 2021 18:48:53 +0000 (19:48 +0100)]
Reword ERR_ALREADYREGISTERED (#145)
Ed Kellett [Sat, 17 Apr 2021 18:43:59 +0000 (19:43 +0100)]
channel: flood warnings for privmsg, not notice (#147)
David Schultz [Sat, 10 Apr 2021 14:19:27 +0000 (09:19 -0500)]
make VERSION not include sid (#118)
jesopo [Sat, 13 Feb 2021 19:01:39 +0000 (19:01 +0000)]
send account-notify messages to subject connection too
jesopo [Mon, 5 Apr 2021 11:34:34 +0000 (11:34 +0000)]
"KDX-Line active for" is now L_NETWIDE, so remove sno_globalkline
jesopo [Sun, 4 Apr 2021 19:24:26 +0000 (19:24 +0000)]
switch "KDX-Line active for" snote to L_NETWIDE and include which mask
caused it
Ed Kellett [Fri, 9 Apr 2021 20:01:11 +0000 (21:01 +0100)]
Make show_ip not care about remoteness (#139)
Eric Mertens [Wed, 17 Mar 2021 00:51:42 +0000 (17:51 -0700)]
A missing colon to RPL_MAP recently split (#131)
Ed Kellett [Sun, 28 Feb 2021 11:41:08 +0000 (11:41 +0000)]
privilegeset_add_privs: append rather than replace
Ed Kellett [Sun, 14 Feb 2021 00:31:43 +0000 (00:31 +0000)]
Make privilegeset_privs more const
Ed Kellett [Sun, 14 Feb 2021 00:28:22 +0000 (00:28 +0000)]
privilegeset_diff: return things in a struct
Ed Kellett [Fri, 29 Jan 2021 13:13:53 +0000 (13:13 +0000)]
privilege: factor out a null check
Ed Kellett [Fri, 29 Jan 2021 12:54:37 +0000 (12:54 +0000)]
Use bsearch to check privset membership
I don't really care if it's faster, I just prefer it
Ed Kellett [Fri, 29 Jan 2021 11:55:06 +0000 (11:55 +0000)]
Add tests for privsets
Ed Kellett [Fri, 29 Jan 2021 11:54:12 +0000 (11:54 +0000)]
Track and inform modules of privset changes
Aaron Jones [Mon, 1 Feb 2021 15:51:59 +0000 (15:51 +0000)]
doc/reference.conf: add an example TLSv1.3 ciphersuite name
[ci skip]
Aaron Jones [Mon, 1 Feb 2021 08:35:44 +0000 (08:35 +0000)]
OpenSSL: Support configuration of TLSv1.3 ciphersuites
The OpenSSL developers decided, during the OpenSSL 1.1.1 development
phase, to use a different API and different set of lists for TLSv1.3
ciphersuites, than for every TLS version preceeding it.
This is stupid, but we have to work with it.
This commit also improves configuration fault resilience. The reason
is that if you don't pass any valid old-style ciphersuites, OpenSSL
will not negotiate an older protocol at all. However, when they
implemented the new API, they decided that lack of any valid
ciphersuites should result in using the defaults. This means that if
you pass a completely invalid ciphersuite list (like "foo"), OR if
you pass a TLSv1.2-only ciphersuite list, TLSv1.3 continues to work.
This is not mirrored; passing a TLSv1.3-only ciphersuite list will
break TLSv1.2 and below.
Therefore we work around this lack of mirroring by falling back to
the default list for each protocol. This means that if
ssl_cipher_list is complete garbage, the default will be used, and
TLS setup will succeed for both protocols. This is logged, so that
administrators can fix their configuration.
I prefer this approach over explicitly disabling the protocols if
their respective ciphersuite lists are invalid, because it will
result in unusable TLSv1.3 if people run newer solanum with their
older charybdis/solanum configuration files that contain custom
ssl_cipher_list definitions. Hindering TLSv1.3 adoption is not an
option, in my opinion.
The downside of this is that it is no longer possible to disable a
protocol family by not including any of its ciphersuites. This could
be remedied by an ssl_protocol_list configuration directive if it is
decided that this functionality is ultimately necessary.
This work is not required for either of the other TLS backends,
because neither of those libraries yet support TLSv1.3, and in the
event that they eventually do, I expect them to allow configuration
of newer ciphersuites with the existing APIs. This can be revisited
if it turns out not to be the case.
Signed-off-by: Aaron Jones <redacted>
Tested-by: Aaron Jones <redacted>
Taavi Väänänen [Thu, 28 Jan 2021 14:14:40 +0000 (16:14 +0200)]
doc: Change missed chadybdis name to solanum (#111)
Looks like this was missed in
a6f63a8 .
Taavi Väänänen [Thu, 28 Jan 2021 14:09:31 +0000 (16:09 +0200)]
wallops: require new oper:wallops right (#110)
Split oper:wallops right from oper:mass_notice. Update documentation and
examples to grant oper:wallops everywhere oper:mass_notice was granted.
closes #103
Ed Kellett [Tue, 26 Jan 2021 11:22:39 +0000 (11:22 +0000)]
chmode: centralise + test mode limits (#94)
Doug Freed [Sun, 13 Dec 2020 08:42:03 +0000 (08:42 +0000)]
wsproc: call rb_clear_cloexec on child fds
Doug Freed [Sun, 13 Dec 2020 08:41:46 +0000 (08:41 +0000)]
sslproc: call rb_clear_cloexec on child fds
Doug Freed [Sun, 13 Dec 2020 08:41:13 +0000 (08:41 +0000)]
librb/helper: call rb_clear_cloexec on child fds
Doug Freed [Sun, 13 Dec 2020 08:39:29 +0000 (08:39 +0000)]
librb: call rb_set_cloexec in rb_setup_fd
Doug Freed [Sun, 13 Dec 2020 08:38:25 +0000 (08:38 +0000)]
librb: add rb_{set,clear}_cloexec
Doug Freed [Thu, 17 Dec 2020 17:02:36 +0000 (17:02 +0000)]
CI: test on gcc-10 too
jess [Mon, 25 Jan 2021 05:00:34 +0000 (05:00 +0000)]
/accept list should track nick changes when you share channels (#96)
* move has_common_channel to s_user.c
* don't remove clients from /accept on NICK when there's a common channel
Co-authored-by: Ed Kellett <redacted>
Eric Mertens [Sun, 24 Jan 2021 13:13:03 +0000 (05:13 -0800)]
Add +R channel mode module requiring services account to chat (#102)
* Add +R channel mode module requiring services account to chat
* Use void* in hook argument
* move chm_regmsg from modules to extensions
* generate error message when module fails to load
Doug Freed [Sat, 12 Dec 2020 09:09:11 +0000 (09:09 +0000)]
README: update build statusbadge to use GH Actions
Doug Freed [Sat, 12 Dec 2020 09:03:22 +0000 (09:03 +0000)]
Kill appveyor too
[ci skip]
Doug Freed [Sat, 12 Dec 2020 08:39:26 +0000 (03:39 -0500)]
Oper-guide workflow for Github Actions
Doug Freed [Sat, 12 Dec 2020 08:34:12 +0000 (03:34 -0500)]
Kill Travis
Doug Freed [Sat, 12 Dec 2020 08:33:09 +0000 (03:33 -0500)]
Start CI configuration for Github Actions
Ed Kellett [Mon, 30 Nov 2020 09:24:32 +0000 (09:24 +0000)]
chmode: end the grace period more intelligently (#84)
We were ending the flood grace period for any channel mode command other
than `MODE #foo [bq]` by means of a hardcoded check. I've moved that to
after we parse the mode string, so we can correctly identify all
requests to change modes and end the grace period on exactly those.
It would have been entirely possible to move the check even further down
and flood_endgrace on only mode commands that *actually* change modes,
but I don't like the idea of making it sensitive to external conditions.
Doug Freed [Sun, 29 Nov 2020 01:03:29 +0000 (20:03 -0500)]
send: fix infinite recursion in _send_linebuf
A netwide snote eventually calls into this function again with the same
server as has already been determined is over its sendq. Mark the link
dead before sending the snote to avoid infinite recursion.
Doug Freed [Mon, 23 Nov 2020 03:12:36 +0000 (03:12 +0000)]
bandb: remove embedded sqlite
jesopo [Mon, 23 Nov 2020 15:12:14 +0000 (15:12 +0000)]
fix broken atheme link in README.md
Doug Freed [Sun, 22 Nov 2020 22:24:27 +0000 (22:24 +0000)]
extensions: remove m_roleplay
Doug Freed [Thu, 19 Nov 2020 19:19:14 +0000 (14:19 -0500)]
m_challenge: various fixes
jess [Wed, 18 Nov 2020 14:29:08 +0000 (14:29 +0000)]
add ConfigFileEntry.oper_secure_only, to require TLS to oper up (#76)
Ed Kellett [Sat, 14 Nov 2020 18:00:20 +0000 (18:00 +0000)]
Get rid of hub_mask/leaf_mask
Ed Kellett [Fri, 13 Nov 2020 22:47:09 +0000 (22:47 +0000)]
Use opernames not servernames for remote opers
Doug Freed [Sun, 8 Nov 2020 18:33:45 +0000 (18:33 +0000)]
s_serv: refactor burst_modes_TS6 to use multiline
Doug Freed [Sun, 8 Nov 2020 17:28:29 +0000 (17:28 +0000)]
m_findforwards: refactor to use multiline
Fixes #57
Doug Freed [Sun, 8 Nov 2020 16:17:52 +0000 (16:17 +0000)]
m_monitor: refactor to use multiline
Doug Freed [Sun, 8 Nov 2020 01:44:10 +0000 (01:44 +0000)]
m_privs: refactor to use multiline
Doug Freed [Sun, 8 Nov 2020 00:39:11 +0000 (00:39 +0000)]
m_whois: refactor channel list to use multiline
Doug Freed [Fri, 6 Nov 2020 23:44:57 +0000 (23:44 +0000)]
names: refactor to use multiline
Doug Freed [Fri, 6 Nov 2020 22:30:45 +0000 (22:30 +0000)]
m_cap: refactor clicap_generate to use multiline
Ed Kellett [Mon, 9 Nov 2020 00:16:52 +0000 (00:16 +0000)]
Add some tests for multiline
Doug Freed [Fri, 6 Nov 2020 19:03:59 +0000 (19:03 +0000)]
send: add sendto_one_multiline_* API
Allows simplifying multiline wrapping for multiple usages, like CAP
LS/LIST, NAMES, and WHOIS channel listing
jesopo [Thu, 12 Nov 2020 21:10:08 +0000 (21:10 +0000)]
iter lists backwards when sending BMASK
Ed Kellett [Wed, 11 Nov 2020 22:14:12 +0000 (22:14 +0000)]
Update .gitignore for
25d169b649 (#69)
Ed Kellett [Mon, 9 Nov 2020 21:53:53 +0000 (21:53 +0000)]
Remove *.la from install/lib
Co-authored-by: Unit 193 <redacted>
Ed Kellett [Mon, 9 Nov 2020 21:53:44 +0000 (21:53 +0000)]
Don't reassign logdir
Co-authored-by: Unit 193 <redacted>
Ed Kellett [Mon, 9 Nov 2020 21:17:00 +0000 (21:17 +0000)]
tests: clean *.db, *.log
Co-authored-by: Unit 193 <redacted>
Ed Kellett [Mon, 9 Nov 2020 21:16:45 +0000 (21:16 +0000)]
help: cleanup indexes properly
Co-authored-by: Unit 193 <redacted>
Ed Kellett [Mon, 9 Nov 2020 21:08:56 +0000 (21:08 +0000)]
readme: add building instructions
Ed Kellett [Mon, 9 Nov 2020 18:29:54 +0000 (18:29 +0000)]
Forget the old drain reason when rehashing
Ed Kellett [Mon, 9 Nov 2020 14:50:08 +0000 (14:50 +0000)]
m_info: Add some missing things
Ed Kellett [Sun, 8 Nov 2020 20:37:24 +0000 (20:37 +0000)]
Autogenerate tests/runtime/modules
Ed Kellett [Sun, 8 Nov 2020 14:30:36 +0000 (14:30 +0000)]
tests: autogenerate TESTS
Ed Kellett [Sun, 8 Nov 2020 14:29:30 +0000 (14:29 +0000)]
tests: cleanup .gitignore
Ed Kellett [Sat, 7 Nov 2020 23:48:04 +0000 (23:48 +0000)]
tests: implicitly link *_util.c into every test
Eric Mertens [Mon, 9 Nov 2020 02:51:27 +0000 (18:51 -0800)]
Rename bantool to solanum-bantool (#64)
Rename bantool to solanum-bantool
Ed Kellett [Mon, 9 Nov 2020 00:55:26 +0000 (00:55 +0000)]
m_info: string constness
Ed Kellett [Sun, 8 Nov 2020 21:15:20 +0000 (21:15 +0000)]
m_info: remove repetition
Ed Kellett [Sun, 8 Nov 2020 21:09:15 +0000 (21:09 +0000)]
m_info: be type-safe, somewhat enforced by macros
Ed Kellett [Sun, 8 Nov 2020 19:11:54 +0000 (19:11 +0000)]
Remove some unnecessary commenty things
Ed Kellett [Sun, 8 Nov 2020 23:29:56 +0000 (23:29 +0000)]
Add /stats s to list secure blocks
`s` and `S` were both used for ssld stats, but only `S` was documented,
so I'm taking `s`. You can't stop me!
Ed Kellett [Sun, 8 Nov 2020 17:40:01 +0000 (17:40 +0000)]
Document general::stats_l_oper_only
Ed Kellett [Sun, 8 Nov 2020 17:37:52 +0000 (17:37 +0000)]
Add general::stats_l_oper_only
jess [Sun, 8 Nov 2020 19:30:41 +0000 (19:30 +0000)]
make more snotes L_NETWIDE
Eric Mertens [Sun, 8 Nov 2020 17:50:17 +0000 (09:50 -0800)]
Stop using chm_nosuch as a sentinel value (#53)
Remove chmode compat modules
This removes the need for chm_nosuch as well. Unknown mode detection happens in mode parsing now.
Ed Kellett [Sun, 8 Nov 2020 03:52:18 +0000 (03:52 +0000)]
Document general::hidden_caps
Ed Kellett [Sun, 8 Nov 2020 00:25:54 +0000 (00:25 +0000)]
Add general::hidden_caps
Eric Mertens [Sun, 8 Nov 2020 03:54:25 +0000 (19:54 -0800)]
Resolve shfit/reduce conflict in timespec production (#54)
Resolve shfit/reduce conflict in timespec production (no operational change)
Eric Mertens [Sun, 8 Nov 2020 00:45:12 +0000 (16:45 -0800)]
Clean up duplication in ChannelModeFunc prototypes (#52)