10 years agoInitial documentation for using PAM with ngIRCd
Alexander Barton [Mon, 12 Jul 2010 11:07:07 +0000 (13:07 +0200)]
Initial documentation for using PAM with ngIRCd

10 years agoImplement asynchronous user authentication using PAM
Alexander Barton [Mon, 12 Jul 2010 10:56:33 +0000 (12:56 +0200)]
Implement asynchronous user authentication using PAM

For each client connection a child process is forked which handles the
actual PAM authentication and reports the result back to the master
process using a pipe for communication.

While the PAM authentication is in process the daemon does not block.

10 years agoAdd new pam.{c|h} module to Xcode project
Alexander Barton [Mon, 12 Jul 2010 10:54:01 +0000 (12:54 +0200)]
Add new pam.{c|h} module to Xcode project

Adjust Xcode project and Mac OS X static config.h header to use PAM.

10 years agoAdd pam.{c|h} to project and implement PAM_Authenticate() function
Alexander Barton [Mon, 12 Jul 2010 10:53:08 +0000 (12:53 +0200)]
Add pam.{c|h} to project and implement PAM_Authenticate() function

10 years agoNew functions Client_[Set]OrigUser() to get/set user specified by peer
Alexander Barton [Sun, 11 Jul 2010 15:03:43 +0000 (17:03 +0200)]
New functions Client_[Set]OrigUser() to get/set user specified by peer

The Client_SetOrigUser() function is used to store the peer-provided
user name (see USER command) in its original form, not changed by
IDENT results, for example.

10 years agoDetect PAM libraries
Alexander Barton [Sun, 11 Jul 2010 15:01:45 +0000 (17:01 +0200)]
Detect PAM libraries

10 years agoRefactor Resolve_Read() into generic Proc_Read() function
Alexander Barton [Sun, 11 Jul 2010 14:58:30 +0000 (16:58 +0200)]
Refactor Resolve_Read() into generic Proc_Read() function

10 years agoMake Proc_Kill() more fault-tolerant
Alexander Barton [Sun, 11 Jul 2010 14:54:44 +0000 (16:54 +0200)]
Make Proc_Kill() more fault-tolerant

10 years agoNew function Conn_GetProcStat()
Alexander Barton [Sun, 11 Jul 2010 13:15:23 +0000 (15:15 +0200)]
New function Conn_GetProcStat()

Get PROC_STAT sub-process structure of a given connection.

10 years agoCode cleanup: don't reset penalty time on DNS resolver result
Alexander Barton [Sun, 11 Jul 2010 13:12:17 +0000 (15:12 +0200)]
Code cleanup: don't reset penalty time on DNS resolver result

See commit d4632a727fbee6: it's not necessary any more!

10 years agoNew function Proc_GenericSignalHandler()
Alexander Barton [Wed, 30 Jun 2010 22:39:35 +0000 (00:39 +0200)]
New function Proc_GenericSignalHandler()

10 years agoRename Log_[{Init|Exit}_]Resolver to Log_[{Init|Exit}_]Subprocess
Alexander Barton [Wed, 30 Jun 2010 22:34:56 +0000 (00:34 +0200)]
Rename Log_[{Init|Exit}_]Resolver to Log_[{Init|Exit}_]Subprocess

Rename Log_Init_Resolver, Log_Exit_Resolver, and Log_Resolver to
Log_Init_Subprocess, Log_Exit_Subprocess, and Log_Subprocess and
make it more generic thereby.

10 years agoDon't #include client.h when conn.h/conn-func.h is already included
Alexander Barton [Wed, 30 Jun 2010 21:49:52 +0000 (23:49 +0200)]
Don't #include client.h when conn.h/conn-func.h is already included

conn.h and cinn-func.h both already #include client.h, so it is
not needed to do it twice.

10 years agoNew function Conn_GetFromProc() to get CONN_ID of a subprocess
Alexander Barton [Tue, 29 Jun 2010 21:38:39 +0000 (23:38 +0200)]
New function Conn_GetFromProc() to get CONN_ID of a subprocess

