Commit Briefs

86cd2da8d5 Alexander Barton

ngIRCd Release 21~rc1 (tags/rel-21-rc1)


9b1fee8995 Alexander Barton

Update NEWS and ChangeLog files


2798a12444 Alexander Barton

Actually KILL clients on GLINE/KLINE

Kill all clients that match a new GLINE/KLINE mask and genrate apropriate KILL commands. These KILL commands can be superfluous, but are required when the IRC Operator isn't allowd to set remote G-Lines or if there are older servers in the network that don't kill clients on GLINE/KLINE. Closes bug #156.


02182143c3 Alexander Barton

Don't forward KILL commands for unknown clients


b5faf3055b Alexander Barton

New function IRC_KillClient() to kill clients

The old local function Kill_Nick() in irc.c has been an ugly hack. This patch implements a generic function for killing clients. Adjust all callers of Kill_Nick() and respect the return code!


cccd8fc957 Alexander Barton

Adjust log messages for invalid and spoofed prefixes

Now invalid prefixes aren't logged no more when originating from an other server (besides in debug mode), and spoofed prefixes are correctly logged using LOG_WARNING (from an other server) or LOG_ERR (from a client) levels. In addition, the log message texts have been adjusted to better reflect what will happen: commands with invalid prefixes are ignored and logged, commands with spoofed prefixes will result in the client being disconncted (regular users) or the command being ignored (other servers). This cleans up logging of commands related to already KILL'ed clients.


eccbd97e1f Alexander Barton

Remove CLIENT.oper_by_my, Client_SetOperByMe() and Client_OperByMe()

All places where Client_OperByMe() is used can either be converted to Client_HasMode(Client, 'o') or Op_Check(). And Op_Check() itself can use the connection handle for deciding whether the IRC Operator is a local user or not.


ec5ab4fcd1 Alexander Barton

Add support to show user links using "STATS L"

Change "stats L" to show servers and user links and restrict it to IRC Operators.



99db111bca Alexander Barton

doc/PAM.txt: add a slightly more useful example


27b9d32bf2 Federico G. Schwindt

Change the certificate fingerprint digest to sha256

While here correct some indentation.


0985d69cc6 Federico G. Schwindt

Change cipher defaults

Switch cipher defaults to HIGH:!aNULL:@STRENGTH (OpenSSL) or SECURE128 (GnuTLS).


d0977258ee Alexander Barton

Merge remote-tracking branch 'alex/bug162-SSLCipherList'

* alex/bug162-SSLCipherList: Cipher list selection for GnuTLS ConnSSL_Init_SSL(): correctly set CONN_SSL flag Cipher list selection for OpenSSL ConnSSL_InitLibrary(): Code cleanup


2cebfc54f5 Federico G. Schwindt

Fix server reconnection

In some error cases conn_id will be left as SERVER_WAIT and subsequently ignored in Check_Servers(). Ensure conn_id is set to NONE before returning from New_Server() if we couldn't establish the connection. Prompted by a report from gabrielgi-at-gmail-dot-com.


b9006acee3 Alexander Barton

Cipher list selection for GnuTLS

This patch implements the missing functionality for cipher list selection using GnuTLS (our OpenSSL code has this already).


de3e5fa77c Alexander Barton

Don't ignore SSL-related errors during startup

Without this patch, ngIRCd ignores SSL-related messages and continues to start up but only listens on plain text communication ports -- and this most probably isn't what the administrator wanted ... Closes bug #163.


51231ac8d4 Alexander Barton

ConnSSL_Init_SSL(): correctly set CONN_SSL flag

The CONN_SSL flag must be set before any calls to ConnSSL_Free()!


84ed46d4c1 Alexander Barton

Cipher list selection for OpenSSL

This patch introduces the possibility to arbitrarily select ciphers which should be promoted resp. declined when establishing a SSL connection with a client by implementing the new configuration option "CipherList". By default, OpenSSL would accept low and medium strength and RC-4 ciphers, which nowadays are known to be broken. This patch only implements the feature for OpenSSL. A GnuTLS counterpart has to be implemented in another patch ... Original patch by Bastian <bastian-ngircd@t6l.de>. Closes bug #162.


e8e0351985 Alexander Barton

TRACE: fix error message when there are too many parameters

ircd 2.11 ignores additional parameters silently, but I don't think that this is the correct behaviour either ...


849f85a05c Alexander Barton

ConnSSL_InitLibrary(): Code cleanup


131364def1 Alexander Barton

IRC_SetPenalty(): Code cleanup


bcb45da1b4 Federico G. Schwindt

Add more penalty times

Ensure before every numeric 461 there is a call to IRC_SetPenalty().


08f9d31d60 Federico G. Schwindt

Rework check for number of parameters

Move most of the checks that return numeric 461 into Handle_Request().


37609d6a4f Federico G. Schwindt

Reorder checks

Move oper and Conf_MorePrivacy checks after checking the number of parameters.


33c2d5e4e2 Federico G. Schwindt

Move the IRC_SetPenalty() call after the asserts