ngircd-alex.git
9 years agoDisplay correct error message when "Server{UID|GID}" is invalid
Alexander Barton [Tue, 3 Jan 2012 19:37:41 +0000 (20:37 +0100)]
Display correct error message when "Server{UID|GID}" is invalid

This partly closes bug #118. ngIRCd still starts up even when
Server{UID|GID} is invalid: then the daemon falls back to "nobody"
when running with root(0) privileges (as before).

9 years agoNGIRCd_Init(): Code cleanup
Alexander Barton [Tue, 3 Jan 2012 18:34:54 +0000 (19:34 +0100)]
NGIRCd_Init(): Code cleanup

9 years agomain(): Code cleanup
Alexander Barton [Tue, 3 Jan 2012 18:25:31 +0000 (19:25 +0100)]
main(): Code cleanup

9 years agoREADME: point to included COPYING file, not gnu.org
Alexander Barton [Tue, 3 Jan 2012 17:56:31 +0000 (18:56 +0100)]
README: point to included COPYING file, not gnu.org

9 years agoUpdate Copyright notices for 2012
Alexander Barton [Tue, 3 Jan 2012 10:30:45 +0000 (11:30 +0100)]
Update Copyright notices for 2012

9 years agolists: don't crash if reason ptr is NULL
Florian Westphal [Mon, 2 Jan 2012 22:37:46 +0000 (23:37 +0100)]
lists: don't crash if reason ptr is NULL

commit 15fec92ed75c3de0b32c40d005e93e3f61aef77e
(Update list item, if it already exists) can make ngircd
crash because 'Reason' can be NULL, as reported by
Cahata on the ngircd mailing list.

Doesn't affect any released ngircd versions.

Also, make sure that we do not pass NULL as arguments
to a '%s' printf-like function.

9 years agoDon't stop join handling on faulty channel, skip it
Alexander Barton [Mon, 2 Jan 2012 14:23:17 +0000 (15:23 +0100)]
Don't stop join handling on faulty channel, skip it

When JOIN is received with more than one channel name, don't stop
processing on the first error (e.g. bad name, wrong channel key, ...)
but report an error and continue with the other given channel names.

Reported by Cahata -- thanks!

9 years agoIRC_JOIN(): Code cleanup
Alexander Barton [Mon, 2 Jan 2012 14:22:52 +0000 (15:22 +0100)]
IRC_JOIN(): Code cleanup

9 years agoISON command: reply with correct upper-/lowercase nick names
Alexander Barton [Mon, 2 Jan 2012 14:06:44 +0000 (15:06 +0100)]
ISON command: reply with correct upper-/lowercase nick names

Reported by Cahata -- thanks!

9 years agoIRC_ISON(): Code cleanup
Alexander Barton [Mon, 2 Jan 2012 14:04:40 +0000 (15:04 +0100)]
IRC_ISON(): Code cleanup

9 years agoRemove unused "bool have_arg" from IRC_WHO()
Alexander Barton [Sun, 1 Jan 2012 23:56:31 +0000 (00:56 +0100)]
Remove unused "bool have_arg" from IRC_WHO()

This fixes:

 irc-info.c: In function ‘IRC_WHO’:
 irc-info:936:18: warning: variable ‘have_arg’ set but not used

9 years agoUpdate NEWS and ChangeLog for next ngIRCd release
Alexander Barton [Sun, 1 Jan 2012 22:14:28 +0000 (23:14 +0100)]
Update NEWS and ChangeLog for next ngIRCd release

9 years agongircd.conf.5: reword description of "Ports" variable
Alexander Barton [Sun, 1 Jan 2012 16:39:07 +0000 (17:39 +0100)]
ngircd.conf.5: reword description of "Ports" variable

9 years agoNew configuration option "PAMIsOptional"
Alexander Barton [Sun, 1 Jan 2012 16:12:36 +0000 (17:12 +0100)]
New configuration option "PAMIsOptional"

When "PAMIsOptional" is set, clients not sending a password are still
allowed to connect: they won't become "identified" and keep the "~"
character prepended to their supplied user name.

9 years agoPAM: don't use global password buffer for conv struct
Alexander Barton [Sat, 31 Dec 2011 17:06:17 +0000 (18:06 +0100)]
PAM: don't use global password buffer for conv struct