Get CONN_ID from file descriptor associated to a subprocess structure.

10 years agoResolver: Implement signal handler and catch TERM signal
Alexander Barton [Fri, 21 May 2010 21:53:48 +0000 (23:53 +0200)]
Resolver: Implement signal handler and catch TERM signal

10 years agoDon't set a penalty time when doing DNS lookups
Alexander Barton [Fri, 21 May 2010 21:47:28 +0000 (23:47 +0200)]
Don't set a penalty time when doing DNS lookups

The logic isn't as described in the source and intended by this code:
ngIRCd doesn't wait for the asynchronous resolver process until the set
penalty time is over, but until the forked process terminates or the
initial connection timeout (= PongTimeout) triggers.

So don't set the penalty time at all and remove the wrong comment.

10 years agoUpdate comments: subprocesses not only can be resolver processes
Alexander Barton [Fri, 21 May 2010 21:44:20 +0000 (23:44 +0200)]
Update comments: subprocesses not only can be resolver processes

10 years agoRefactoring: Rename CONNECTION.res_stat to .proc_stat
Alexander Barton [Fri, 21 May 2010 20:48:34 +0000 (22:48 +0200)]
Refactoring: Rename CONNECTION.res_stat to .proc_stat

We want to use this process status variable not only for the
resolver subprocesses but other asynchronous tasks as well;
so let's name it more generic.

10 years agoNew "module" proc.c/proc.h for generic process handling
Alexander Barton [Tue, 18 May 2010 15:38:12 +0000 (17:38 +0200)]
New "module" proc.c/proc.h for generic process handling

The new "module" proc.c is used for functions dealing with child
processes. At the moment, it is only used by the asynchronous resolver.

All the functions already implemented habe been migrated from the
resolver code base, and the rest of the ngIRCd source code has been
adepted to the new namespace and calling conventions.

The goal is to develop "generic" process handling functions that can
be used for other purposes as well, e.g. running processes on client
connects etc.

10 years agoOnly #include resolve.h if it is really needed
Alexander Barton [Tue, 18 May 2010 15:06:31 +0000 (17:06 +0200)]
Only #include resolve.h if it is really needed

10 years agoFix redundant redeclaration of Conn_Count*() functions
Alexander Barton [Fri, 25 Jun 2010 22:45:11 +0000 (00:45 +0200)]
Fix redundant redeclaration of Conn_Count*() functions

The wrongly placed #endif lead to the following compiler warnings:

conn.h:125: warning: redundant redeclaration of ‘Conn_Count’
conn.h:125: warning: previous declaration of ‘Conn_Count’ was here
conn.h:126: warning: redundant redeclaration of ‘Conn_CountMax’
conn.h:126: warning: previous declaration of ‘Conn_CountMax’ was here
conn.h:127: warning: redundant redeclaration of ‘Conn_CountAccepted’
conn.h:127: warning: previous declaration of ‘Conn_CountAccepted’ was here

10 years agoconst'ify Conn_WriteStr() function
Alexander Barton [Fri, 25 Jun 2010 22:44:37 +0000 (00:44 +0200)]
const'ify Conn_WriteStr() function

10 years agoconst'ify Send_ListChange() function in irc-mode.c
Alexander Barton [Fri, 25 Jun 2010 22:42:12 +0000 (00:42 +0200)]
const'ify Send_ListChange() function in irc-mode.c

10 years agoconst'ify IRC_WriteStrXXX() and Get_Prefix() functions
Alexander Barton [Fri, 25 Jun 2010 22:38:20 +0000 (00:38 +0200)]
const'ify IRC_WriteStrXXX() and Get_Prefix() functions

10 years agoconst'ify command name variable in _COMMAND strcuture
Alexander Barton [Fri, 25 Jun 2010 22:37:06 +0000 (00:37 +0200)]
const'ify command name variable in _COMMAND strcuture

