about summary refs log tree commit diff
AgeCommit message (Collapse)Author
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-11-28Fix compilation without deprecated OpenSSL APIs (#252)Rosen Penev
2018-10-30Update Xcode project for latest Xcode version (10.0)Alexander Barton
2018-10-30Fix some compiler warnings of Apple Xcode/ClangAlexander Barton
For example: * src/ngircd/irc-login.c:102:21: Implicit conversion loses integer precision: 'int' to 'char' * src/ngircd/conn.c:1084:9: Implicit conversion turns floating-point number into integer: 'double' to 'bool' * src/tool/tool.c:85:10: Implicit conversion loses integer precision: 'int' to 'char'
2018-10-30Fix typos/errors/... in file commentsAlexander Barton
Found by Xcode/Clang code analyzer. No functional changes.
2018-10-07Update doc/Protocol.txt for IRCv3 WEBIRC extensionAlexander Barton
See commit d0f9d3d92.
2018-10-07Allow a 5th parameter in WEBIRCItsOnlyBinary
According to an IRCv3 extension, the 5th parameter can be used for extra flags that are fine to ignore for now, but limiting WEBIRC params to 4 causes a syntax error. See https://github.com/ircv3/ircv3-ideas/issues/12 for more information. This closes #247.
2018-09-01Update HowToRelease.txt: Include the websiteAlexander Barton
2018-08-29Platforms.txt: Add and update systemsAlexander Barton
- Update x86_64/unknown/freebsd10.0 (FreeBSD clang 3.3) - Add x86_64/unknown/freebsd10.3 (FreeBSD clang 3.4) - Update i386/pc/solaris2.11 (gcc 4.8.2) - Add mipsel/openwrt/linux-uclibc (gcc 4.8) [cross-compiler] - Add x86_64/pc/linux-gnu (gcc 5.4.0) [Win10/WSL] - Platforms.txt: Update "pre-ANSI compiler" foot note. Thanks to Götz Hoffart <goetz@hoffart.de>!
2018-08-11ngIRCd Release 25~rc1 rel-25-rc1Alexander Barton
2018-05-20Update and fix logcheck(8) rulesAlexander Barton
2018-04-01Update config.guess and config.sub to recent versionsAlexander Barton
- config.guess: 2018-03-08 - config.sub: 2018-03-08
2018-04-01Initialize listening socket: Streamline error messageAlexander Barton
2018-03-25Update NEWS and ChangeLog filesAlexander Barton
2018-03-25Correctly retry outgoing conenctions when forking a resolver failedAlexander Barton
When ngIRCd failed to spawn a new resolver subprocess, the connection structure was still marked as "SERVER_WAIT", and no new attempt to connect to this server was made. Thanks to Robert Obermeier for reporting this bug! Closes #243.
2018-03-11Fix use-after-free while handling ERROR during client loginAlexander Barton
This patch fixes a "use after free" bug which is hit while processing ERROR commands while a new client is logging into the server, which leads to only the CLIENT structure becoming freed, but not the CONNECTION structure, too. And this leads to the daemon accessing the already freed CLIENT structure later on ... So now IRC_ERROR() uses the correct function Conn_Close() to correctly free both structures. The CONNECTION structure is cleaned up later on, and the freed CLIENT structure can't be overwritten during normal operations, therefore this bug normally can't crash (DoS) the service -- but you can easily hit it when using the GCC option "-fsanitize=address", or run ngIRCd with Valgrind. Thanks a lot to Joseph Bisch <joseph.bisch@gmail.com> for discovering and reporting this issue!
2018-03-11Only send TOPIC updates to a channel when the topic actually changedAlexander Barton
This prevents the channel from becoming flooded by unecessary TOPIC update messages, that can happen when IRC services try to enforce a certain topic but which is already set (at least on the local server), for example. Therefore still forward it to all servers, but don't inform local clients (still update setter and timestamp information, though!)
2018-03-11Update Xcode project for latest Xcode version (9.2)Alexander Barton
This includes adding missing and deleting obsolete file references.
2018-02-25Use .mailmap to fix spelling of Götz HoffartAlexander Barton
2018-02-25Little code cleanups, better commentsAlexander Barton
2018-02-25User mode "C": Allow messages from servers, services, and IRC OpsAlexander Barton
Update user mode "C" handling ("Only users that share a channel are allowed to send messages") to behave like user mode "b" ("block private messages and notices") and therefore allow messages from servers, services, and IRC Operators, too. Change proposed by "wowaname" in #ngircd, thanks!
2018-02-25portab/Makefile: Split list into separate linesAlexander Barton
2018-02-25configure.ng: Split list into separate linesAlexander Barton
2018-02-11Update NEWS and ChangeLog filesAlexander Barton
2018-02-092018!Alexander Barton
2018-01-29Fix compiler warning in ForwardLookup()Alexander Barton
When compiling without "working getaddrinfo()", the "af" parameter of ForwardLookup() is unused by that function. Mark it as such! This prevents the following compiler warning: resolve.c:235:56: warning: unused parameter ‘af’ [-Wunused-parameter]
2018-01-29Fix compiler warning in Option_String()Alexander Barton
When compiling ngIRCd without support for SSL and without support for ZLIB, gcc outputs the following warning: irc.c:493:9: warning: variable ‘options’ set but not used [-Wunused-but-set-variable] Fix it by providing a dummy function in this case.
2018-01-29Fix Get_Error() usage, take IIAlexander Barton
This should fix the following compiler warning: resolve.c:113:1: warning: ‘Get_Error’ defined but not used [-Wunused-function] Which can happen, because the logic of commit 543f44bf isn't sufficient: Get_Error() is only used when neither HAVE_WORKING_GETADDRINFO nor HAVE_GETNAMEINFO are set ... Enhances 543f44bf. Closes #241.
2017-12-28contrib/ngircd.logcheck: Add sample logcheck(8) rulesAlexander Barton
2017-09-30Allow IRC Ops and remote servers to KILL service clients (#242)Alexander Barton
In the end, service clients behave like regular users, therefore IRC operators and servers should be able to KILL them: for example to resolve nick collisions. This is related to #238.
2017-09-26Don't forward KILLs to other servers if they've been blocked locallyJames Lu
This prevents clients from killing IRC services, for example. Closes #238. Closes #239.
2017-09-23Update AUTHORS fileAlexander Barton
2017-09-17Merge pull request #240 from bkuhls/fix_Get_ErrorAlexander Barton
Fix Get_Error usage
2017-09-13Fix Get_error usageBernd Kuhls
The usage of Get_Error is guarded by "ifdef h_errno" in this file, the definition of this function should follow the same rules. Fixes a build error when cross-compiling: https://github.com/ngircd/ngircd/issues/223
2017-03-12Update HowToRelease.txtAlexander Barton
- Freshmeat is no more, and - GitHub issues doesn't allow us to configure "releases".
2017-02-20Services.txt: Show Atheme "name" in example configurationAlexander Barton
2017-02-20Services.txt: Show ngIRCd "Name" in example configurationAlexander Barton
2017-01-20ngIRCd Release 24 rel-24Alexander Barton
2017-01-20Platforms.txt: Add and update systemsAlexander Barton
- Update i386/unknown/freebsd7.3 (gcc 4.2.1) - Update i386/unknown/netbsdelf4.0 (gcc 4.1.2) - Update x86_64/apple/darwin16.3.0 (Apple clang 8.0) - Update x86_64/unknown/freebsd8.4 (gcc 4.2.1) - Update x86_64/pc/linux-gnu (gcc 4.4.5) - Update x86_64/pc/linux-gnu (gcc 4.8.4) - Update x86_64/pc/linux-gnu (gcc 4.9.2) - Update x86_64/pc/linux-gnu (gcc 6.2.1) - Add x86_64/pc/linux-gnu (gcc 6.3.1)
2017-01-20Make sure that platformtest.sh aborts when autogen.sh failsAlexander Barton
2017-01-20Specify Debian "source format"Alexander Barton
2017-01-20Update config.guess and config.sub to recent versionsAlexander Barton
- config.guess: 2016-10-02 - config.sub: 2016-11-04
2017-01-20Build Debian packages with OpenSSL instead of GnuTLSAlexander Barton
OpenSSL allows to reload used certificates on runtime for example (which is very useful when using Let's Encrypt), and therefore is preferred ...
2017-01-19Fix handling of connection pool allocation and enlargementAlexander Barton
The daemon only enlarged its connection pool when accepting new client connections, not when establishing new outgoing server links. Thanks to Lukas Braun (k00mi) for reporting this! In addition this patch streamlines the connection pool allocation, so that there is only one place in the code allocating the pool: the now updated Socket2Index() function. The name doesn't quite fit, but this existing and today quite useless function (because the mapping from socket number to connection index is 1:1 today) already became called in almost all relevant code paths, so I decided to reuse it to keep the patch small ...probably we want to fix the naming in a second patch? Closes #231.
2017-01-152017!Alexander Barton
2017-01-15Update doc/RFC.txt, add RFC 7194Alexander Barton
2017-01-08ngIRCd Release 24~rc1 rel-24-rc1Alexander Barton