Use the pointer of the password of the client directly.
Eventually we can get rid of the global password again ...

9 years agodoc/Modes.txt: document channel mode "r"
Alexander Barton [Sat, 31 Dec 2011 17:04:58 +0000 (18:04 +0100)]
doc/Modes.txt: document channel mode "r"

And make clear, that user mode "r" and channel mode "r" are not set by
ngIRCd itself but by IRC services.

9 years agoFixed handling of WHO commands
Alexander Barton [Fri, 30 Dec 2011 13:52:48 +0000 (14:52 +0100)]
Fixed handling of WHO commands

This fixes two bugs:
 - "WHO <nick>" returned nothing at all if the user was "+i"
   (reported by Cahata, thanks).
 - "WHO <nick|nickmask>" returned channel names instead of "*"
   when the user was member of a (visible) channel.

Clean up code and add documentation as well.

9 years agoRemove unused "time_t now" from Lists_Check()
Alexander Barton [Fri, 30 Dec 2011 00:02:44 +0000 (01:02 +0100)]
Remove unused "time_t now" from Lists_Check()

This fixes:

 lists.c: In function ‘Lists_Check’:
 lists.c:330:9: warning: variable ‘now’ set but not used

9 years agoFixed some spelling errors in documentation and code comments
Alexander Barton [Thu, 29 Dec 2011 23:50:27 +0000 (00:50 +0100)]
Fixed some spelling errors in documentation and code comments

Thanks to Christoph Biedl!

9 years agocontrib/Debian/control: Update and complete "Build-Depends"
Alexander Barton [Thu, 29 Dec 2011 23:40:18 +0000 (00:40 +0100)]
contrib/Debian/control: Update and complete "Build-Depends"

9 years agoUpdate our Debian package descriptions with "official" ones
Alexander Barton [Thu, 29 Dec 2011 23:36:26 +0000 (00:36 +0100)]
Update our Debian package descriptions with "official" ones

See Debian Bug #648241 for details.

9 years agoFixed typo in two error messages
Alexander Barton [Thu, 29 Dec 2011 23:32:11 +0000 (00:32 +0100)]
Fixed typo in two error messages

Thanks to Christoph Biedl!

9 years agoLUSERS reply: only count "visible" channels
Alexander Barton [Wed, 28 Dec 2011 14:07:24 +0000 (15:07 +0100)]
LUSERS reply: only count "visible" channels

Rename Channel_Count() to Channel_CountVisible() and only count channels
that are visible to the requesting client, so the existence of secret
channels is no longer revealed by using LUSERS.

Reported by Cahata -- thanks!

9 years agoIRC_Send_LUSERS(): Code cleanup
Alexander Barton [Wed, 28 Dec 2011 13:52:21 +0000 (14:52 +0100)]
IRC_Send_LUSERS(): Code cleanup

9 years agoDon't stop mode handling on unknown modes; skip it
Alexander Barton [Wed, 28 Dec 2011 13:39:47 +0000 (14:39 +0100)]
Don't stop mode handling on unknown modes; skip it

Unknown user and channel modes no longer stop the mode parser, but are
simply ignored. Therefore modes after the unknown one are now handled.

This is how ircd2.10/ircd2.11/ircd-seven behave, at least.

Reported by Cahata -- thanks!

9 years agoIRC_xLINE(): output an error message for unexpected "lines" bug114-GKLine
Alexander Barton [Sun, 25 Dec 2011 19:11:43 +0000 (20:11 +0100)]
IRC_xLINE(): output an error message for unexpected "lines"

This fixes:

 irc-oper.c: In function ‘IRC_xLINE’:
 irc-oper.c:429: warning: ‘class’ may be used uninitialized in this function
 irc-oper.c:430: warning: ‘class_c’ may be used uninitialized in this function

9 years agoREADME: Update list of implemented commands
Alexander Barton [Sun, 25 Dec 2011 19:01:28 +0000 (20:01 +0100)]
README: Update list of implemented commands

9 years agoUpdate list item, if it already exists
Alexander Barton [Sun, 25 Dec 2011 18:43:00 +0000 (19:43 +0100)]
Update list item, if it already exists

This updates the "validity" (timeout) as well as the "reason" text,
if given.

