1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-29 19:46:38 +02:00
Commit Graph

1283 Commits

Author SHA1 Message Date
Bram Matthys c105e6958c Update curl-ca-bundle to version of Wed Oct 16 03:12:09 2019 GMT
from https://curl.haxx.se/docs/caextract.html
2019-10-27 10:23:12 +01:00
Bram Matthys 09854abade Move the dcc deny stuff into the dccdeny module, that is:
functions from extra.c, entire undccdeny and svsfline,
large functions that were in message.c and conf.c
2019-10-25 13:39:24 +02:00
Bram Matthys fb0842216f Remove old bullet point in release notes that is now mentioned
a few lines up. [skip ci]
2019-10-19 18:32:54 +02:00
Bram Matthys b9d432820b Update ./Config and the more/less screen, now that release notes are
online (or in markdown format, anyway) we can skip some stuff.
2019-10-18 08:42:06 +02:00
Bram Matthys 6dffe38bd3 Update release notes a bit
[skip ci]
2019-10-18 08:36:01 +02:00
Bram Matthys bed8a0ca2b Remove set::oper-only-stats from config. Don't mention set::allow-user-stats
there since that is a niche feature that 99% is unlikely to use.
2019-10-14 18:50:24 +02:00
Bram Matthys f5137678ff Update 5.0.0-alpha4 release notes a bit. 2019-10-12 08:42:40 +02:00
Bram Matthys 139e5faae6 UnrealIRCd 5.0.0-alpha4 (release tomorrow) 2019-10-11 20:31:15 +02:00
Bram Matthys 3c4d14ca58 Warn about the necessity of an anope patch, which is pending since February... 2019-10-11 18:55:01 +02:00
Bram Matthys 96509f6802 except tkl { } -> except ban { } in example*conf
[skip ci]
2019-10-11 17:57:33 +02:00
Bram Matthys ff5f2d97a0 Some release notes markdown changes (always fun when 3 markdown editors
show the output in 3 different ways, and github is even different)
[skip ci]
2019-10-11 16:24:24 +02:00
Bram Matthys 62352c2b70 Update release notes, refer to web/github or the .md file. 2019-10-11 16:19:54 +02:00
Bram Matthys a5e6fb4a12 Convert release notes to markdown (add many links)
[skip ci]
2019-10-11 15:58:55 +02:00
Bram Matthys f992a0c1c0 Finish up labeled-response implementation. Load by default to get the
thing tested. Will do at least 1 other commit soon related to this.
2019-10-05 17:33:22 +02:00
Bram Matthys 2eecf4f2da Use generic numeric 531 (ERR_CANTSENDTOUSER) for all such cases and use hook
CAN_SEND_TO_USER rather than HOOKTYPE_PRE_USERMSG (which is now removed).

As for the numeric change: this makes it much easier for client devs.
You rarely need to differentiate in the client code between the various
causes. One only cares about detecting that the message was not sent and
that the user needs to be informed.
This replaces various NOTICEs, ERR_NOCTCP, ERR_NONONREG etc. with just the
new numeric 531, which is taken from InspIRCd. The syntax is:
:server 531 yourname targetname :reason for the block
This makes it similar to numeric 404 (ERR_CANNOTSENDTOCHAN) that is used to
indicate that a channel message was blocked.

For module devs, the new hook CAN_SEND_TO_USER prototype is:
int hooktype_can_send_to_user(Client *client, Client *target, char **text, char **errmsg, int notice);
You can replace the text via this, by setting *text in your function.
You can block the message, by returning HOOK_DENY. If doing so, then
you must also set *errmsg to an appropriate value.
Do not send any error message to the user! UnrealIRCd will take care of
sending the error message for you, if you set *errmsg.
Only if you need something special you could violate this rule, but
preferably not!

