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

7549 Commits

Author SHA1 Message Date
Bram Matthys ee1e01bec8 Fix small memory leak on config error 2019-11-11 17:27:52 +01:00
Bram Matthys 77e308783f Fix extra whitespace in USERHOST/USERIP (minor) 2019-11-11 14:17:44 +01:00
Bram Matthys 6710e5c047 Fix SILENCE -xyz output (return value error) 2019-11-11 13:42:26 +01:00
Bram Matthys 56bc6f3939 Fix numeric 271 output which has own nick twice. This bug is also
present in UnrealIRCd 4, and possibly in 3.2.x as well.

This changes:
SILENCE
:irc1.test.net 271 self self evilperson!*@*
To:
SILENCE
:irc1.test.net 271 self evilperson!*@*
2019-11-11 13:31:50 +01:00
Bram Matthys 864b15c0d6 Fix another numeric error in MOTD and use ISO date format (Y-m-d). 2019-11-11 12:21:17 +01:00
Bram Matthys a34bb40da4 Fix format of various numerics that use sendnumericfmt(). 2019-11-11 11:31:42 +01:00
Bram Matthys e1163c8734 Windows installer: reindent .iss and fix some end -> end;
[skip ci]
2019-11-11 11:12:40 +01:00
Bram Matthys 788cdd2956 On Windows, if you choose to run UnrealIRCd 5 as a service, it now runs
under the NetworkService account, rather than LocalSystem (SYSTEM).

Something along those lines was suggested long ago in:
https://bugs.unrealircd.org/view.php?id=2330 with a patch
from BuHHunyx.

The more recent pull request from AlexandraBryant suggested to use
the NetworkService account and also fixed the (major) problem with the
original patch that caused UnrealIRCd to hang for 15 seconds when
UnrealIRCd was started in GUI mode (non-services mode).

The installer was changed to automatically set the appropriate
permissions on the UnrealIRCd 5 folder if "Install as a service"
was selected. This so NetworkService can write, otherwise it would
be unable to copy modules to tmp\, write to log files, etc. etc.

We print a clear warning if you manually install the service at
a later stage, suggesting to run the installer instead or to
manually change the permissions.

Better error checking and reporting was added when running 'unrealsvc'
and when we are unable to connect to the service manager. This is
much more common nowadays as you need elevated admin permissions.
2019-11-11 09:44:31 +01:00
Bram Matthys 52dbfc38b7 Fix service on Windows not working in UnrealIRCd 5 now that we
have the bin\ directory.
2019-11-11 09:43:39 +01:00
GottemHams 39fc55dca3 require-module now SQUITs on explicitly required/denied modules (by config), also change version check to require a minimum version (require module::version config directive) 2019-11-07 22:03:02 +01:00
Bram Matthys 8fb125f588 Add some connect and read timeouts to the module manager when
checking repositories and downloading C files (this was a TODO item).

Give a clear hard error if ALL repositories failed
(failed to connect, download or parse).

Make a few commands work regardless of repository status.
In fact, these don't connect to repositories at all since they
don't need to. Thus, these commands are always available:
./unrealircd module [uninstall|generate-repository|parse-c-file]
of which only 'uninstall' is of importance for end-users.