9 years agoLists_CheckDupeMask(): return pointer to already existing item
Alexander Barton [Sun, 25 Dec 2011 18:42:03 +0000 (19:42 +0100)]
Lists_CheckDupeMask(): return pointer to already existing item

The old behavior of returning true/false is compatible to this change,
so there are no other code changes required.

9 years agoLog better error messages when rejecting clients
Alexander Barton [Sun, 25 Dec 2011 18:27:06 +0000 (19:27 +0100)]
Log better error messages when rejecting clients

9 years agoSynchronize G-Lines on server login
Alexander Barton [Sun, 25 Dec 2011 18:12:40 +0000 (19:12 +0100)]
Synchronize G-Lines on server login

9 years agoOp_Check(): always accept commands from a remote server itself
Alexander Barton [Sun, 25 Dec 2011 18:11:43 +0000 (19:11 +0100)]
Op_Check(): always accept commands from a remote server itself

9 years agoClass_GetList() now retuns a pointer to list_head structure
Alexander Barton [Sun, 25 Dec 2011 18:11:07 +0000 (19:11 +0100)]
Class_GetList() now retuns a pointer to list_head structure

9 years agoCheck G-Line and K-Line lists after authenticating clients
Alexander Barton [Sun, 25 Dec 2011 17:03:35 +0000 (18:03 +0100)]
Check G-Line and K-Line lists after authenticating clients

9 years agoNew functions Lists_Expire() and Class_Expire()
Alexander Barton [Sun, 25 Dec 2011 16:44:20 +0000 (17:44 +0100)]
New functions Lists_Expire() and Class_Expire()

GLINE and KLINE lists are cleared automatically now, not when they are
checked. So "STATS g" and "STATS k" no longer show expired entries :-)

9 years agoImplement IRC_xLINE(): handler for "GLINE" and "KLINE" commands
Alexander Barton [Sun, 25 Dec 2011 15:57:36 +0000 (16:57 +0100)]
Implement IRC_xLINE(): handler for "GLINE" and "KLINE" commands

9 years agoOp_Check(): return client that initiated the request or NULL
Alexander Barton [Sun, 25 Dec 2011 15:52:31 +0000 (16:52 +0100)]
Op_Check(): return client that initiated the request or NULL

The old behavior of returning true/false is compatible to this change,
so there are no other code changes required.

9 years agoirc-oper.c: code cleanup; more documentation
Alexander Barton [Sun, 25 Dec 2011 15:08:00 +0000 (16:08 +0100)]
irc-oper.c: code cleanup; more documentation

9 years agoImplement IRC "STATS g" and "STATS k" command
Alexander Barton [Sun, 25 Dec 2011 13:50:19 +0000 (14:50 +0100)]
Implement IRC "STATS g" and "STATS k" command

9 years agoNew function Class_GetList()
Alexander Barton [Sun, 25 Dec 2011 13:49:52 +0000 (14:49 +0100)]
New function Class_GetList()

9 years agolists.{c|h}: code cleanup; more documentation
Alexander Barton [Sun, 25 Dec 2011 13:48:13 +0000 (14:48 +0100)]
lists.{c|h}: code cleanup; more documentation

9 years agoList and class handling: add optional "reason" text
Alexander Barton [Sun, 25 Dec 2011 13:19:45 +0000 (14:19 +0100)]
List and class handling: add optional "reason" text

Adjust Lists_Add() and Class_AddMask() accordingly, implement
Lists_GetReason() and Lists_GetValidity().

9 years agoAdd new class.{c|h} module to Xcode project
Alexander Barton [Sat, 24 Dec 2011 13:24:07 +0000 (14:24 +0100)]
Add new class.{c|h} module to Xcode project

9 years agoAdd new class.{c|h} to project
Alexander Barton [Sat, 24 Dec 2011 12:40:27 +0000 (13:40 +0100)]
Add new class.{c|h} to project

Implement Class_{AddMask|DeleteMask|IsMember}() functions.

9 years agoLists: change "only once" property into "valid until"
Alexander Barton [Sat, 24 Dec 2011 12:34:25 +0000 (13:34 +0100)]
Lists: change "only once" property into "valid until"

The old "only once" true/false behavior is still supported, so there
are no other code changes required.

9 years agoXcode: update project file for Xcode 4.2
Alexander Barton [Sat, 24 Dec 2011 12:22:34 +0000 (13:22 +0100)]
Xcode: update project file for Xcode 4.2