As you can see, CAN_SEND_TO_USER works just like CAN_SEND_TO_CHANNEL.
2019-10-05 12:53:41 +02:00
Bram Matthys 999fde8fee Update release notes (the module coders section) on the recent changes. 2019-10-04 12:38:01 +02:00
Bram Matthys 5a57eec4c7 Channel names must now be valid UTF8 by default.
We actually have 3 possible settings of set::allowed-channelchars:
utf8:  Channel must be valid UTF8, this is the new default
ascii: A very strict setting, for example in use at freenode,
       the channel name may not contain high ascii or UTF8
any:   A very loose setting, which allows almost all characters
       in the channel name. This was the OLD default, up to and
       including UnrealIRCd 4. It is no longer recommended.
For most networks this new default setting of utf8 will be fine, since
by far most IRC clients use UTF8 for many years already.
If you have a network that has a significant portion of chatters
that are on old non-UTF8 clients that use a specific character set
then you may want to use set { allowed-nickchars any; }
Some Russian and Ukrainian networks are known to need this.

Devs: src/utf8.c has been added which will be used by this and
by other functionality later.
2019-09-22 18:42:21 +02:00
Bram Matthys 5b8f393a8f * EventAdd() changed the order of parameters and expects every_msec now
which specifies the time in milliseconds rather than seconds. This
  allows for additional precision, or at least multiple calls per second.
  The minimum allowed every_msec value is 100 at this time.
  The prototype is now: EventAdd(Module *module, char *name,
  vFP event, void *data, long every_msec, int count);
2019-09-22 15:05:00 +02:00
Bram Matthys e846596b37 UnrealIRCd 5.0.0-alpha3 2019-09-21 18:19:33 +02:00
Bram Matthys 330cf9ed24 Remove confusing information regarding /TSCTL. 2019-09-21 16:29:53 +02:00
Bram Matthys 7c9a188cb7 Done. New rule: use safe_alloc, safe_free, safe_strdup,
do NOT use malloc/calloc/free.
2019-09-14 17:26:55 +02:00
Bram Matthys 9b14970c2a Move ident lookups to module 'ident_lookup' and rewrite the code
to be a bit less ugly. The module is loaded by default so you can
still use set::options::identd-check like before, even though I
hate ident... it's old shit... still, other's seem to like it.

More changes will follow later. There is still some ident stuff
in the core at the moment and the module is currently PERM, which
largely (but not entirely) defeats the purpose of being a module.
That will be fixed at a later time as well.
2019-09-13 19:21:29 +02:00
Bram Matthys bb1bb35f50 MOD_LOAD(xyz) is now just MOD_LOAD(), same for MOD_TEST, MOD_INIT,
MOD_UNLOAD. And MOD_HEADER(xyz) is now MOD_HEADER even without ()
since this isn't a function, really.
To make things understandable I added the following to the
developer section of the release notes:

* The module header is now as follows:
  ModuleHeader MOD_HEADER
    = {
          "nameofmodule",
          "5.0",
          "Some description",
          "Name of Author",
          "unrealircd-5",
      };
  There's a new author field, the version must start with a digit,
  and also the name of the module must match the loadmodule name.
  So for example third/funmod must also be named third/funmod.
* The MOD_TEST, MOD_INIT, MOD_LOAD and MOD_UNLOAD functions no longer
  take a name argument. So: MOD_INIT(mymod) is now MOD_INIT()