Finally, make parse-c-file print a better error in case the file
could not be opened. Note that this command is only there for
module developers and repository managers, not end-users.
2019-11-04 10:52:51 +01:00
Bram Matthys 31edd45223 Update release notes: require anope 2.0.7 (if using anope, that is) 2019-11-03 16:50:42 +01:00
Bram Matthys 1a6343bff3 Fix missing cloak module on Windows (:D), just in time for 5.0.0-beta1. 2019-11-02 09:13:20 +01:00
Bram Matthys 449f69485f Fix some memory leaks in ./unrealircd module.
Not terribly important at the moment, but still...
2019-11-02 08:14:25 +01:00
Bram Matthys 078c6696af Update release notes a bit
[skip ci]
2019-11-01 21:29:52 +01:00
Bram Matthys 6bb83dc5bc Bump version to 5.0.0-beta1 2019-11-01 20:05:05 +01:00
Bram Matthys 42d4d4a680 Compile fixes for Windows 2019-11-01 19:46:07 +01:00
Bram Matthys 7bf51f36a6 Fix column alignment in './unrealircd module list' 2019-11-01 17:25:36 +01:00
Bram Matthys 6402dfd2fe send_multinotice() -> sendnotice_multiline() 2019-11-01 13:12:40 +01:00
Bram Matthys dfa83aa6e5 Add module manager. See https://www.unrealircd.org/docs/Module_manager
Also update release notes and some unrelated changes.
BIG commits. Lots of work. Requires more testing.
2019-11-01 12:57:12 +01:00
Bram Matthys 801d359ad1 Allow importing build settings from UnrealIRCd 4.x, but don't copy 3rd party
modules as they wouldn't compile anyway.
2019-10-28 13:12:51 +01:00
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 bcfa6389c2 Update shipped PCRE2 library from 10.32 to 10.33 (16 Apr 2019) 2019-10-27 10:18:14 +01:00
Bram Matthys 86ce42103a Make the 'silence' module optional. Suggested by westor in
https://bugs.unrealircd.org/view.php?id=5415
Technically we now provide 3 default efunc handlers that always return 0.
2019-10-27 09:40:55 +01:00
Bram Matthys 8bb5bda47a Pass correct modinfo argument to MOD_UNLOAD(). This fixes a crash
on SavePersistentPointer().
2019-10-27 09:33:37 +01:00
Bram Matthys e1e815bb2f Fix crash if 2+ REHASHes right after each other when also unloading
a channel mode module with parameters or a module with moddata.
2019-10-27 09:18:29 +01:00
Bram Matthys 72d71e30ce Fix unloading of chanmode modules crashing the server. Reported by westor
in https://bugs.unrealircd.org/view.php?id=5412
2019-10-27 09:07:43 +01:00
Bram Matthys 03cdf5043f Fix +f not detecting repeats in case of 1st message, REHASH, 2nd message.
This due to a missing SavePersistentPointer() on the siphash key.
[skip ci]
2019-10-27 08:52:07 +01:00
Bram Matthys be68a72b42 Hostile server: reject nicks that start with a digit in do_remote_nick_name() 2019-10-27 08:44:28 +01:00
Bram Matthys 5d7bd995fa Show correct idle time when a fresh user connects.
Reported by The_Myth in https://bugs.unrealircd.org/view.php?id=5454
2019-10-26 19:18:24 +02:00
Bram Matthys 298e9f2ea6 Advertise 'configtest' in './unrealircd' usage/help.
[skip ci]
2019-10-26 19:02:45 +02:00
Bram Matthys fb8055c6ef Add './unrealircd configtest' which tests the configuration but does
not actually start the server. Any warnings and errors are printed
only to the console.
Suggested in https://bugs.unrealircd.org/view.php?id=5219
2019-10-26 18:55:26 +02:00
Bram Matthys 52c8ef3815 get_sno_str -> get_snomask_string, get_mode_str -> get_usermode_string,
get_snostr -> get_snomask_string_raw, get_modestr -> get_usermode_string_raw
2019-10-26 11:42:05 +02:00
Bram Matthys 9b15c758cd make_virthost() -> make_cloakedhost() and change parameters:
/** Calculate the cloaked host for a client.
 * @param client        The client
 * @param curr          The real host or real IP
 * @param buf           Buffer to store the new cloaked host in
 * @param buflen        Length of the buffer (should be HOSTLEN+1)
 */
void make_cloakedhost(Client *client, char *curr, char *buf, size_t buflen)
2019-10-26 11:38:53 +02:00
Bram Matthys 21ef90e503 Document channel mode api and two other files. 2019-10-26 11:22:10 +02:00
Bram Matthys da5aefaad7 Get rid of class.h 2019-10-26 10:02:00 +02:00
Bram Matthys ab7a4af46a find_command(char *cmd, int flags) / find_command_simple(char *cmd) 2019-10-26 10:00:04 +02:00
Bram Matthys 9aff820d1a Find_* -> find_*, eg Find_alias -> find_alias. 2019-10-26 09:57:15 +02:00
Bram Matthys 64342a0d16 Document api-command.c and command API page. Change find_Command.
(more in next commit)
2019-10-26 09:56:18 +02:00
Bram Matthys 24c60fd85e Fix some doxygen tags (eg @notes to @note) 2019-10-26 09:33:09 +02:00
Bram Matthys 9c79ca6655 Document all functions in src/channel.c 2019-10-26 09:11:09 +02:00
Bram Matthys 9050011300 Document all functions in src/serv.c.
Also remove the DALINFO command.
2019-10-25 19:49:34 +02:00
Bram Matthys 86d15804a8 Document all functions in src/tls.c 2019-10-25 19:31:30 +02:00
Bram Matthys e9ab8fd45e Document all functions in src/support.c
And replace atime(str) with config_checkval(str, CFG_TIME)
2019-10-25 19:30:50 +02:00
Bram Matthys c45181d07f Document (doxygen) src/misc.c entirely 2019-10-25 14:29:14 +02:00
Bram Matthys 845f9ca8ed Uniform spelling: seetle on sync/synced/desync/desynced, rather than
synch/synched/desynch/desynched.
2019-10-25 14:07:58 +02:00
Bram Matthys c0f2e6be6a Remove src/extra.c and move the last function, ircd_log, to src/misc.c 2019-10-25 13:59:59 +02:00
Bram Matthys 47affa7f31 Move some DCCALLOW functions 2019-10-25 13:57:33 +02:00
Bram Matthys 51b0a7a373 Update HOOKTYPE_STATS: will now be called for unknown flags and for
all known flags as well. So you can now add stats via modules.
Only the stats help is currently missing if you do so.
=> Moved dccdeny stats to dccdeny
2019-10-25 13:51:22 +02: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