9 years agodefine HAVE_GAI_STRERROR for Mac OS X Xcode builds
Alexander Barton [Sat, 24 Dec 2011 12:16:38 +0000 (13:16 +0100)]
define HAVE_GAI_STRERROR for Mac OS X Xcode builds

On Mac OS X 10.7 Lion, this fixes

  In file included from .../contrib/MacOSX/../../src/ngircd/client.c:28:
   /Developer/SDKs/MacOSX10.7.sdk/usr/include/netdb.h:272:13:
   error: expected identifier or '('

9 years agoConfiguration: get rid of Conf_Oper_Count and Conf_Channel_Count
Alexander Barton [Sat, 27 Aug 2011 15:03:30 +0000 (17:03 +0200)]
Configuration: get rid of Conf_Oper_Count and Conf_Channel_Count

Count elements dynamically when needed.

9 years ago./configure: Fix logic and quoting of poll() detection code
Alexander Barton [Sun, 4 Dec 2011 23:19:32 +0000 (00:19 +0100)]
./configure: Fix logic and quoting of poll() detection code

This fixes commit 8e193df ...

9 years agoSuppress 'Can't create pre-defined channel: invalid name: ""' messages
Alexander Barton [Sun, 4 Dec 2011 21:30:32 +0000 (22:30 +0100)]
Suppress 'Can't create pre-defined channel: invalid name: ""' messages

Skip predefined channel structures that have configured no name,
like the "--configtest" does.

9 years agoOnly use poll() when poll.h exists as well
Alexander Barton [Fri, 25 Nov 2011 21:06:44 +0000 (22:06 +0100)]
Only use poll() when poll.h exists as well

9 years agoNot only check for poll(), make sure poll.h exists as well
Alexander Barton [Fri, 25 Nov 2011 20:56:33 +0000 (21:56 +0100)]
Not only check for poll(), make sure poll.h exists as well

This fixes building ngIRCd on Debian GNU/Linux 1.3 "Bo" :-)

9 years agowhois-test: handle local hostname = "localhost.localdomain"
Alexander Barton [Thu, 10 Nov 2011 10:54:22 +0000 (11:54 +0100)]
whois-test: handle local hostname = "localhost.localdomain"

Use the pattern "localhost*" for valid local hostnames.

9 years agosample-ngircd.conf: show correct default for "PAM" variable
Alexander Barton [Tue, 8 Nov 2011 20:12:01 +0000 (21:12 +0100)]
sample-ngircd.conf: show correct default for "PAM" variable

The default of "PAM" is "yes" when ngIRCd has been configured to use it,
so show the correct default value in the sample configuration file.

Closes #119.

9 years agoUpdate GPL 2 license text to current version
Alexander Barton [Sun, 6 Nov 2011 20:51:48 +0000 (21:51 +0100)]
Update GPL 2 license text to current version

See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.

9 years agoTest for gai_strerror()
Alexander Barton [Sun, 6 Nov 2011 13:16:59 +0000 (14:16 +0100)]
Test for gai_strerror()

If gai_strerror() isn't available, use a macro that simply returns
a static error message (regardless of the real error code).

For example, GNU libc 2.0.7 doesn't implement gai_strerror().

9 years agoOnly use AI_NUMERICHOST if it is #define'd
Alexander Barton [Sun, 6 Nov 2011 13:13:49 +0000 (14:13 +0100)]
Only use AI_NUMERICHOST if it is #define'd

It isn't using GNU libc 2.0.7, for example ...

9 years agodefines.h: fix comment: "lenth" -> "length"
Alexander Barton [Fri, 4 Nov 2011 23:35:18 +0000 (00:35 +0100)]
defines.h: fix comment: "lenth" -> "length"

Reported by Christoph Biedl in #ngircd. Thanks!

9 years agoInit_Server_Struct(): correctly zero Server->bind_addr
Alexander Barton [Fri, 4 Nov 2011 23:21:19 +0000 (00:21 +0100)]
Init_Server_Struct(): correctly zero Server->bind_addr

Don't use the size of the pointer, use the size of the variable!

9 years agoClean up and fix comments of Check_ArgIsTrue()
Alexander Barton [Thu, 3 Nov 2011 08:54:28 +0000 (09:54 +0100)]
Clean up and fix comments of Check_ArgIsTrue()

