about summary refs log tree commit diff
path: root/doc
AgeCommit message (Collapse)Author
2025-12-19Implement new configuration option "DefaultChannelModes"anzz1
The new configuration option "DefaultChannelModes" lists channel modes that become automatically set on new channels on creation. Default: set no modes. Closes #333.
2025-09-12Improve "CloakHostModeX" documentationanzz1
Closes #334.
2024-08-04Update documentation on CAFileosmarks
ngIRCd 27 now checks server certificates, and without `CAFile` set will reject all server/server connections with a confusing error. Update documentation to say that `CAFile` is needed to accept incoming server connections. Closes #320.
2024-04-26Update doc/Platforms.txtAlexander Barton
2024-04-19Clarify that "CAFile" is not set by defaultAlexander Barton
2024-04-11Update doc/Platforms.txtAlexander Barton
2024-03-31Fix quoting in code examples in doc/Container.mdAlexander Barton
2024-03-23S2S-TLS: Convert SSL.txt to Markdown and update information givenAlexander Barton
No longer describe creating self-signed certificates or using "stunnel", as both is not recommended.
2024-03-23Support for server certificate validation on server links [S2S-TLS]Christoph Biedl
This patch provides code to validate the server certificate in server links, defeating nasty man-in-the-middle attacks on server links. Features: - Check whether the certificate is signed by a trusted certificate authority (CA). - Check the host name, including wildcard certificates and Subject Alternative Names. - Optionally check against a certificate revocation list (CRL). - Implementation for both OpenSSL and GnuTLS linkage. Left for another day: - Parameterize the TLS parameter of an outbound connection. Currently, it's hardcoded to disable all versions before TLSv1.1. - Using certificate as CA-certificate. They work for GnuTLS only but perhaps this should rather raise an error there, too. - Optional OCSP checking. - Checking client certificates. Code is there but this first needs some consideration about the use cases. This could replace all other authentication methods, for both client-server and server-server connections. This patch is based on a patch by Florian Westphal from 2009, which implemented this for OpenSSL only: From: Florian Westphal <fw@strlen.de> Date: Mon, 18 May 2009 00:29:02 +0200 Subject: SSL/TLS: Add initial certificate support to OpenSSL backend Commit message modified by Alex Barton. Closes #120, "Server links using TLS/SSL need certificate validation". Supersedes PR #8, "Options for verifying and requiring SSL client certificates", which had (incomplete?) code for OpenSSL, no GnuTLS.
2024-03-17QuickStart.md: Tweak the text a bit ...Alexander Barton
2024-03-17Add a Dockerfile and documentation to the projectAlexander Barton
2024-02-10Streamline the "testsuite" and "srcdoc" make targetsAlexander Barton
2024-02-05Doxygen: Update the footer linksAlexander Barton
2024-01-21Migrate info from INSTALL.md into doc/QuickStart.mdAlexander Barton
Move most information regarding configuring ngIRCd into the doc/QuickStart.md document, only describe building and installing ngIRCd in the INSTALL.md file. Don't duplicate content! Add references where this makes sense.
2024-01-21Use a default "IncludeDir" only when no config file was specifiedAlexander Barton
No longer use a default built-in value for the "IncludeDir" directive when a configuration file was explicitly specified on the command line using "--config"/"-f": This way no default include directory is scanned when a possibly non-default configuration file is used which (intentionally) did not specify an "IncludeDir" directive. With this patch you now can use "-f /dev/null" for checking all built-in defaults, regardless of any local configuration files in the default drop-in directory (which would have been read in until this change).
2024-01-21Add an introduction and generic info to doc/QuickStart.mdAlexander Barton
2024-01-21Make the description of the "Info" option more preciseAlexander Barton
The "Info" option in the "[Global]" section is optional (so comment it out in the sample configuration file) and set to the server software name and its version when not set (so add this information to the sample configuration file and the ngircd.conf(5) manual page).
2024-01-21Deduce a server name when not set in the configurationAlexander Barton
The server "Name" in the "[Global]" section of the configuration file is optional now: When not set (or empty), ngIRCd now tries to deduce a valid IRC server name from the local host name ("node name"), possibly adding a ".host" extension when the host name does not contain a dot (".") which is required in an IRC server name ("ID"). This new behaviour, with all configuration parameters now being optional, allows running ngIRCd without any configuration file at all.
2024-01-20Convert the AUTHORS file to MarkdownAlexander Barton
2024-01-11Convert the FAQ to Markdown and enhance it!Alexander Barton
2024-01-11QuickStart.md: Update title and fix Markdown syntaxAlexander Barton
2024-01-112024 =:)Alexander Barton
2023-09-17Various fixes and enhancements for the "Autojoin" patchAlexander Barton
- Bring sample-ngircd.conf and ngircd.conf.5 description in line. - Fix configuration parsing, it always showed the 'Unknown variable "Autojoin"' error message, even when everything was perfectly fine. - And fix a build error (at least on macOS with Apple Clang 14): login.c:234:3: error: call to undeclared function 'IRC_JOIN'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] IRC_JOIN(Client, &Req); ^ The #include for the "irc.channel.h" header was missing! - Remove a unused variable that caused a compiler warning: login.c:222:12: warning: unused variable 'n' [-Wunused-variable] size_t i, n, channel_count = array_length(&Conf_Channels, sizeof(*conf_chan)); ^ - Add a explicit cast to fix a compiler warning: login.c:235:15: warning: assigning to 'char *' from 'const char[51]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] Req.argv[0] = conf_chan->name; ^ ~~~~~~~~~~~~~~~
2023-09-16Channel autojoin functionalityIvan Agarkov
2023-08-032023!Alexander Barton
2022-01-012022 =:)Alexander Barton
Happy new year!
2021-12-30Enhance documentation a bit, add doc/QuickStart.mdAlexander Barton
And this file could well be expanded!
2021-10-31doc/HowToRelease.txt: "dist-tarZ" and "dist-xz" make targets can't be combinedAlexander Barton
2021-01-01Update Platforms.txtAlexander Barton
- Add aarch64/apple/darwin (Apple CLang 12.0.0) - Add x86_64/unknown/openbsd6.7 (gcc 4.2.1) Thanks to Götz Hoffart <goetz@hoffart.de>
2021-01-012021! :-)Alexander Barton
Happy new year!
2020-11-28FAQ.txt: There is no "CVS" anymore, we use Git!Alexander Barton
2020-10-20Update Platforms.txtAlexander Barton
- Update powerpc/apple/darwin8.11.0 (gcc 4.0.1) - Add x86_64/apple/darwin19.6.0 (Apple clang 12.0.0) - Add x86_64/unknown/freebsd12.1 (FreeBSD clang 8.0.1) - Update x86_64/pc/linux-gnu (gcc 8.3.0) - Add x86_64/unknown/netbsd9.0 (gcc 7.4.0) - Add x86_64/unknown/openbsd6.6 (gcc 4.2.1) - Add x86_64/unknown/openbsd6.6 (OpenBSD clang 8.0.1) Thanks to Götz Hoffart <goetz@hoffart.de> for the PowerPC test!
2020-08-04Fixed Atheme Linksxnaas
.org and not .net
2020-06-11Update NEWS, ChangeLog and doc/Platforms.txt filesAlexander Barton
2020-06-11Add AppStream metadata file: contrib/de.barton.ngircd.metainfo.xmlAlexander Barton
2020-06-11Don't send invalid CHANINFO commands when no key is setAlexander Barton
It can happen that a channel is +k, but no key is set: for example by misconfiguring a pre-defined channel. In this case, ngIRCd sent an invalud CHANINFO command ("CHANINFO #test +Pk 0 :'", note the unset key represented by the two spaces) to its peers. Fix this and enhance the CHANINFO documentation.
2020-05-10Tweak & update doc/HowToRelease.txt a bit ...Alexander Barton
2020-05-07Platforms.txt: Add x86_64/apple/darwin19.0.0Alexander Barton
- Add x86_64/apple/darwin19.0.0 (Apple clang 11.0)
2020-05-07Update Platforms.txtAlexander Barton
- Update powerpc/apple/darwin8.11.0 (gcc 4.0.1) - Add mips/sgi/irix6.5 (SGI C compiler) - Add mipsel/unknown/netbsd8.0 (gcc 5.5.0) Thanks to Götz Hoffart <goetz@hoffart.de>!
2020-04-20Makefile.am: Replace make with ${MAKE} (#270)sam_c
Fixes warnings such as: "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." Signed-off-by: Sam James (sam_c) <sam@cmpct.info>
2020-03-29Update documentation to reflect "[Channel]->Modes" changesAlexander Barton
No longer mention "[Channel]->Key" and "[Channel]->MaxUsers".
2020-03-29Convert INSTALL and README files to MarkdownAlexander Barton
This requires some changes to the build system, for example to comply with the expectations of the GNU autoconf/automake tools ...
2020-01-212020!Alexander Barton
2019-07-21Fix some typos (documentation files, ngircd.conf manual page, ...)Alexander Barton
Spotted by Étienne Mollier <etienne.mollier@mailoo.org> and Christoph Biedl <debian.axhn@manchmal.in-ulm.de>, see Debian bug #932462 (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=932462). Thank you!
2019-06-29Fix and extend documentation a little bitAlexander Barton
- Fix syntax of LINKS amd LIST commands. - Whitespace and spelling fixes. - Add some more information about IRCv3 support.
2019-01-23Platforms.txt: Add and update systemsAlexander Barton
- Update x86_64/apple/darwin16.5.0 (Apple clang 8.1) - Add x86_64/apple/darwin17.7.0 (Apple clang 10.0) - Add x86_64/apple/darwin18.2.0 (Apple clang 10.0) - Add x86_64/unknown/haiku (gcc 7.3) - Update x86_64/pc/linux-gnu (gcc 6.3.0)
2019-01-03Fix documentation of MotdPhrase length (#254)shankari
The max length is actually 126 (< 127), since the check errors out if length >= 127. See <https://github.com/ngircd/ngircd/blob/master/src/ngircd/conf.c#L1487>. I didn't look through the history to see when the change happened. I just happened to find during a migration that my 140 character MOTD didn't work. Update sample configuration file as well as the man page.
2019-01-022019!Alexander Barton
2018-11-28Implement new configuration option "MaxPenaltyTime" (#251)Alexander Barton
This option configures the maximum penalty time increase in seconds, per penalty event. Set to -1 for no limit (the default), 0 to disable penalties altogether. ngIRCd doesn't use penalty increases higher than 2 seconds during normal operation, so values higher than 1 rarely make sense. Disabling (or reducing) penalties can greatly speed up "make check" runs for example, see below, but are mostly a debugging feature and normally not meant to be used on production systems! Some example timings running "make check" from my macOS workstation: - MaxPenaltyTime not set: 4:41,79s - "MaxPenaltyTime = 1": 3:14,71s - "MaxPenaltyTime = 0": 25,46s Closes #249.
2018-10-07Update doc/Protocol.txt for IRCv3 WEBIRC extensionAlexander Barton
See commit d0f9d3d92.