10 years agoconst'ify Client_TypeText()
Alexander Barton [Fri, 25 Jun 2010 22:31:08 +0000 (00:31 +0200)]
const'ify Client_TypeText()

10 years agoAdd some documentation for using BOPM with ngIRCd bug103-ConnNotice
Alexander Barton [Fri, 25 Jun 2010 13:19:39 +0000 (15:19 +0200)]
Add some documentation for using BOPM with ngIRCd

10 years agoImplement user mode "c": receive connect/disconnect NOTICEs
Alexander Barton [Sat, 22 May 2010 15:19:24 +0000 (17:19 +0200)]
Implement user mode "c": receive connect/disconnect NOTICEs

Users having the user mode "c" set receive NOTICE messages on each
new client connection to the local server as well as disconnects.
Only IRC operators (users having the mode "o" set) are allowed to
set the 'c' user mode.

These connect/disconnect messages can be useful for open proxy
scanners -- BOPM ( is now functional
with ngIRCd, for example.

10 years agoRefactor Wall_ServerNotice() into more generic Log_ServerNotice()
Alexander Barton [Sat, 22 May 2010 15:10:22 +0000 (17:10 +0200)]
Refactor Wall_ServerNotice() into more generic Log_ServerNotice()

Log_ServerNotice() sends a messages to all users having a given
user mode set.

10 years agoNew function Conn_IPA(): get client IP address as string
Alexander Barton [Sat, 22 May 2010 14:35:02 +0000 (16:35 +0200)]
New function Conn_IPA(): get client IP address as string

10 years agongircd.init: require $network $remote_fs when stopping ngircd
Alexander Barton [Thu, 24 Jun 2010 22:10:56 +0000 (00:10 +0200)]
ngircd.init: require $network $remote_fs when stopping ngircd

10 years agoShow SSL status in WHOIS, numeric 275
Neale Pickett [Fri, 11 Jun 2010 22:32:41 +0000 (17:32 -0500)]
Show SSL status in WHOIS, numeric 275

"I've been wanting this for years and finally took the 5 minutes to
patch it in. I took the response code (275) from whatever's running
OFTC's IRC network."
  -- Neale Pickett <>, Fri, 11 Jun 2010 17:32:41 -0500

(OFTC is running Hybrid ircd.)

10 years agoInclude correct header files when testing for arpa/inet.h (Closes: #105)
Alexander Barton [Tue, 8 Jun 2010 13:23:04 +0000 (15:23 +0200)]
Include correct header files when testing for arpa/inet.h (Closes: #105)

Tested on OpenBSD 4.7, OpenBSD 4.1, FreeBSD 8, Linux and Mac OS X.
Thanks to rck <> for reporting and testing!

10 years agoRevert "configure: make implicit declarations fatal"
Florian Westphal [Sat, 29 May 2010 16:47:27 +0000 (18:47 +0200)]
Revert "configure: make implicit declarations fatal"

This reverts commit b3a6c33da0b12ba74dc395979b677813d4bc2c0f.

apparently not all gcc versions support this 8-(

10 years agoconfigure: make implicit declarations fatal
Florian Westphal [Sat, 29 May 2010 11:06:19 +0000 (13:06 +0200)]
configure: make implicit declarations fatal

from bugzilla #105:
"ngircd-16 works great under openbsd4.7/i386, but it segfaults on

Caused by missing function prototypes and the resulting truncation of
pointer to int.

Lets try to catch these bugs during compilation instead of SIGSEGV.

10 years agoDon't access already freed memory in IRC_KILL()
Alexander Barton [Sat, 22 May 2010 15:03:54 +0000 (17:03 +0200)]
Don't access already freed memory in IRC_KILL()

It is not possible to call Conn_Close() after Client_Destroy() has been
called, because Conn_Close wants to access the CLIENT structure which
then has been freed already.

Fix IRC_KILL to use Conn_Close() for local clients and Client_Destroy()
for remote clients only (and never both).

10 years agofix "beeing" typo
Florian Westphal [Fri, 14 May 2010 17:43:08 +0000 (19:43 +0200)]
fix "beeing" typo

reported by Fabio Scotoni via bugzilla #101.

10 years agoSSL/TLS: fix bogus 'socket closed' error message
Florian Westphal [Fri, 7 May 2010 21:25:59 +0000 (23:25 +0200)]
SSL/TLS: fix bogus 'socket closed' error message

When we get there then the ssl handshake has failed, or
we could not create a ssl context because ssl library
initialization failed on startup.

Reflect that in the log message.

10 years agongIRCd release 16 rel-16
Alexander Barton [Sun, 2 May 2010 13:25:35 +0000 (15:25 +0200)]
ngIRCd release 16

10 years agodoc/SSL: remove line continuation marker
Florian Westphal [Sat, 1 May 2010 18:29:14 +0000 (20:29 +0200)]
doc/SSL: remove line continuation marker

some people got confused by the '\' line continuation marker,
thus put everything in a single line, even if the line gets overly long.

10 years agongIRCd release 16~rc2 rel-16-rc2
Alexander Barton [Sun, 25 Apr 2010 11:13:11 +0000 (13:13 +0200)]
ngIRCd release 16~rc2

10 years agoDon't reset counters on RESTART numeric-250
Alexander Barton [Sun, 25 Apr 2010 10:54:13 +0000 (12:54 +0200)]
Don't reset counters on RESTART

When ngIRCd restarts, all the connection counters are preserved now,
as well as the command counters for example.

It's unclear if resetting or not resetting is the "correct" behaviour,
but it's quite clear that the behaviour should be consistent for all the
counters ngIRCd uses ...

And initializing "WCounter", the global but temporary write counter,
is not necessarry at all: it is initialized (reset) before its use in
the command parser (see parse.c).

10 years agoNew numeric RPL_STATSCONN (250): display connection statistics
Alexander Barton [Fri, 23 Apr 2010 21:30:14 +0000 (23:30 +0200)]
New numeric RPL_STATSCONN (250): display connection statistics

The RPL_STATSCONN numeric (250) displays information about the
highest simoultaneous connection count and the number of all
accepted connections since the daemon started up.

Used by ircd-Hybrid, Bahamut, and Unreal for example.

10 years agoDisplay total number of served connections on daemon shutdown
Alexander Barton [Fri, 23 Apr 2010 21:29:22 +0000 (23:29 +0200)]
Display total number of served connections on daemon shutdown

10 years agoEnhace connection statistics counters
Alexander Barton [Fri, 23 Apr 2010 21:25:34 +0000 (23:25 +0200)]
Enhace connection statistics counters

This patch enables ngIRCd to count the highest maximum simultaneous
connections and all the connections accepted since startup.

New functions:
- Conn_Count(): get current connections
- Conn_CountMax(): maximum simultaneous connections
- Conn_CountAccepted(): number of connections accepted

10 years agoConn_Init: code cleanup
Alexander Barton [Fri, 23 Apr 2010 20:23:51 +0000 (22:23 +0200)]
Conn_Init: code cleanup

10 years agoUpdated doc/Platforms.txt
Alexander Barton [Fri, 23 Apr 2010 09:04:39 +0000 (11:04 +0200)]
Updated doc/Platforms.txt

10 years agoOnly include <netinet/in_systm.h> if it exists
Alexander Barton [Fri, 23 Apr 2010 09:04:15 +0000 (11:04 +0200)]
Only include <netinet/in_systm.h> if it exists

10 years agoInclude netinet/{in.h, in_systm.h} when checking for netinet/ip.h
Alexander Barton [Fri, 23 Apr 2010 08:55:50 +0000 (10:55 +0200)]
Include netinet/{in.h, in_systm.h} when checking for netinet/ip.h

This solves warning messages of autoconf on e.g. FreeBSD 8:

configure: WARNING: netinet/ip.h: present but cannot be compiled
configure: WARNING: netinet/ip.h:   check for missing prerequisite headers?

11 years agoInclude netinet/in_systm.h alongside netinet/ip.h
Alexander Barton [Sun, 11 Apr 2010 16:58:29 +0000 (16:58 +0000)]
Include netinet/in_systm.h alongside netinet/ip.h

This fixes the following error when compiling on e.g. FreeBSD 6.x:

In file included from conn.c:40:
/usr/include/netinet/ip.h:160: error: syntax error before "n_long"
/usr/include/netinet/ip.h:163: error: syntax error before "n_long"

11 years agoFix gcc warning "ignoring return value of ..."
Alexander Barton [Fri, 9 Apr 2010 18:08:47 +0000 (20:08 +0200)]
Fix gcc warning "ignoring return value of ..."

This patch fixes two warnings of gcc 4.4.3 when used with eglibc 2.11.1:

ngircd.c: In function ‘NGIRCd_Init’:
ngircd.c:801: warning: ignoring return value of ‘chdir’, declared with
 attribute warn_unused_result
conn.c: In function ‘Simple_Message’:
conn.c:2041: warning: ignoring return value of ‘write’, declared with
 attribute warn_unused_result

The first by checking the return code and an appropriate error message,
the second by "better" ignoring it (which is correct there!) ...

11 years agoOnly compile in Get_Error() if really needed
Alexander Barton [Fri, 9 Apr 2010 18:06:44 +0000 (20:06 +0200)]
Only compile in Get_Error() if really needed

This fixes "resolve.c:150: warning: ‘Get_Error’ defined but not used".

11 years agoUpdated some more copyright notices, it's 2010 already (part 2)
Alexander Barton [Fri, 2 Apr 2010 12:22:07 +0000 (14:22 +0200)]
Updated some more copyright notices, it's 2010 already (part 2)

Silly me forgot the most important place, the program output itself ...

11 years agoUpdated some more copyright notices, it's 2010 already :-)
Alexander Barton [Fri, 2 Apr 2010 12:19:36 +0000 (14:19 +0200)]
Updated some more copyright notices, it's 2010 already :-)

11 years agongIRCd release 16~rc1 rel-16-rc1
Alexander Barton [Thu, 25 Mar 2010 14:57:11 +0000 (15:57 +0100)]
ngIRCd release 16~rc1

11 years agoUpdated NEWS and ChangeLog file for ngIRCd 16-rc1
Alexander Barton [Thu, 25 Mar 2010 13:55:31 +0000 (14:55 +0100)]
Updated NEWS and ChangeLog file for ngIRCd 16-rc1

11 years agoDon't use port 6668 as example for both "Ports" and "SSLPorts"
Alexander Barton [Tue, 16 Mar 2010 15:16:03 +0000 (16:16 +0100)]
Don't use port 6668 as example for both "Ports" and "SSLPorts"

11 years only add -lnsl when needed
Florian Westphal [Wed, 17 Feb 2010 21:23:14 +0000 (22:23 +0100)] only add -lnsl when needed

dpkg-shlibdeps: warning: dependency on [..]
(they use none of its symbols).

As shown via commit 2b14234abc252383679bae2d23861b773dc9713e
(dpkg-shlibdeps: warning: dependency on and the
following revert of that commit, we cannot simply drop
the AC_CHECK_LIB(nsl). Although -lnsl is indeed unneeded
when glibc is used, some platforms (e.g. Solaris) need it.

Use AC_SEARCH_LIBS instead to only link when the library exports
a particular symbol.

11 years agoImplement WEBIRC command
Alexander Barton [Wed, 10 Feb 2010 23:01:53 +0000 (00:01 +0100)]
Implement WEBIRC command

The WEBIRC command is used by some Web-to-IRC gateways to set the correct
user name and host name of users instead of their own.

Syntax: WEBIRC <password> <username> <hostname> <ip-address>

The <password> must be set using the new configuration variable "WebircPassword" in the [Global] section of ngircd.conf.

Please note that the <ip-address> is currently not used by ngIRCd (we don't store it in the CLIENT structure, only the resolved hostname).

11 years agongircd.conf.5: Document missing "Password" variable
Alexander Barton [Wed, 10 Feb 2010 22:47:05 +0000 (23:47 +0100)]
ngircd.conf.5: Document missing "Password" variable

11 years agoRe-format Init_New_Client() function
Alexander Barton [Wed, 10 Feb 2010 22:40:03 +0000 (23:40 +0100)]
Re-format Init_New_Client() function

11 years agoNew README-Interix.txt for running ngIRCd on MS SFU and MS SUA
Alexander Barton [Thu, 4 Feb 2010 23:24:33 +0000 (00:24 +0100)]
New README-Interix.txt for running ngIRCd on MS SFU and MS SUA

11 years agoAdded "i586/pc/interix3.5" (MS Services for UNIX) to Platforms.txt
Alexander Barton [Fri, 22 Jan 2010 17:26:26 +0000 (18:26 +0100)]
Added "i586/pc/interix3.5" (MS Services for UNIX) to Platforms.txt

11 years agoQuote received messages of ERROR commands in log output
Alexander Barton [Tue, 19 Jan 2010 18:20:56 +0000 (19:20 +0100)]
Quote received messages of ERROR commands in log output

11 years agoImplemented new "secure clients only" channel mode: +z
Alexander Barton [Sun, 17 Jan 2010 13:19:35 +0000 (14:19 +0100)]
Implemented new "secure clients only" channel mode: +z

Only clients using a SSL encrypted connection to the server are
allowed to join such a channel.

But please note three things:

a) already joined clients are not checked when setting this mode,
b) IRC operators are always allowed to join every channel, and
c) remote clients using a server not supporting this mode are not
   checked either and therefore always allowed to join.

11 years agoClean up and document IRC_STATS() function
Alexander Barton [Sat, 16 Jan 2010 22:24:19 +0000 (23:24 +0100)]
Clean up and document IRC_STATS() function

11 years agoClean up and document IRC_JOIN() and join_allowed() functions
Alexander Barton [Sat, 16 Jan 2010 21:30:55 +0000 (22:30 +0100)]
Clean up and document IRC_JOIN() and join_allowed() functions

11 years agoShow our name (IRCD=ngIRCd) in ISUPPORT (005) numeric
Alexander Barton [Sat, 16 Jan 2010 13:59:07 +0000 (14:59 +0100)]
Show our name (IRCD=ngIRCd) in ISUPPORT (005) numeric

Inspired by Hyperion IRC daemon.

11 years agoAdded missing modes to USERMODES #define
Alexander Barton [Sat, 16 Jan 2010 13:07:27 +0000 (14:07 +0100)]
Added missing modes to USERMODES #define

Now the numeric 004 correctly reports all the supported user and channel
modes (user modes "r" and "w" were missing), e. g.: 004 a ngircd-15 aiorsw biIklmnoPstv

11 years agoUpdated links to ngIRCd homepage (bug tracker, mailing list)
Alexander Barton [Fri, 1 Jan 2010 17:58:56 +0000 (18:58 +0100)]
Updated links to ngIRCd homepage (bug tracker, mailing list)

11 years agosetsockopt(): use IPPROTO_IP instead of SOL_IP to set IPTOS_LOWDELAY
Alexander Barton [Wed, 30 Dec 2009 23:55:42 +0000 (00:55 +0100)]
setsockopt(): use IPPROTO_IP instead of SOL_IP to set IPTOS_LOWDELAY

11 years agoReally test for netinet/ip.h and set HAVE_NETINET_IP_H
Alexander Barton [Wed, 30 Dec 2009 23:38:47 +0000 (00:38 +0100)]
Really test for netinet/ip.h and set HAVE_NETINET_IP_H

11 years agoReverseLookup(): fix documentation comment
Alexander Barton [Wed, 30 Dec 2009 22:45:02 +0000 (23:45 +0100)]
ReverseLookup(): fix documentation comment

11 years agoMove NewConnection handling from callbacks to New_Connection()
Alexander Barton [Wed, 30 Dec 2009 22:42:43 +0000 (23:42 +0100)]
Move NewConnection handling from callbacks to New_Connection()

11 years agoConnection functions: add some more documentation comments
Alexander Barton [Wed, 30 Dec 2009 22:35:17 +0000 (23:35 +0100)]
Connection functions: add some more documentation comments

11 years agoClean up conn.{c|h} a little bit
Alexander Barton [Wed, 30 Dec 2009 22:32:47 +0000 (23:32 +0100)]
Clean up conn.{c|h} a little bit

11 years agoXcode: fix "-Wuninitialized is not supported without -O"
Alexander Barton [Sun, 27 Dec 2009 16:21:37 +0000 (17:21 +0100)]
Xcode: fix "-Wuninitialized is not supported without -O"

Fix Apple Xcode warning "cc1: warning: -Wuninitialized is not supported
without -O" when using the "Debug" build target:

Detection of uninitialized automatic variable requires data flow analsys
that is only enabled during optimized compilation.

11 years agoAdded i686/unknown/kfreebsd7.2-gnu
Alexander Barton [Wed, 2 Dec 2009 21:22:35 +0000 (22:22 +0100)]
Added i686/unknown/kfreebsd7.2-gnu

11 years Only show latest commit
Alexander Barton [Sun, 15 Nov 2009 17:25:36 +0000 (18:25 +0100)] Only show latest commit

Only show latest GIT commuit ID as version number,
even when the last commit has been a merge.

11 years agoMerge commit 'cade80dcf516f40e7d53124bc98526e6e5b3fb66'
Alexander Barton [Sat, 7 Nov 2009 20:51:36 +0000 (21:51 +0100)]
Merge commit 'cade80dcf516f40e7d53124bc98526e6e5b3fb66'

* commit 'cade80dcf516f40e7d53124bc98526e6e5b3fb66':
  Added missing contrib/ to distribution

11 years agoAdded missing contrib/ to distribution rel-15
Alexander Barton [Sat, 7 Nov 2009 20:06:30 +0000 (21:06 +0100)]
Added missing contrib/ to distribution

11 years agoRemove limit on max number of configured irc operators.
Florian Westphal [Sat, 7 Nov 2009 11:14:37 +0000 (12:14 +0100)]
Remove limit on max number of configured irc operators.

11 years agongIRCd release 15
Alexander Barton [Sat, 7 Nov 2009 12:57:15 +0000 (13:57 +0100)]
ngIRCd release 15

11 years agoconfigtest: print ssl config options even when unset
Florian Westphal [Sat, 17 Oct 2009 12:31:27 +0000 (14:31 +0200)]
configtest: print ssl config options even when unset

Print "SSLOptionVar =" instead of omitting the option when
running --configtest with ssl enabled.
This better matches the behaviour of other options, e.g.  ChrootDir.

11 years agongIRCd release 15~rc1 rel-15-rc1
Alexander Barton [Thu, 15 Oct 2009 08:04:34 +0000 (10:04 +0200)]
ngIRCd release 15~rc1

11 years agoUpdated NEWS and ChangeLog files
Alexander Barton [Sat, 3 Oct 2009 14:45:09 +0000 (16:45 +0200)]
Updated NEWS and ChangeLog files

11 years agoMake sure forwarded CONNECT commands are handled correctly bug73-SQUIT
Alexander Barton [Wed, 9 Sep 2009 21:00:45 +0000 (23:00 +0200)]
Make sure forwarded CONNECT commands are handled correctly

11 years agoGenerate WALLOPS message on operator-generated SQUIT
Alexander Barton [Tue, 19 May 2009 21:06:28 +0000 (23:06 +0200)]
Generate WALLOPS message on operator-generated SQUIT

11 years agoEnable SQUIT command for IRC Operators
Alexander Barton [Tue, 19 May 2009 20:41:45 +0000 (22:41 +0200)]
Enable SQUIT command for IRC Operators

This patch enables IRC Operators to use the SQUIT command as specified in
RFC 2812, section 3.1.8 "Squit".

When forwarding SQUIT commands, the server connected to the target will
drop the connection (not the target server itself!).

Please note:

 - the configuration option "AllowRemoteOper" mus be enabled on the
   server disconnecting the target to allow forwarding of SQUIT commands.
 - if the remote server is configured to establish the connection, it
   will just do this; so the disconnect is not permanent in this case!

11 years agoXcode: added new op.{c|h} to project file
Alexander Barton [Fri, 24 Apr 2009 22:37:27 +0000 (00:37 +0200)]
Xcode: added new op.{c|h} to project file

11 years agoUse functions provided by op.c "module"
Alexander Barton [Wed, 22 Apr 2009 21:24:15 +0000 (23:24 +0200)]
Use functions provided by op.c "module"

Local functions Check_Oper() and No_Privileges() have been replaced by
global functions in op.c "module": Op_Check() and Op_NoPrivileges().

11 years agoNew "module" op.c/op.h for IRC operator related functions
Alexander Barton [Wed, 22 Apr 2009 21:17:25 +0000 (23:17 +0200)]
New "module" op.c/op.h for IRC operator related functions

The new "module" op.c is used to implement functions related to IRC Ops.
At the moment, these two functions are available:

 - Op_Check() to check for a valid IRC Op, and
 - Op_NoPrivileges() to generate "permission denied" messages.

11 years agoAllow forwarding of CONNECT commands.
Alexander Barton [Tue, 22 Jul 2008 16:38:05 +0000 (18:38 +0200)]
Allow forwarding of CONNECT commands.

The syntax of the CONNECT command now is:

  - CONNECT <server-id>
  - CONNECT <server-id> <port>
  - CONNECT <server-id> <port> <target>
  - CONNECT <server-id> <port> <host> <my-pwd> <peer-pwd>
  - CONNECT <server-id> <port> <host> <my-pwd> <peer-pwd> <target>

Note: the configuration option "AllowRemoteOper" mus be enabled on the
target server to allow forwarding of CONNECT commands.

11 years agoCheck_Oper(): check origin of forwarded messages instead of server.
Alexander Barton [Tue, 22 Jul 2008 16:35:35 +0000 (18:35 +0200)]
Check_Oper(): check origin of forwarded messages instead of server.

11 years agoNo_Privileges(): handle forwarded messages.
Alexander Barton [Tue, 22 Jul 2008 16:33:44 +0000 (18:33 +0200)]
No_Privileges(): handle forwarded messages.

11 years agoIRC_SendWallops(): support format string and variable parameter lists.
Alexander Barton [Tue, 22 Jul 2008 14:54:12 +0000 (16:54 +0200)]
IRC_SendWallops(): support format string and variable parameter lists.

11 years agoCONNECT, DISCONNECT: generate WALLOPS messages
Alexander Barton [Tue, 6 May 2008 15:51:45 +0000 (17:51 +0200)]

11 years agoNew function IRC_SendWallops().
Alexander Barton [Tue, 6 May 2008 13:30:29 +0000 (15:30 +0200)]
New function IRC_SendWallops().

Implement new global function IRC_SendWallops() that can be called by
other functions to generate WALLOPS messages to users with +w mode.

11 years agoCode cleanup of IRC_DISCONNECT().
Alexander Barton [Sun, 13 Apr 2008 01:19:29 +0000 (03:19 +0200)]
Code cleanup of IRC_DISCONNECT().

11 years agoCode cleanup of IRC_SQUIT() in preparation to deal with bug #73.
Alexander Barton [Wed, 9 Apr 2008 17:49:34 +0000 (19:49 +0200)]
Code cleanup of IRC_SQUIT() in preparation to deal with bug #73.