Thanks to kaFux for pointing this out!
And fix code formatting as well ...

9 years agoUpdate doc/GIT.txt
Alexander Barton [Wed, 7 Sep 2011 13:39:41 +0000 (15:39 +0200)]
Update doc/GIT.txt

9 years agoOnly close "unrelated" sockets in forked child processes
Alexander Barton [Wed, 7 Sep 2011 12:51:16 +0000 (14:51 +0200)]
Only close "unrelated" sockets in forked child processes

This fixes the problem that ngIRCd can't do any IDENT lookups because
of the socket has already been closed in the child process.

The bug has been introduced starting with ngIRCd 17 ... :-(
(commit ID 6ebb31ab35e)

9 years agoAdded doc/Modes.txt: document modes supported by ngIRCd
Alexander Barton [Fri, 26 Aug 2011 14:16:53 +0000 (16:16 +0200)]
Added doc/Modes.txt: document modes supported by ngIRCd

9 years agoImplemented user mode "R" and channel mode "R"
Alexander Barton [Fri, 26 Aug 2011 13:26:38 +0000 (15:26 +0200)]
Implemented user mode "R" and channel mode "R"

 - User mode "R": indicates that the nick name of this user is "registered".
   This mode isn't handled by ngIRCd itself, but must be set and unset by
   IRC services like Anope.

 - Channel mode "R": only registered users (having the user mode "R" set)
   are allowed to join this channel.

9 years agoUse Proc_Close() to remove no longer unused pipes to child processes
Alexander Barton [Tue, 23 Aug 2011 10:32:05 +0000 (12:32 +0200)]
Use Proc_Close() to remove no longer unused pipes to child processes

This removes spurious (but harmless) debug messages.

9 years agoNew function Proc_Close() to shutdown pipes to child processes
Alexander Barton [Tue, 23 Aug 2011 10:31:17 +0000 (12:31 +0200)]
New function Proc_Close() to shutdown pipes to child processes

9 years agoIntroduce DEBUG_BUFFER, rework some debug messages
Alexander Barton [Tue, 23 Aug 2011 10:28:04 +0000 (12:28 +0200)]
Introduce DEBUG_BUFFER, rework some debug messages

DEBUG_BUFFER is off by default and therefore disables these messages:
 - "Handle_Write() called for connection XX, YY bytes pending ..."
 - "Connection XX: ZZ bytes left in read buffer."

9 years agoTestsuite: bind to loopback (127.0.0.1) interface only
Alexander Barton [Mon, 22 Aug 2011 14:54:24 +0000 (16:54 +0200)]
Testsuite: bind to loopback (127.0.0.1) interface only

9 years agodoc/Platforms.txt: ngIRCd 18 on Nexenta works
Alexander Barton [Fri, 19 Aug 2011 13:51:56 +0000 (15:51 +0200)]
doc/Platforms.txt: ngIRCd 18 on Nexenta works

Thanks to Götz Hoffart for testing!

9 years agoNew 2nd message "Nickname too long" for error code 432
Alexander Barton [Fri, 19 Aug 2011 09:09:40 +0000 (11:09 +0200)]
New 2nd message "Nickname too long" for error code 432

9 years agoClient_CheckNick(), Client_IsValidNick(): code cleanup
Alexander Barton [Fri, 19 Aug 2011 08:44:26 +0000 (10:44 +0200)]
Client_CheckNick(), Client_IsValidNick(): code cleanup

9 years agoMerge branch 'ServerMode'
Alexander Barton [Sat, 13 Aug 2011 19:04:01 +0000 (21:04 +0200)]
Merge branch 'ServerMode'

* ServerMode:
  Handle channel user modes 'a', 'h', and 'q' from remote servers
  Handle unknown channel modes on server links
  Handle unknown user modes on server links
  IRC_MODE(), Client_Mode(): code cleanup [2/2]
  Enlarge client user mode buffer, reduce client flags buffer
  Infom clients when other servers change their user modes
  IRC_MODE(), Client_Mode(): code cleanup [1/2]

9 years agoMerge branch 'bug113-SrvPrefix'
Alexander Barton [Tue, 9 Aug 2011 08:16:56 +0000 (10:16 +0200)]
Merge branch 'bug113-SrvPrefix'

* bug113-SrvPrefix:
  Slightly change (and document!) IRC_KILL() calling convention
  Spoofed prefixes: close connection on non-server links only

9 years agoXcode: update project file to Xcode 3.2 or newer
Alexander Barton [Sun, 7 Aug 2011 12:42:49 +0000 (14:42 +0200)]
Xcode: update project file to Xcode 3.2 or newer

Xcode requires Mac OS X 10.6 or newer; Xcode 4 supports this project
format as well, so effectively you can use Mac OS X 10.6.x or 10.7.x
for building ngIRCd with the Apple Xcode IDE.

9 years agoXcode: Mac OS X config.h: support 10.5 as well as 10.6/10.7 SDK
Alexander Barton [Sun, 7 Aug 2011 12:41:11 +0000 (14:41 +0200)]
Xcode: Mac OS X config.h: support 10.5 as well as 10.6/10.7 SDK

9 years agoXcode: exclude more Xcode 4 specific directories in ".gitignore"
Alexander Barton [Tue, 2 Aug 2011 14:04:23 +0000 (16:04 +0200)]
Xcode: exclude more Xcode 4 specific directories in ".gitignore"

9 years agoCast getpid() and time() results for srand() input
Alexander Barton [Tue, 2 Aug 2011 11:21:54 +0000 (13:21 +0200)]
Cast getpid() and time() results for srand() input

This fixes:

src/ngircd/ngircd.c:596: warning: implicit conversion
 shortens 64-bit value into a 32-bit value

(i686-apple-darwin11-llvm-gcc-4.2)

9 years agoXcode: update and add missing files to project
Alexander Barton [Tue, 2 Aug 2011 11:16:28 +0000 (13:16 +0200)]
Xcode: update and add missing files to project

9 years agoIRC_QUIT(): disconnect directly linked servers sending QUIT
Alexander Barton [Mon, 1 Aug 2011 22:56:49 +0000 (00:56 +0200)]
IRC_QUIT(): disconnect directly linked servers sending QUIT

Without this patch, the server becomes removed from the network and
the client structures, but the connection isn't shut down at all ...

9 years agocontrib/ngindent: detect "gindent" as GNU indent
Alexander Barton [Mon, 1 Aug 2011 21:39:29 +0000 (23:39 +0200)]
contrib/ngindent: detect "gindent" as GNU indent

9 years agoHandle channel user modes 'a', 'h', and 'q' from remote servers ServerMode
Alexander Barton [Mon, 1 Aug 2011 21:30:55 +0000 (23:30 +0200)]
Handle channel user modes 'a', 'h', and 'q' from remote servers

These channel user modes aren't used for anything at the moment, but
ngIRCd knows that these three modes are "channel user modes" and not
"channel modes", that is that these modes take an "nick name" argument.

Like unknown user and channel modes, these modes are saved and forwarded,
but ignored otherwise.

9 years agoHandle unknown channel modes on server links
Alexander Barton [Mon, 1 Aug 2011 20:30:00 +0000 (22:30 +0200)]
Handle unknown channel modes on server links

9 years agoHandle unknown user modes on server links
Alexander Barton [Mon, 1 Aug 2011 20:09:40 +0000 (22:09 +0200)]
Handle unknown user modes on server links

9 years agoIRC_MODE(), Client_Mode(): code cleanup [2/2]
Alexander Barton [Mon, 1 Aug 2011 19:51:31 +0000 (21:51 +0200)]
IRC_MODE(), Client_Mode(): code cleanup [2/2]

9 years agoEnlarge client user mode buffer, reduce client flags buffer
Alexander Barton [Mon, 1 Aug 2011 19:21:01 +0000 (21:21 +0200)]
Enlarge client user mode buffer, reduce client flags buffer

We have to enlage our user mode buffer, so we can handle even unknown
user modes in the future; and reduce the client flags buffer, because
I can't imagine why we ever would need ~100 flags!?

Now we support up to 15 user modes (was: 8) and up to 15 flags (was: 99).

So in the end, we even save 99-15+8-15=77 bytes for each client structure!

9 years agoInfom clients when other servers change their user modes
Alexander Barton [Mon, 1 Aug 2011 19:10:16 +0000 (21:10 +0200)]
Infom clients when other servers change their user modes

9 years agodoc/Platforms.txt: re-add mipsel/unknown/linux-gnu with gcc 4.1.2
Alexander Barton [Mon, 1 Aug 2011 08:42:22 +0000 (10:42 +0200)]
doc/Platforms.txt: re-add mipsel/unknown/linux-gnu with gcc 4.1.2

9 years agoUpdated doc/Platforms.txt: mipsel/unknown/linux-gnu
Alexander Barton [Mon, 1 Aug 2011 07:08:14 +0000 (09:08 +0200)]
Updated doc/Platforms.txt: mipsel/unknown/linux-gnu

9 years agoIRC_MODE(), Client_Mode(): code cleanup [1/2]
Alexander Barton [Mon, 1 Aug 2011 07:07:32 +0000 (09:07 +0200)]
IRC_MODE(), Client_Mode(): code cleanup [1/2]

9 years agoSlightly change (and document!) IRC_KILL() calling convention bug113-SrvPrefix
Alexander Barton [Sat, 30 Jul 2011 17:47:59 +0000 (19:47 +0200)]
Slightly change (and document!) IRC_KILL() calling convention

9 years agoTestsuite: make getpid.sh work even when run as root
Alexander Barton [Sat, 30 Jul 2011 16:47:58 +0000 (18:47 +0200)]
Testsuite: make getpid.sh work even when run as root

Use ps(1) flag "-a" (as well as "-f"):
"Select all processes except both session leaders (see getsid(2)) and
processes not associated with a terminal."

Thanks to Götz Hoffart for reporting this problem!

9 years agoSpoofed prefixes: close connection on non-server links only
Alexander Barton [Tue, 19 Jul 2011 14:00:55 +0000 (16:00 +0200)]
Spoofed prefixes: close connection on non-server links only

On server-links, spoofed prefixes can happen because of the asynchronous
nature of the IRC protocol. So don't break server-links, only log a message
and ignore the command.

This fixes bug 113, see:
<https://arthur.barton.de/bugzilla/show_bug.cgi?id=113>

9 years agoFix typo in doc/Platforms.txt; make Linux footnote more generic
Alexander Barton [Sun, 10 Jul 2011 20:32:29 +0000 (22:32 +0200)]
Fix typo in doc/Platforms.txt; make Linux footnote more generic

9 years agongIRCd release 18 rel-18
Alexander Barton [Sun, 10 Jul 2011 18:05:16 +0000 (20:05 +0200)]
ngIRCd release 18

9 years agoUpdate ChangeLog and NEWS for ngIRCd release 18
Alexander Barton [Sun, 10 Jul 2011 18:02:01 +0000 (20:02 +0200)]
Update ChangeLog and NEWS for ngIRCd release 18

9 years agoUpdated doc/Platforms.txt for ngIRCd release 18
Alexander Barton [Sun, 10 Jul 2011 17:58:41 +0000 (19:58 +0200)]
Updated doc/Platforms.txt for ngIRCd release 18

9 years agoMorePrivacy: Don't register WHOWAS information
Alexander Barton [Sun, 10 Jul 2011 12:45:33 +0000 (14:45 +0200)]
MorePrivacy: Don't register WHOWAS information

Citing an email from Florian to the ngIRCd mailing list:

"I wonder what the expected behaviour is when Conf_MorePrivacy is changed
 from 'yes' to 'no' and the config is reloaded.

 At the moment, WHOWAS will start giving out information on Users that
 were connected during Conf_MorePrivacy=yes period.  If this is not
 wanted, Client_RegisterWhowas() should be changed to not store a record
 when Conf_MorePrivacy is enabled."

And I think it is "not wanted" :-)

9 years agoAdd preliminary ngIRCd protocol module for Anope 1.9
Alexander Barton [Sun, 10 Jul 2011 12:20:48 +0000 (14:20 +0200)]
Add preliminary ngIRCd protocol module for Anope 1.9

See contrib/Anope/README and doc/Services.txt for more details
and installation instructions!

9 years agoUpdate timestamp of ngircd(8) manual page
Alexander Barton [Sat, 2 Jul 2011 20:02:43 +0000 (22:02 +0200)]
Update timestamp of ngircd(8) manual page

9 years agongIRCd release 18~rc2 rel-18-rc2
Alexander Barton [Wed, 29 Jun 2011 08:22:46 +0000 (10:22 +0200)]
ngIRCd release 18~rc2