about summary refs log tree commit diff
AgeCommit message (Collapse)Author
2012-08-27Remove Can_Send_To_Channel_Identified()Alexander Barton
Move the functionality directly into Can_Send_To_Channel() function. There should be no functional change ...
2012-08-26Implement channel mode "M"DNS777
Only the server, identified users and IRC operators are able to talk.
2012-08-26Enhance "ServiceMask" to handle a list of masksAlexander Barton
The "ServiceMask" variable in "Server" blocks now can handle more than one mask using the new MatchCaseInsensitiveList() function. This makes marking "service clients" much more specific, which is a good thing per se, but which is the prerequisite for reasonably blocking these nick names, too (see commit a6dd2e3 for details).
2012-08-26New function MatchCaseInsensitiveList() to check list of patternsAlexander Barton
2012-08-26Block nicknames that are reserved for servicesAlexander Barton
This patch introduces the new function Conf_NickIsBlocked() which checks if a given nick name matches with the "service mask" of a configured server. And Client_CheckNick() uses this information to deny such names for regular IRC users. So nick names intended for IRC services are more protected and can't be used by regular users even when the "services pseudo-server" isn't connected to the network. But please note: Up to now, there can be only one "ServiceMask" pattern per server, which most probably blocks much more nick names than really required ... So "ServiceMask" should allow more than one pattern which can be more specific, and most probably it should be possible to block nick names in the global server configuration as well. Nick names introduced by other servers/services are never restricted.
2012-08-26Rename Conf_IsService() to Conf_NickIsService()Alexander Barton
2012-08-26Check_Connections(): code cleanupAlexander Barton
2012-08-22Xcode: use certificate of Alex for code signingAlexander Barton
When doing non-debug Xcode builds, use the "Developer ID Application: Alexander Barton" certificate for code signing by default.
2012-08-18"make uninstall": remove ngircd.conf if not modifiedAlexander Barton
Now "make uninstall" removes the installed "ngircd.conf" file, if it is still equal to our "sample-ngircd.conf" file and therefore hasn't been modified by the user. If it has been modified, it isn't removed and a notice is displayed to the user. In addition, "make install" now displays a message when no ngircd.conf file exists and the "sample-ngircd.conf" file will be installed as a starting point.
2012-08-18contrib/ngircd.service: systemd service file for ngircdAlexander Barton
Thanks to Kyle Keen <keenerd@gmail.com>: Date: Sat, 18 Aug 2012 08:28:22 -0400 Message-ID: <CAAKTTKNNmrB=8XtxcV6w1Q-RQ6J_xTTDGD4MHQFaDy6V3=B19Q@mail.gmail.com> From: keenerd <keenerd@gmail.com> To: ngircd-ml@ngircd.barton.de Subject: [ngIRCd-ML] systemd service Hello all. Linked is a service file for ngircd. Please add this to your source tree so other people don't have to learn to write service files ;-) https://projects.archlinux.org/svntogit/community.git/plain/trunk/ngircd.service?h=packages/ngircd -Kyle Keen Arch Linux TU http://kmkeen.com
2012-08-18ngt_RandomStr(): Add implicit cast to "unsigned".Alexander Barton
This fixes the following warning of Xcode 4.5: src/tool/tool.c:150:19: Implicit conversion loses integer precision: 'long' to 'unsigned int'
2012-08-16Fix a buffer overflow when initializing the random salt for "+x"Alexander Barton
This "off by one" buffer overflow has been introduced in commit 49385a98, "Implemented hashed cloaked hostnames for +x".
2012-08-11configure.in: Use AC_CONFIG_HEADER instead of AM_CONFIG_HEADERAlexander Barton
AM_CONFIG_HEADER is marked obsolete and will be removed in Automake 1.13.
2012-08-06Fix compiler warning when not building with ZLIB supportAlexander Barton
This fixes: irc.c: In function ‘Option_String’: irc.c:333:9: error: variable ‘options’ set but not used
2012-08-03Update NEWS and ChangeLog files for hashed cloaked hostnamesAlexander Barton
2012-08-03Hashed hostnames for CloakHostSebastian Köhler
Implemented support for hashed hostnames for CloakHost. The admin can use '%x' in both the CloakHost and CloakHostModeX setting. The config option CloakHostModeX was renamed to CloakHostSalt. This salt is used for both cloaking options.
2012-08-03Implemented hashed cloaked hostnames for +xSebastian Köhler
CloakHostModeX can now contain '%x'. It will be replace by the hash of the original client hostname. The new config option CloakHostModeXSalt defines the salt for the hash function. When CloakHostModeXSalt is not set a random salt will be generated after each server restart. Spelling fix in defines.h
2012-06-19ngIRCd release 19.2 rel-19.2Alexander Barton
2012-06-13doc/Capabilities.txt: document "multi-prefix" capabilityAlexander Barton
2012-06-13ngIRCd release 19.2~rc1 rel-19.2-rc1Alexander Barton
2012-06-11Merge branch 'bug124-CloakHostModeX'Alexander Barton
* bug124-CloakHostModeX: Describe "CloakHostModeX" in sample-ngircd.conf an ngircd.conf(5) Rename "CloakModeHost" option to "CloakHostModeX" Introduce new configuration option "CloakModeHost" This closes bug #124.
2012-06-09Update ChangeLog and NEWS filesAlexander Barton
2012-06-09Describe "CloakHostModeX" in sample-ngircd.conf an ngircd.conf(5)Alexander Barton
2012-06-09Rename "CloakModeHost" option to "CloakHostModeX"Alexander Barton
2012-06-09Introduce new configuration option "CloakModeHost"Christoph Biedl
This closes bug #124.
2012-06-09Correctly handle asynchronously re-established server linksAlexander Barton
Don't try to establish an outgoing server link after DNS lookup when this server re-connected on its own in the meantime. In addition, log a warning message if we try to update the connection index of an already connected server structure -- and ignore it. Up to now, both behaviour could lead to a race when the remote server connects to this daemon while it still prepares the outgoing connection: - The local server prepares the new outgoing connection ... - in the meantime the remote server becomes connected and registered. - Now the new outgoing connection overwrites the (correct) socket handle, - then the 2nd connection becomes disconnected: "already registered", - and the 1st connection becomes unhandled ("gets lost") because the configuration structure is reset because of the wrong socket handle. This patch hopefully fixes all these problems.
2012-06-08Log a debug message when SIGUSR2 is handledAlexander Barton
2012-06-07doc/Platforms.txt: more updatesAlexander Barton
Added: - armv6l/unkn./linux-gnueabi, gcc 4.4.5 - i686/pc/linux-gnu, gcc 2.7.2 Updated: - i386/pc/solaris2.11, gcc 4.2.3 Thanks to Götz Hoffart!
2012-06-02NoticeAuth: Fix test if IDENT reply has been invalidAlexander Barton
This fixes conn.c: In function ‘cb_Read_Resolver_Result’: conn.c:2252: warning: comparison between pointer and integer
2012-06-02IDENT reply: only allow alphanumeric characters in user nameAlexander Barton
Only alphanumeric characters are allowed in the user name, so ignore all IDENT replies that would violate this rule and use the one supplied by the USER command.
2012-06-01USER command: only allow alphanumeric characters in user nameAlexander Barton
Only alphanumeric characters are allowed in the user name, so terminate the connection if any "strage" characters have been supplied by the user. This is how other IRC daemons (like ircd2.11 and ircd-seven) behave ...
2012-05-29doc/Platforms.txt: add powerpc/apple/darwin7.9.0Alexander Barton
2012-05-23Change wording of "TLS initialized" messageAlexander Barton
Don't use the word "socket" to identify the connection number, but use the word "connection" like on all the other messages logged.
2012-05-22Pidfile_Create(): Don't leak file descriptor on error pathAlexander Barton
Detected by cppcheck: [src/ngircd/ngircd.c:502]: (error) Resource leak: pidfd
2012-05-19INSTALL: Add "satisfy prerequisites" sectionAlexander Barton
Include information for RedHat/Fedora and Debian/Ubuntu based Linux distributions.
2012-05-07NEWS, ChangeLog: fixed some misspellingsAlexander Barton
2012-05-01Numeric 005 (ISUPPORT), CHANMODES: add missing mode "r"Alexander Barton
2012-04-29doc/Platforms.txt: add "armv7l/unknown/linux-gnueabi"Alexander Barton
2012-04-29Add instructions for setting up Atheme.William Pitcock
2012-04-29irc-cap.c: mark arguments of Handle_CAP_ACK() as "unused"Alexander Barton
This fixes irc-cap.c: In function ‘Handle_CAP_ACK’: irc-cap.c:163: warning: unused parameter ‘Client’ irc-cap.c:163: warning: unused parameter ‘Arg’
2012-04-29irc-login.c, login.c: add missing include of "string.h"Alexander Barton
This fixes the following warnings with GCC 4.4.5 on Linux: irc-login.c: In function ‘IRC_PASS’: irc-login.c:92: warning: implicit declaration of function ‘strlen’ irc-login.c:92: warning: incompatible implicit declaration of built-in function ‘strlen’ irc-login.c:113: warning: incompatible implicit declaration of built-in function ‘strlen’ irc-login.c:129: warning: implicit declaration of function ‘strchr’ irc-login.c:129: warning: incompatible implicit declaration of built-in function ‘strchr’ irc-login.c:133: warning: implicit declaration of function ‘strcmp’ irc-login.c: In function ‘IRC_SERVICE’: irc-login.c:556: warning: incompatible implicit declaration of built-in function ‘strchr’ login.c: In function ‘Login_User’: login.c:131: warning: implicit declaration of function ‘strcmp’
2012-04-29doc/Modes.txt: Document missing channel mode "e"Alexander Barton
2012-04-28Merge branch 'master' of /srv/git/ngircdAlexander Barton
* 'master' of /srv/git/ngircd: "multi-prefix" capability 2/2: adjust NAME and WHO handlers "multi-prefix" capability 1/2: implement complete CAP infrastructure IRC_Send_NAMES(): Code cleanup New function Client_CapSet() in addition to Client_Cap{Add|Del} "CAP REQ" starts capability negotiation and delays user registration Xcode: update project file for Xcode 4.3 Correctly handle "CAP END", new client type CLIENT_WAITCAPEND Implement core IRC capability handling and "CAP" command New "login" source file Introduce_Client() => Client_Introduce(), and move it to client.c
2012-04-28contrib/platformtest.sh: support "CC=xxx MAKE=yyy ./platformtest.sh"Alexander Barton
Now you can use contrib/platformtest.sh on platforms that require a "special" make (not "make") or compiler (not cc/gcc) binary.
2012-04-28Merge branch 'capabilities'Alexander Barton
* capabilities: "multi-prefix" capability 2/2: adjust NAME and WHO handlers "multi-prefix" capability 1/2: implement complete CAP infrastructure IRC_Send_NAMES(): Code cleanup New function Client_CapSet() in addition to Client_Cap{Add|Del} "CAP REQ" starts capability negotiation and delays user registration Correctly handle "CAP END", new client type CLIENT_WAITCAPEND Implement core IRC capability handling and "CAP" command New "login" source file Introduce_Client() => Client_Introduce(), and move it to client.c
2012-04-28"multi-prefix" capability 2/2: adjust NAME and WHO handlersAlexander Barton
The NAME and WHO commands now return multiple usermode prfixes when the "multi-prefix" capability is in effect for the requesting client. See <http://ircv3.atheme.org/extensions/multi-prefix-3.1>
2012-04-28"multi-prefix" capability 1/2: implement complete CAP infrastructureAlexander Barton
Now ngIRCd is able to handle "CAP LS", "CAP REQ", "CAP LIST", and "CAP CLEAR" commands. "multi-prefix" can be set/unset, but has no functionality - yet!
2012-04-28IRC_Send_NAMES(): Code cleanupAlexander Barton
2012-04-27New function Client_CapSet() in addition to Client_Cap{Add|Del}Alexander Barton
2012-04-27"CAP REQ" starts capability negotiation and delays user registrationAlexander Barton
New helper function Set_CAP_Negotiation().