Bram Matthys
7ac11973d0
Fix crash in TOPIC with certain remote server traffic.
...
And make sure we don't change topic text if it comes from a remote link.
2019-07-06 17:48:44 +02:00
Bram Matthys
74325280dd
Due to new defaults, the baseline for the SSL/TLS changed as well.
2019-07-01 07:45:48 +02:00
Bram Matthys
74cf811759
Failed to initialize a variable in changes last week.
...
Not caught by tests due to lack of -O2, we should add a buildbot for that..
2019-07-01 07:40:49 +02:00
Bram Matthys
fea09b6659
Switch from RSA 4096 to ECC secp384r1
2019-06-30 10:53:58 +02:00
Bram Matthys
d3d9b499a7
Move src/ssl.cnf -> extras/ssl.cnf
...
[skip ci]
2019-06-30 10:25:19 +02:00
Bram Matthys
e90f6e0446
Remove 'make encpem'. Nobody uses this as it would mean you always need
...
to enter the private key password when UnrealIRCd is (re)started.
Similarly, remove all references to it on Windows as well, where people
thought clicking "Encrypt private key" was a good idea. Can't blame them,
it sounds good on first sight :D
[skip ci]
2019-06-30 10:23:15 +02:00
Bram Matthys
696c06b6a6
Load authprompt module by default.
2019-06-29 19:17:52 +02:00
Bram Matthys
f0f69bfe48
Change set::ident::read-timeout from 30 to 15 seconds since otherwise
...
it exceeds set::handshake-timeout which would be very unfortunate for
those (few) poor users that are affected by this.
2019-06-29 18:51:02 +02:00
Bram Matthys
60a89b8c3f
Change set::outdated-tls-policy::server and ::oper to deny.
...
Both servers and IRCOps must not use outdated SSL/TLS protocols or ciphers.
2019-06-29 18:34:27 +02:00
Bram Matthys
94faf02c70
Change set::plaintext-policy::oper to deny. IRCOps really must use SSL/TLS.
2019-06-29 18:31:37 +02:00
Bram Matthys
375b03c132
Fix (just created) bug in extcmode unloading (with param).
...
Update slot/param mapping. Now unloading should work well...
otherwise it crashed after destroying the channel.
2019-06-29 09:51:23 +02:00
Bram Matthys
bbbdba1083
Make chanmodes/link module un-PERM. Thanks due to previous change.
2019-06-29 09:11:20 +02:00
Bram Matthys
b605b7fd86
Use delayed module unloading not only for modules with moddata but also
...
for modules which have extended channelmodes with parameters,
since they have the same problem.
2019-06-29 09:10:18 +02:00
Bram Matthys
96ad3e8f71
Nothing special. Add a comment to blacklist module, in case someone
...
things it would be wise to make it unPERM ;)
[skip ci]
2019-06-29 08:55:36 +02:00
Bram Matthys
5d6f0a79ad
Make jumpserver module non-PERM, thanks to LoadPersistentPointer etc.
2019-06-29 08:52:52 +02:00
Bram Matthys
fbf4946777
Update tkldb to use new LoadPersistentInt/SavePersistentInt functions.
...
And before that, I fixed these functions so they actually work :D
2019-06-29 08:44:12 +02:00
i
e03fa760ef
update makefile.win32 for extbans/partmsg
2019-06-29 00:53:41 +03:00
i
780d9e95a2
extbans/partmsg: remove unused leftovers
2019-06-29 00:41:23 +03:00
i
7c4bd691fe
fix modules.default loadmodule directive for partmsg
2019-06-29 00:39:23 +03:00
i
cf3d01da06
extban ~p for hiding part/quit message
2019-06-29 00:30:10 +03:00
Bram Matthys
5182c664d1
Easier API for just-commited persistent variables. Example:
...
LoadPersistentPointer(modinfo, removefld_list, floodprot_free_removefld_list);
SavePersistentPointer(modinfo, removefld_list);
The above example was for a pointer, there are also functions for int and long,
which are even more simple:
LoadPersistentInt(modinfo, somevar)
SavePersistentInt(modinfo, somevar)
and
LoadPersistentLong(modinfo, somevar)
SavePersistentLong(modinfo, somevar)
both are untested, but will be tested soon...
2019-06-28 22:08:45 +02:00
Bram Matthys
0920967cc4
New module_load_variable / module_save_variable functions
...
and made floodprot to use these functions.
TODO: 1) Different functions for pointer/int/long, 2) macro?
2019-06-28 21:02:29 +02:00
Bram Matthys
c720417487
MOD_UNLOAD() was always called with an invalid modinfo argument.
2019-06-28 21:01:43 +02:00
Bram Matthys
7fe1848340
Make floodprot no longer PERM so it can be reloaded. Useful if we ever
...
make a mistake in the module so we can upgrade it on-the-fly.
Or if someone wants to get rid of it.
TODO: consider abstracting the saving/restoring of vars.
2019-06-28 20:14:32 +02:00
Bram Matthys
8686bf978e
Support for unloading channel modes with parameters (w/o MOD_OPT_PERM)
2019-06-28 20:07:21 +02:00
Bram Matthys
1757abf31a
Duh..
2019-06-28 19:16:21 +02:00
Bram Matthys
1f5acd852b
Update tkldb to use (new) MODDATATYPE_LOCALVAR.
2019-06-28 19:11:34 +02:00
Bram Matthys
2a7fc8042d
Add new moddata types: MODDATA_LOCALVAR and MODDATA_GLOBALVAR. Untested.
...
Code using it will soon follow (and then it will be tested :D)
2019-06-28 18:35:37 +02:00
Bram Matthys
38e9c100d4
Get rid of include/threads.h (unused)
2019-06-26 17:27:45 +02:00
Bram Matthys
a2510a5dca
Delete sock.h, isn't even used anymore.
...
[skip ci]
2019-06-26 17:25:34 +02:00
Bram Matthys
70cca778cd
Test compile w/o sock.h
2019-06-26 17:19:10 +02:00
Bram Matthys
c673e5bbc6
Get rid of now meaningless include/hash.h
2019-06-26 17:17:20 +02:00
Bram Matthys
8e44d4d5ab
Get rid of weird NullChn, which is now just NULL :D
2019-06-26 17:13:45 +02:00
Bram Matthys
ded4a65a60
u_int16_t -> uint16_t and u_int32_t -> uint32_t, remove typedefs for
...
these types and others, that should no longer be needed thanks to
stdint.h.
2019-06-26 17:06:46 +02:00
Bram Matthys
e8f336622a
u_int64_t -> uint64_t
2019-06-26 17:03:07 +02:00
Bram Matthys
709c84fff9
Remove stupid hash table layer for channels that only eats 256k+ extra
...
memory and causes unnecessary slowdown. Stupid ->hits and ->links.
And get rid of "return (xyz)", must be "return xyz" :D
2019-06-26 16:56:17 +02:00
Bram Matthys
f1b0b6b76e
Make throttling code (connect-flood) use SipHash and increase the
...
hash table size from 1019 to 8192 to have fewer collisions.
2019-06-26 16:46:28 +02:00
Bram Matthys
d5395848b7
Double the size of hash tables to reduce collisions.
2019-06-26 16:16:56 +02:00
Bram Matthys
c75a1ebb25
Make src/modules/history_backend_mem.c use SipHash. And also,
...
make the module permanent.. which is probably a good idea :D
2019-06-26 15:49:54 +02:00
Bram Matthys
d2f4f53a4a
Document functions in src/random.c
2019-06-26 15:41:47 +02:00
Bram Matthys
000fa08aee
Remove FIXME. As there's no need to fix that.
...
[skip ci]
2019-06-26 15:38:57 +02:00
Bram Matthys
12511940d6
src/random.c: remove rs_stir_pid, since we don't fork anyway.
...
(or at least not in a way that matters...)
2019-06-26 15:12:43 +02:00
Bram Matthys
a843567b70
Update src/random.c to use the ChaCha based random generator.
2019-06-26 15:02:25 +02:00
Bram Matthys
0d7f9e219e
Update reputation module to use SipHash
2019-06-26 14:13:12 +02:00
Bram Matthys
eafd929e24
Update DNS code to use SipHash
2019-06-26 14:08:03 +02:00
Bram Matthys
703be7eb29
Move some functions from parse.c to hash.c and add documentation
...
for various functions, such as find_person, find_client, etc.
2019-06-26 13:57:06 +02:00
Bram Matthys
f6eac29592
hash_nick_name -> hash_client_name, hash_find_nickserver -> hash_find_nickatserver
...
Both were confusing :)
2019-06-26 13:45:55 +02:00
Bram Matthys
d5b643ceee
Rewrite hash table code to use SipHash (more to follow)
2019-06-26 13:24:02 +02:00
Bram Matthys
df7bcc1326
Remove temporary FreeBSD workaround.
...
(reverts adf56ad8fd )
2019-06-26 07:14:35 +02:00
Bram Matthys
2894681c4f
Cleanup m_topic. Handle the if's in a smart way rather than indenting X levels.
2019-06-26 06:55:01 +02:00