]>
jfr.im git - irc/charybdis-ircd/charybdis.git/log
Aaron Jones [Tue, 28 Jan 2020 20:43:48 +0000 (20:43 +0000)]
extensions/extb_ssl.c: make certfp parameter case-insensitive
I had the idea that maybe these should be case-sensitive because some
encodings (like Base-64) are. But it turns out it's better to
prioritise not breaking existing configurations / channel mode lists,
and just revisit this in future maybe.
[ci skip]
Aaron Jones [Tue, 28 Jan 2020 20:35:16 +0000 (20:35 +0000)]
extensions/extb_ssl.c: clean up this logic
This should also be using strcmp(3), not irccmp().
No practical consequence (yet), it just makes more sense.
Aaron Jones [Sun, 8 Sep 2019 13:57:20 +0000 (13:57 +0000)]
Support ECDH X25519 for TLSv1.3 (OpenSSL 1.1.1)
Aaron Jones [Sat, 31 Aug 2019 19:11:05 +0000 (19:11 +0000)]
Charybdis 3.5.7
Simon Arlott [Sat, 31 Aug 2019 14:06:30 +0000 (15:06 +0100)]
Revert "ircd: Fix umode orphan scheme."
This reverts commit
c1fc044c3594798cc5389486c361a7d9a43bc4f8 .
Simon Arlott [Sat, 8 Jun 2019 21:07:25 +0000 (22:07 +0100)]
m_sasl: Don't process authentication messages if SASL has been aborted
Aaron Jones [Sat, 8 Jun 2019 20:59:36 +0000 (20:59 +0000)]
Revert "m_sasl: Don't process authentication messages if SASL has been aborted"
SASL does not work with this commit in the tree.
This reverts commit
f44a0d7ea219371cf3e85c7efe80b06984795091 .
Simon Arlott [Sat, 23 Feb 2019 13:15:34 +0000 (13:15 +0000)]
m_sasl: Don't process authentication messages if SASL has been aborted
Aaron Jones [Mon, 26 Nov 2018 21:24:34 +0000 (21:24 +0000)]
Merge branch fakelist into release/3.5
Aaron Jones [Mon, 26 Nov 2018 21:22:40 +0000 (21:22 +0000)]
src/newconf.c: fakechannel: guard against repeated config options
Also correct another minor memory leak
ManiacTwister [Mon, 26 Nov 2018 21:10:11 +0000 (22:10 +0100)]
Fixed syntax error
ManiacTwister [Mon, 26 Nov 2018 21:03:42 +0000 (22:03 +0100)]
Initialize fakechan topic to NULL, allocate an empty string if not overridden
ManiacTwister [Mon, 26 Nov 2018 19:13:37 +0000 (20:13 +0100)]
Proper range for fakechannel user count
ManiacTwister [Mon, 26 Nov 2018 19:13:20 +0000 (20:13 +0100)]
Use irccmp instead of strcasecmp for fakechannels
ManiacTwister [Mon, 26 Nov 2018 19:13:00 +0000 (20:13 +0100)]
Disable fakechannels by default
ManiacTwister [Mon, 26 Nov 2018 19:12:44 +0000 (20:12 +0100)]
Fixed fakechannel removal
ManiacTwister [Mon, 26 Nov 2018 19:12:04 +0000 (20:12 +0100)]
Check if users_max is less than users_min
ManiacTwister [Mon, 26 Nov 2018 19:11:37 +0000 (20:11 +0100)]
Allow fakechannels with 0 users
ManiacTwister [Sat, 27 Oct 2018 19:47:25 +0000 (21:47 +0200)]
Added fakechannels to /LIST
Aaron Jones [Sun, 26 Aug 2018 18:50:21 +0000 (18:50 +0000)]
charybdis 3.5.6
Aaron Jones [Sun, 26 Aug 2018 18:50:08 +0000 (18:50 +0000)]
libratbox/src/mbedtls_ratbox.h: remove unnecessary inclusion
Simon Arlott [Wed, 15 Aug 2018 21:44:02 +0000 (22:44 +0100)]
m_nick/m_sasl/m_user: restore check for mixing of client and server protocol
Simon Arlott [Mon, 13 Aug 2018 19:53:04 +0000 (20:53 +0100)]
m_pass: store unverified SID in preClient for use in m_server
Aaron Jones [Mon, 13 Aug 2018 22:34:16 +0000 (22:34 +0000)]
MbedTLS: Support ChaCha20-Poly1305 in TLSv1.2+
Simon Arlott [Sun, 12 Aug 2018 17:57:15 +0000 (18:57 +0100)]
authd: always use an empty buffer to read ident reply
Otherwise we could read uninitialised data beyond the actual reply
Simon Arlott [Sun, 12 Aug 2018 11:16:51 +0000 (12:16 +0100)]
m_sasl: check if the agent is present after every client_exit
When a server disconnects the client_exit hook will only be called once
but there could be multiple servers and clients behind that server.
After any client exits, check if the agent is still present.
Simon Arlott [Sun, 12 Aug 2018 08:40:40 +0000 (09:40 +0100)]
doc: build with travis
Simon Arlott [Sun, 12 Aug 2018 08:37:50 +0000 (09:37 +0100)]
doc: there is no _static directory
Simon Arlott [Sun, 12 Aug 2018 08:25:56 +0000 (09:25 +0100)]
Merge pull request #263 from anarcat/extban-doc
point users towards HELP EXTBAN for inline help
Antoine Beaupré [Thu, 26 Jul 2018 20:39:58 +0000 (16:39 -0400)]
point users towards HELP EXTBAN for inline help
Aaron Jones [Fri, 6 Apr 2018 20:05:48 +0000 (20:05 +0000)]
modules/m_sasl.c: prevent abort_sasl() sending 906 twice
Aaron Jones [Fri, 6 Apr 2018 19:45:50 +0000 (19:45 +0000)]
modules/m_sasl.c: abort session if we receive '*' as data
Otherwise we'd send the * on to services as actual data, which is likely
to fail to decode it (it's not valid Base-64) and reply with an SASL ...
D F which will result in us sending a 904 numeric instead of a 906.
cf. https://github.com/ircv3/ircv3-specifications/pull/298#issuecomment-
271336287
Reported-By: James Wheare
Aaron Jones [Sat, 6 Jan 2018 15:58:30 +0000 (15:58 +0000)]
libratbox/src/mbedtls.c: check public/private keys match
Aaron Jones [Sun, 17 Dec 2017 03:19:52 +0000 (03:19 +0000)]
src/s_user.c: don't send fake MODE for clients who have CHGHOST
Reported-by: Samuel Hoffman <redacted>
Aaron Jones [Sat, 4 Nov 2017 07:40:44 +0000 (07:40 +0000)]
doc/reference.conf: clarify that server link fingerprints aren't optional
[ci skip]
Aaron Jones [Mon, 23 Oct 2017 11:44:04 +0000 (11:44 +0000)]
Update configure from configure.ac
mniip [Mon, 23 Oct 2017 11:20:34 +0000 (14:20 +0300)]
configure.ac: Adjust dlopen/dlsym checks
In modern gcc/clang, libasan (the address sanitizer runtime) exports a
weak definition of `dlopen` so that it can intercept certain flags. If
one tried to `./configure` with address sanitizer enabled, this would
cause AC_SEARCH_LIBS to conclude that dlopen doesn't require any link
flags to use. However libasan does not export `dlsym` and this caused
AC_CHECK_FUNC to fail because it didn't try linking with `-ldl`.
Aaron Jones [Sun, 15 Oct 2017 06:37:04 +0000 (06:37 +0000)]
modules/static_modules.c.SH: use correct header file
Commit
4016731b1cf38951 missed a file.
Reported-by: mniip (Freenode)
[ci skip]
Aaron Jones [Tue, 29 Aug 2017 18:21:56 +0000 (18:21 +0000)]
Merge pull request #247 from anarcat/cmode-help-pointer
point to the CMODE help page for more modes
Antoine Beaupré [Tue, 29 Aug 2017 13:10:37 +0000 (09:10 -0400)]
point to the CMODE help page for more modes
Simon Arlott [Thu, 24 Aug 2017 19:07:31 +0000 (20:07 +0100)]
exit_unknown_client: don't delete servers from the client hash
Outgoing servers are not added to the client hash until they reach
IsServer() status, so if they're unknown when they exit then don't
attempt to delete them.
Simon Arlott [Wed, 9 Aug 2017 21:04:11 +0000 (22:04 +0100)]
m_sasl: indicate client connection type for SASL
Aaron Jones [Tue, 1 Aug 2017 11:48:30 +0000 (11:48 +0000)]
libratbox/src/commio.c: misc cleanups for compiler warnings
commio.c:2244:11: warning: variable length array used [-Wvla]
commio.c:2253:29: warning: comparison of integers of different signs:
'unsigned int' and 'int' [-Wsign-compare]
This use of alloca(3) is okay-ish considering the corresponding function
`rb_recv_fd_buf()` already uses it too, for much the same purpose. Also
remove a redundant return statement.
Simon Arlott [Sat, 29 Jul 2017 22:19:24 +0000 (23:19 +0100)]
modules/core/m_join.c: remove global variable parabuf
Edit by @aaronmdjones: m_join() doesn't need it
Simon Arlott [Sat, 29 Jul 2017 22:15:14 +0000 (23:15 +0100)]
modules/core/m_join.c: remove global variable modebuf
Simon Arlott [Sat, 29 Jul 2017 22:11:36 +0000 (23:11 +0100)]
modules/core/m_join.c: remove global variable para
Simon Arlott [Sat, 29 Jul 2017 22:10:35 +0000 (23:10 +0100)]
modules/core/m_join.c: remove global variable pargs
Simon Arlott [Sat, 29 Jul 2017 22:09:16 +0000 (23:09 +0100)]
modules/core/m_join.c: remove global variable mbuf
Simon Arlott [Sat, 29 Jul 2017 19:35:54 +0000 (20:35 +0100)]
libratbox/src/ratbox_lib.c: avoid clang static analysis warning
Simon Arlott [Sat, 29 Jul 2017 19:29:24 +0000 (20:29 +0100)]
ssld: avoid clang static analysis warning
Don't set `x = 0` twice.
Edit by @aaronmdjones: fix for loop initialisation and inner condition
Simon Arlott [Sat, 29 Jul 2017 18:45:07 +0000 (19:45 +0100)]
ssld: avoid clang static analysis warning
Simon Arlott [Sat, 29 Jul 2017 18:27:19 +0000 (19:27 +0100)]
librb: rb_linebuf_copy_raw: remove unused assignment
Simon Arlott [Sat, 29 Jul 2017 16:39:28 +0000 (17:39 +0100)]
ircd: hostmask: avoid clang static analysis warning
arec->Mask.ipa.bits is unused if arec->masktype == HM_HOST
Simon Arlott [Sat, 29 Jul 2017 20:38:34 +0000 (21:38 +0100)]
libratbox/src/commio.c: Must set addrlen before every call to accept()
If an IPv4 connection is dropped by the pre-callback, and there is a
pending IPv6 connection on the same listening socket then the retried
accept() will be unable to populate `st` because `addrlen` will be too
small. Also initialise `st` each time to avoid a clang static analysis
warning.
Aaron Jones [Tue, 1 Aug 2017 10:19:23 +0000 (10:19 +0000)]
src/hash.c: misc cleanup for compiler warnings
hash.c:714:36: warning: comparison of integers of different signs:
'uint32_t' (aka 'unsigned int') and 'int'
[-Wsign-compare]
(... and 1 more of the same)
Aaron Jones [Mon, 31 Jul 2017 06:34:03 +0000 (06:34 +0000)]
libratbox/src/crypt.c: misc cleanup for compiler warning
crypt.c:1979:7: warning: '_STRING_ARCH_unaligned' is not defined,
evaluates to 0 [-Wundef]
Aaron Jones [Mon, 31 Jul 2017 06:21:44 +0000 (06:21 +0000)]
include/s_user.h: convert raw attribute into already-existing macro call
I overlooked this existing macro when adding this attribute in an earlier
commit.
Aaron Jones [Mon, 31 Jul 2017 06:08:06 +0000 (06:08 +0000)]
modules/core/m_mode.c: misc cleanup for compiler warning
core/m_mode.c:378:11: warning: possible misuse of comma operator here
[-Wcomma]
Aaron Jones [Mon, 31 Jul 2017 06:07:12 +0000 (06:07 +0000)]
extensions/hurt.c: misc cleanups for compiler warnings
hurt.c:196:16: warning: possible misuse of comma operator here [-Wcomma]
(... and 3 more of the same)
Aaron Jones [Mon, 31 Jul 2017 06:05:36 +0000 (06:05 +0000)]
extensions/m_sendbans.c: misc cleanup for compiler warning
m_sendbans.c:76:15: warning: possible misuse of comma operator here
[-Wcomma]
Aaron Jones [Mon, 31 Jul 2017 06:04:31 +0000 (06:04 +0000)]
modules/m_rehash.c: misc cleanups for compiler warnings
m_rehash.c:380:17: warning: possible misuse of comma operator here
[-Wcomma]
(... and 3 more of the same)
Aaron Jones [Mon, 31 Jul 2017 06:02:55 +0000 (06:02 +0000)]
src/supported.c: misc cleanups for compiler warnings
supported.c:172:22: warning: possible misuse of comma operator here
[-Wcomma]
(... and 4 more of the same)
Aaron Jones [Mon, 31 Jul 2017 06:00:18 +0000 (06:00 +0000)]
src/chmode.c: misc cleanups for compiler warnings
chmode.c:417:12: warning: possible misuse of comma operator here
[-Wcomma]
(... and 12 more of the same)
Aaron Jones [Mon, 31 Jul 2017 05:54:10 +0000 (05:54 +0000)]
libratbox/src/commio.c: misc cleanup for compiler warning
commio.c:1269:17: warning: possible misuse of comma operator here
[-Wcomma]
What an ugly way to use commas!
Aaron Jones [Mon, 31 Jul 2017 05:48:14 +0000 (05:48 +0000)]
lots of misc cleanups for compiler warnings
ratbox_lib.c:159:1: warning: function 'rb_lib_restart' could be declared
with attribute 'noreturn' [-Wmissing-noreturn]
ratbox_lib.c:220:1: warning: function 'rb_lib_loop' could be declared
with attribute 'noreturn' [-Wmissing-noreturn]
restart.c:55:1: warning: function 'server_reboot' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 05:34:32 +0000 (05:34 +0000)]
src/ircd_signal.c: misc cleanup for compiler warning
ircd_signal.c:59:1: warning: function 'sigterm_handler' could be declared
with attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 05:33:23 +0000 (05:33 +0000)]
rb_helper: misc cleanups for compiler warning
helper.c:291:1: warning: function 'rb_helper_loop' could be declared
with attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 05:17:10 +0000 (05:17 +0000)]
getopt: misc cleanups for compiler warning
getopt.c:124:1: warning: function 'usage' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 05:14:15 +0000 (05:14 +0000)]
src/bandbi.c: misc cleanup for compiler warning
bandbi.c:389:1: warning: function 'bandb_handle_failure' could be
declared with attribute 'noreturn'
[-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 05:12:30 +0000 (05:12 +0000)]
libratbox/src/balloc.c: misc cleanup for compiler warning
balloc.c:111:1: warning: function '_rb_bh_fail' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 04:50:30 +0000 (04:50 +0000)]
modules/core/m_server.c: misc cleanup for compiler warnings
core/m_server.c:138:3: warning: 'break' will never be executed
[-Wunreachable-code-break]
(... and 3 more of the same)
Why put an unreachable comment in the code *and then write a
statement following it* ? O_o
Aaron Jones [Mon, 31 Jul 2017 04:48:37 +0000 (04:48 +0000)]
modules/core/m_die.c: misc cleanup for compiler warning
core/m_die.c:76:9: warning: 'return' will never be executed
[-Wunreachable-code-return]
Aaron Jones [Mon, 31 Jul 2017 04:46:33 +0000 (04:46 +0000)]
modules/m_whois.c: misc cleanup for compiler warning
m_whois.c:331:8: warning: declaration shadows a local variable [-Wshadow]
Aaron Jones [Mon, 31 Jul 2017 04:39:13 +0000 (04:39 +0000)]
include/s_user.h: misc cleanup for compiler warning
s_user.c:1428:26: warning: format string is not a string literal
[-Wformat-nonliteral]
Adding the printf attribute to the function will make the compiler
assume that the 'format' argument to the function is a string
literal (by warning about the *callers* of the function *not* using
a string literal), thus avoiding the warning in the function.
Aaron Jones [Mon, 31 Jul 2017 04:34:49 +0000 (04:34 +0000)]
src/res.c: misc cleanup for compiler warnings
res.c:704:6: warning: 'break' will never be executed
[-Wunreachable-code-break]
(... and 2 more of the same)
Aaron Jones [Mon, 31 Jul 2017 04:33:15 +0000 (04:33 +0000)]
libratbox/src/commio.c: misc cleanup for compiler warnings
commio.c:1368:3: warning: 'break' will never be executed
[-Wunreachable-code-break]
(... and 2 more of the same)
Aaron Jones [Mon, 31 Jul 2017 04:30:56 +0000 (04:30 +0000)]
src/chmode.c: misc cleanup for compiler warning
chmode.c:782:3: warning: 'break' will never be executed
[-Wunreachable-code-break]
Aaron Jones [Mon, 31 Jul 2017 04:28:16 +0000 (04:28 +0000)]
src/modules.c: misc cleanup for compiler warnings
modules.c:799:37: warning: cast from function call of type 'void *' to
non-matching type 'uintptr_t' (aka 'unsigned long')
[-Wbad-function-cast]
(... and 1 more of the same)
Redundant double-cast removed.
Aaron Jones [Mon, 31 Jul 2017 04:26:48 +0000 (04:26 +0000)]
libratbox/src/openssl_ratbox.h: misc cleanup for compiler warning
openssl.c:459:47: warning: cast from 'const char *' to 'char *' drops
const qualifier [-Wcast-qual]
(I find it remarkable that SSL_CTX_set1_curves_list() does not accept a
'const char *' argument...)
Aaron Jones [Mon, 31 Jul 2017 04:16:54 +0000 (04:16 +0000)]
modules/m_stats.c: misc cleanup for compiler warnings
m_stats.c:181:22: warning: this function declaration is not a prototype
[-Wstrict-prototypes]
m_stats.c:1502:24: warning: format string is not a string literal
[-Wformat-nonliteral]
(... and 2 more of the same)
Aaron Jones [Mon, 31 Jul 2017 01:55:24 +0000 (01:55 +0000)]
tools/mkpasswd.c: misc cleanup for compiler warnings
mkpasswd.c:516:1: warning: function 'full_usage' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
mkpasswd.c:537:1: warning: function 'brief_usage' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 01:31:38 +0000 (01:31 +0000)]
libratbox/src/crypt.c: misc cleanup for compiler warnings
crypt.c:49:4: warning: 'break' will never be executed
[-Wunreachable-code-break]
(... and 3 more of the same)
crypt.c:627:7: warning: variable 'f' may be uninitialized when used
here [-Wconditional-uninitialized]
crypt.c:539:12: note: initialize the variable 'f' to silence this
warning
Aaron Jones [Mon, 31 Jul 2017 01:21:58 +0000 (01:21 +0000)]
ssld/ssld.c: misc cleanup for compiler warning
ssld.c:1251:14: warning: signed shift result (0x80000000) sets the sign
bit of the shift expression's type ('int') and becomes
negative [-Wshift-sign-overflow]
Aaron Jones [Mon, 31 Jul 2017 01:20:04 +0000 (01:20 +0000)]
bandb/bantool.c: misc cleanup for compiler warning
bantool.c:149:4: warning: 'break' will never be executed
[-Wunreachable-code-break]
Aaron Jones [Mon, 31 Jul 2017 01:09:52 +0000 (01:09 +0000)]
ircd: misc cleanup for compiler warnings
ircd.c:125:1: warning: function 'ircd_shutdown' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
ircd.c:437:1: warning: function 'ircd_die_cb' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
Aaron Jones [Mon, 31 Jul 2017 01:01:22 +0000 (01:01 +0000)]
bandb/bandb.c: misc cleanup for compiler warnings
bandb.c:243:1: warning: function 'error_cb' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
bandb.c:289:1: warning: function 'db_error_cb' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
bandb.c:293:13: warning: signed shift result (0x80000000) sets the sign
bit of the shift expression's type ('int') and becomes
negative [-Wshift-sign-overflow]
Aaron Jones [Mon, 31 Jul 2017 00:57:33 +0000 (00:57 +0000)]
bandb/bantool.c: misc cleanup for compiler warning
bantool.c:872:1: warning: function 'print_help' could be declared with
attribute 'noreturn' [-Wmissing-noreturn]
Simon Arlott [Tue, 1 Aug 2017 21:42:56 +0000 (22:42 +0100)]
m_webirc: set sockhost before potentially using it to set host
Remove extra IP check, it's not necessary.
Simon Arlott [Fri, 28 Jul 2017 20:28:44 +0000 (21:28 +0100)]
sslproc: check number of arguments to zipstats command
Aaron Jones [Wed, 5 Jul 2017 17:35:28 +0000 (17:35 +0000)]
src/channel.c: don't use the bancache in is_banned()/is_quieted()
The bancache will be re-architected onto clients in future for easier
invalidation, but this is a good-enough temporary fix for issue #243
Fixes #243
Aaron Jones [Mon, 3 Jul 2017 00:12:47 +0000 (00:12 +0000)]
mbedtls.c: minor fixups
- Add (void) casts for unused function parameters
- Rearrange member in `struct rb_mbedtls_cfg_context' for data alignment
- Document a `clang-4.0 -Weverything' (-Wcast-qual) diagnostic
- Avoid pointless conversions between positive/negative error codes
- Use capital hexadecimals in error codes and properly cast to
(unsigned int) for %x/%X
Simon Arlott [Tue, 27 Jun 2017 19:45:02 +0000 (20:45 +0100)]
m_webirc: use rb_inet_ntop_sock to populate sockhost
Simon Arlott [Sun, 25 Jun 2017 18:48:49 +0000 (19:48 +0100)]
ircd: s_conf: fix use of strlcpy in strip_tabs
strlcpy should be called with the size of the destination buffer, not
the length of the source string.
When the source is an empty string, the destination buffer isn't
written at all, resulting in it trying to output uninitialised data.
This could also cause a buffer overflow on very long invalid config
lines.
Aaron Jones [Fri, 23 Jun 2017 05:55:48 +0000 (05:55 +0000)]
configure: allow exact PID file prefix to be specified
Aaron Jones [Thu, 22 Jun 2017 11:12:21 +0000 (11:12 +0000)]
MbedTLS: Don't use a dummy CA certificate on new library (no longer required)
Ellenor Malik [Fri, 16 Jun 2017 01:48:30 +0000 (01:48 +0000)]
extensions/extb_ssl.c: add support for matching by certificate fingerprint
Aaron Jones [Mon, 12 Jun 2017 17:00:14 +0000 (17:00 +0000)]
README.md: Update channel
The domain expired and then someone else seems to have reacquired it,
so point users back at Freenode for now as recovery is unlikely.
Aaron Jones [Sat, 25 Mar 2017 16:49:08 +0000 (16:49 +0000)]
Merge pull request #241 from anarcat/rst-guide
Antoine Beaupré [Sat, 25 Mar 2017 16:35:29 +0000 (12:35 -0400)]
fix more headings
Antoine Beaupré [Sat, 25 Mar 2017 16:33:06 +0000 (12:33 -0400)]
fix two headings to be toplevel