about summary refs log tree commit diff
AgeCommit message (Collapse)Author
2017-01-07ngircd.conf.5.tmpl: Fix spellingAlexander Barton
Thanks to Christoph Biedl.
2017-01-06Platforms.txt: Add and update systemsAlexander Barton
- Add x86_64/apple/darwin16.3.0 (Apple clang 8.0) - Update x86_64/pc/linux-gnu (gcc 4.9.2) - Add x86_64/pc/linux-gnu (gcc 6.2.1.)
2017-01-06Further enhance systemd unit fileAlexander Barton
- Add more comments/documentation. - Add dependencies for services and proxy scanners. - Add more limit configurations. - Allow AF_UNIX address family, required for syslog!
2017-01-06Install systemd service file in Debian packageAlexander Barton
2017-01-06Enhance systemd service fileAlexander Barton
- Add homepage :-) - Remote CAP_SETUID and CAP_SETGID from CapabilityBoundingSet: This is nor needed, because the unit already sets User=irc and Group=irc. - Add RestrictAddressFamilies, and restrict it to AF_INET and AF_INET6. - Read in the Debian "default files", but note: only PARAMS is supported!
2017-01-06Update Debian packageAlexander Barton
- Update debhelper compatibility to version 9. - Update build-dependencies. - Change group of ngircd.conf to "irc" in postinst script (this makes starting ngIRCd as user "irc" easier, for example when using systemd). - Don't create /var/run/ircd during installation: this is handled by the SysV init script and the systemd service already.
2016-12-11Update NEWS and ChangeLog filesAlexander Barton
2016-12-08Log privilege violations and failed OPER as "error" and to &serverAlexander Barton
2016-12-08Immediately shut down connection on receiving ERRORAlexander Barton
Don't wait for the peer to close the connection. This allows us to forward the ERROR mesage in the network, instead of the very generic "client closed connection" message.
2016-12-08Xcode: Fix "duplicate symbols" error in current XcodeAlexander Barton
2016-12-08x-Line synchronization: Don't send negative durationsAlexander Barton
2016-12-08List expiration: use same log level as when settingAlexander Barton
And log this event to the &SERVER channel, too.
2016-12-08Remove leftover debug message. Oops!Alexander Barton
2016-12-08G-LINES: Forbid remote modifications if "AllowRemoteOper" is not setAlexander Barton
Explicitely forbid remote servers to modify "x-lines" (G-LINES) when the "AllowRemoteOper" configuration option isn't set, even when the command seems to originate from the remote server itself: this prevents GLINE's to become set during server handshake in this case (what wouldn't be possible during regular runtime when a remote IRC Op sends the command) and what can't be undone by IRC Ops later on (because of the missing "AllowRemoteOper" option) ...
2016-12-05Make scripts and init-files in ./contrib executableAlexander Barton
2016-12-05autogen.sh: Fix some shellcheck(1) warning messagesAlexander Barton
2016-12-05Fix building ngIRCd with OpenSSL 1.1Christoph Biedl
At the moment, ngIRCd fails to build against OpenSSL 1.1 since the configure check probes for the SSL_library_init symbol which was removed, but probing for a different function availabe in both versions solves that problem: SSL_new(). And as SSL_library_init is no longer needed, the patch boils down to probing SSL_new to assert libssl is available, and disabling the SSL_library_init invokation from OpenSSL 1.1 on, see also another application[1] (NSCA-ng) that did pretty much the same. Patch was compile-tested on both Debian jessie (OpenSSL 1.0.2) and stretch (OpenSSL 1.1). [1] <https://www.nsca-ng.org/cgi-bin/repository/nsca-ng/commit/?id=8afc22031ff174f02caad4afc83fa5dff2c29f8a> (Patch by Christoph, commit message cherry-picked from the email thread on the mailing list by Alex. Thanks!)
2016-12-05gcc 6.2 warnings: fix code indentationAlexander Barton
This fixes the following correct -Wmisleading-indentation warning messages of gcc 6.2: irc-write.c: In function ‘IRC_SendWallops’: irc-write.c:521:4: warning: this ‘if’ clause does not guard... irc-write.c:524:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’ irc-write.c:526:4: warning: this ‘if’ clause does not guard... [] irc-write.c:529:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’ irc-info.c: In function ‘IRC_STATS’: irc-info.c:895:3: warning: this ‘else’ clause does not guard... irc-info.c:897:4: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘else’ No functional changes, the code has been correct, but the indentation was wrong ...
2016-11-05Update config.guess and config.sub to recent versionsAlexander Barton
- config.guess: 2016-04-02 - config.sub: 2016-03-30
2016-11-04Platforms.txt: Update systemsAlexander Barton
- Update x86_64/apple/darwin15.6.0 (Apple clang 8.0) - Update x86_64/unknown/linux-gnu (gcc 4.9.2) - Update i386/pc/solaris2.11 (gcc 4.8.2), tests have been run both on Solaris 11.2 and Solaris 11.3 successfully, but the system identifier is the same ... Thanks to Götz Hoffart <goetz@hoffart.de>!
2016-10-24PAM.txt: Add note about /etc/pam.d/ngircd permissionsAlexander Barton
2016-10-21autogen.sh, ngindent, platformtest.sh: Fix warnings of "shellcheck"Alexander Barton
- SC2006: Use $(..) instead of legacy `..`. - SC2015: Note that A && B || C is not if-then-else. C may run when A is true. - SC2086: Double quote to prevent globbing and word splitting. - SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.
2016-10-21Update Xcode project for latest Xcode version (8.0)Alexander Barton
2016-09-21Update Xcode project for latest Xcode version (7.3)Alexander Barton
2016-09-18Updated config.sub to version 2014-09-11Alexander Barton
2016-09-18Add "Documentation" variables to systemd configuration filesAlexander Barton
2016-07-22Make sure that SYSCONFDIR is always setAlexander Barton
This is useful when ./configure hasn't been run but some source code linters are run in an editor, for example.
2016-06-06Add "PAMServiceName" configuration optionAlexander Barton
This setting allows to run multiple ngIRCd instances with separate PAM configurations on each instance. If one sets it to ngircd-foo, PAM will use /etc/pam.d/ngircd-foo instead of the default /etc/pam.d/ngircd. Thanks to "somechris" for the patch & pull request! Closes #226.
2016-06-05Add PAMServiceName setting to specify the used PAM configurationChristian Aistleitner
This setting allows to run multiple ngIRCd instances with PAM configurations on each instance. If one sets it to "ngircd-foo", PAM will use `/etc/pam.d/ngircd-foo` instead of the default `/etc/pam.d/ngircd`.
2016-05-07Add an ".editorconfig" file to the projectAlexander Barton
2016-01-16Platforms.txt: Remove x86_64/unknown/linux-gnu, tcc 0.9.25Alexander Barton
This combination had been successfully tested with ngIRCd 21, but after further investigation didn't build correctly: it seems as if tcc fails to correctly link external libraries (e. g. ngipaddr). Astonishingly the test suite passed nevertheless, with garbled output, but without the daemon crashing!? When using tcc with ngIRCd 23 (and current master), the test suite fails completely because the daemon crashes ... (which actually is good!)
2016-01-16Platforms.txt: Add systemsAlexander Barton
- Add armv7l/unk./linux-gnueabihf (gcc 4.9.2) - Add x86_64/unknown/linux-gnu (icc 16)
2016-01-10Travis-CI: use "container-based infrastructure"Alexander Barton
See <https://docs.travis-ci.com/user/migrating-from-legacy/> for details.
2016-01-10platformtest.sh: Delete ngIRCd binary before test runAlexander Barton
This ensures that we definitely don't test an old binary later on ...
2016-01-10platformtest.sh: Only show "runs=Y" when test suite succeededAlexander Barton
Display "?" in the "runs" colum when the simple "run test" succeeded but the test suite failed. And display a message to double check the actual status, because it is somewhat unclear, if the daemon actually "works" or not in this case.
2016-01-07Platforms.txt: Add and update systemsAlexander Barton
- Add i386/pc/minix (clang 3.4) - Update i686/pc/cygwin (gcc 4.9.3) - Add x86_64/apple/darwin15.2.0 (Apple clang 7.0)
2016-01-07Send_Message: Fix handling of "empty" targetsAlexander Barton
Clients can specify multiple targets for the "PRIVMSG", "NOTICE", and "SQUERY" commands, separated by commas (e. g. "PRIVMSG a,#b,c :text"). Since commit 49ab79d0 ("Limit the number of message targes, and suppress duplicates"), ngIRCd crashed when the client sent the separator character only as target(s), e. g. "," or ",,,," etc.! This patch fixes the bug and adds a test case for this issue. Thanks to Florian Westphal <fw@strlen.de> for spotting the issue!
2016-01-06Update README fileAlexander Barton
2016-01-06Platforms.txt: Add and update systemsAlexander Barton
- Update i586/pc/interix3.5 (gcc 3.3) - Add i686/pc/linux-gnu (gcc 2.6.3) - Add i686/pc/linux-gnu (gcc 2.95.2) Thanks to Götz Hoffart <goetz@hoffart.de>!
2016-01-06platformtest.sh: Use $LOGNAME instead of $USERAlexander Barton
LOGNAME is more standard than USER.
2016-01-04Update copyright notices for 2016Alexander Barton
2016-01-04Limit the number of message targes, and suppress duplicatesAlexander Barton
This prevents an user from flooding the server using commands like this: PRIVMSG nick1,nick1,nick1,... Duplicate targets are suppressed silently (channels and clients). In addition, the maximum number of targets per PRIVMSG/NOTICE/... command are limited to MAX_HNDL_TARGETS (25). If there are more, the daemon sends the new 407 (ERR_TOOMANYTARGETS_MSG) numeric, containing the first target that hasn't been handled any more. Closes #187.
2016-01-04Add "_MSG" postfix to ERR_WILDTOPLEVEL_MSGAlexander Barton
2016-01-04Commands.txt, PRIVMSG: Fix "server mask" descriptionAlexander Barton
2016-01-04Enahnce comments for Send_Message() and Send_Message_Mask()Alexander Barton
No functional changes.
2016-01-04Get rid of unclever assert() in Send_Message_Mask()Alexander Barton
Either we use assert() to _guarantee_ a certain condition, or we use if(...) to test for it. But never both. So get rid of the assert() in Send_Message_Mask() and handle the case that the target mask doesn't contain a dot (".") as regular error, don't require the caller to assure that any more. This polishes commit 5a312824. Please note: The test in Send_Message() is still _required_ to detect whether the target is a channel (no dot) or a "target mask" (at least one dot)!
2015-12-30Test suite: Add new test for server-server loginsAlexander Barton
This test detects the recent NJOIN breakage, for example ...
2015-12-30Fix NJOIN handler killing all clientsAlexander Barton
This bug has been introduced by commit 1e386fb7ac which had the logic reversed :-( Reported by "ninguno" in #ngircd, thanks a lot!
2015-12-19contrib/ngindent: Fix shebang lineAlexander Barton
2015-12-19contrib/platformtest.sh: Warn when external tools are missingAlexander Barton