2019-09-13 15:27:40 +02:00
GottemHams 4a85e4cd8b Load require-module by default [skip-ci] 2019-09-12 20:54:09 +02:00
GottemHams 358a31eaee First draft of require-modules module (require modules globally or deny them) 2019-09-11 22:18:03 +02:00
Bram Matthys 04607f5b1a Various auth cleanups: Auth_Check() now returns 1 on allow and 0 on deny (!)
to keep things simple, rather than having 4 different return values
(yes.. FOUR!).
[skip ci]
2019-09-11 13:10:15 +02:00
Bram Matthys 08a4c489f6 Update HELPOP SPAMFILTER. The syntax was OK but the explanation under it
was confusing since it was explaining the fields in a different order.
2019-09-07 18:00:58 +02:00
Bram Matthys ec5a66ba80 UnrealIRCd 5.0.0-alpha2 release 2019-09-07 15:54:15 +02:00
Bram Matthys a006a9aea9 Recode tkl type table. '/STATS except' works now (lists ELINEs and
except ban in config).
If you want to play with exceptions, type /ELINE for information.
For the configuration file it is important to know that 'except tkl'
is now called 'except ban'.
Also if you do not specify an except ban::type we now default to
exempt from all regular server ban types (but not qline, spamfilters,
blacklist or throttling)
2019-09-02 19:30:23 +02:00
Bram Matthys 083953ca00 Release notes: Developers: mention ModuleHeader changes.
[skip ci]
2019-08-27 14:15:44 +02:00
Bram Matthys 890e4c9acd Set set::modes-on-join to +nt by default and also put it in the
example.conf. Leaving it empty by default is strange and contrasts
with our "secure by default" principle.
2019-08-26 18:22:12 +02:00
Bram Matthys 38b55fb3c5 Not ready for release yet, but bump git version to alpha2 already now that
the Windows build is working (5.0.0-alpha1 had no Windows build).
2019-08-25 14:38:02 +02:00
Bram Matthys 5e0ed6d626 UnrealIRCd 5.0.0-alpha1 2019-08-20 19:39:04 +02:00
Bram Matthys 71935d6d48 Use +f in +f examples (duh)
[skip ci]
2019-08-19 16:41:11 +02:00
Bram Matthys 86f7d8c5cc Document new 'r' (repeat) flood type and 'd' (drop) action in release notes.
[skip ci]
2019-08-19 16:28:41 +02:00
Bram Matthys d8e121fbc5 Another test commit for buildbot. 2019-08-18 16:51:34 +02:00
Bram Matthys fac5036d5f Test commit 2019-08-18 16:40:38 +02:00
Bram Matthys 448ee87ed4 More and more and more
[skip ci]
2019-08-17 15:45:37 +02:00
Bram Matthys 5bc91a02f9 Some minor text changes in release notes.
[skip ci]
2019-08-17 15:44:49 +02:00
Bram Matthys 52aed93707 Add preliminary release notes for UnrealIRCd 5 2019-08-17 15:41:03 +02:00
Bram Matthys 9fbd7f33fc The set::webredir block should be commented out by default.
[skip ci]
2019-08-17 12:48:30 +02:00
Bram Matthys c941c529c3 Load 'reputation' and 'connthrottle' by default. Add to example.conf. 2019-08-17 12:46:43 +02:00
Bram Matthys 143d747e66 Rename 'cmdrestrict' to 'restrict-commands'. Load the module by default
so you can use set::restrict-commands without having to loadmodule.
Restrict the LIST and INVITE commands in the example.conf, which is
often a good idea. Finally, document the configuration/usage at:
https://www.unrealircd.org/docs/Set_block#set::restrict-commands
2019-08-17 12:34:14 +02:00
Bram Matthys 6c02c896d9 add +H to HELPOP CHMODES 2019-08-17 12:06:05 +02:00
Bram Matthys 887cf24fd7 Add channeldb module (loaded by default): this saves all channel settings
such as name, creationtime, modes, topic, bans/exempts/invex to a database
and restores it on-boot. It only does this for +P (persistent) channels.
2019-08-16 14:42:25 +02:00
Bram Matthys 2127a36f61 Remove ~R extban as it is redundant now that we have ~a.
All services should have account names by now.
2019-08-13 21:08:22 +02:00
Bram Matthys a32e285d63 Document ~f extban in helpop.
[skip ci]
2019-08-13 21:01:49 +02:00
Bram Matthys 4d74ca9d9a Take out labeled-response until it is unbroken (as in: don't load
by default for now). Not a high priority item at the moment.
2019-08-13 18:49:18 +02:00
Bram Matthys 4c8fe6e8d9 Add CAP echo-message. 2019-08-13 18:36:25 +02:00
Bram Matthys 39bb0299f1 /REHASH -ssl -> /REHASH -tls 2019-08-13 12:59:56 +02:00