]> arthur.barton.de Git - ngircd.git/log
ngircd.git
15 years agoFree topic array on channel deletion. branch-0-12-x
Alexander Barton [Sun, 4 Jan 2009 14:22:32 +0000 (15:22 +0100)]
Free topic array on channel deletion.

The topic array in the CHANNEL structure must be free()'d before the
channel itself becomes deleted.

(backport of commit 18efc7469c of master branch)

15 years agoFix handling of MaxConnections option
Florian Westphal [Sat, 30 Aug 2008 13:37:19 +0000 (15:37 +0200)]
Fix handling of MaxConnections option

Config option claimed to be 'number of connections' but in reality this
was treated as 'largest file descriptor allowed'.

This also fixes another bug in New_connection, where the
ng_ipaddr_tostr_r error path was missing a return statement.

15 years agongIRCd 0.12.1 rel-0-12-1
Alexander Barton [Wed, 9 Jul 2008 10:37:37 +0000 (12:37 +0200)]
ngIRCd 0.12.1

15 years agoUpdated ChangeLog for 0.12.1.
Alexander Barton [Wed, 11 Jun 2008 14:39:25 +0000 (16:39 +0200)]
Updated ChangeLog for 0.12.1.

15 years agoAllow mixed line terminations (CR+LF/CR/LF) in non-RFC-compliant mode
Alexander Barton [Wed, 11 Jun 2008 14:00:38 +0000 (16:00 +0200)]
Allow mixed line terminations (CR+LF/CR/LF) in non-RFC-compliant mode

Up to now ngIRCd accepted CR+LF as well as a single CR or LF in "non RFC
compliant" mode (the default). But ngIRCd became confused when it received
data containing mixed line endings (e. g. "111\r222\n333\r\n").

This patch enables ngIRCd (in "non RFC compliant" mode) to detect CR+LF,
CR, and LF as equally good line termination sequences and to always end the
command after the first one detected.

Some clients (for exmaple Trilian) are that ... broken to send such mixed
line terminations ...

First patch proposed by Scott Perry <scperry@ucsd.edu>,
Thanks to Ali Shemiran <ashemira@ucsd.edu> for testing!

(manually cherry picked from commit a84f7dcee5a1b32c74188aa5374d30eddd24852b)

15 years agoUpdated NEWS and ChangeLog in preparation for ngIRCd 0.12.1.
Alexander Barton [Fri, 30 May 2008 17:26:19 +0000 (19:26 +0200)]
Updated NEWS and ChangeLog in preparation for ngIRCd 0.12.1.

15 years agoDon't allow stray \r or \n in command parameters
Alexander Barton [Fri, 30 May 2008 12:49:56 +0000 (14:49 +0200)]
Don't allow stray \r or \n in command parameters

If ngircd receives an input line like "COMMAND arg\nIRRELEVANT\r\n",
"arg\nIRRELEVANT" is passed as an argument to COMMAND. This can lead
to output like:

:ngircd.test.server 322 nick #chan 1 :
topicwithprecedingnewline
:ngircd.test.server 322 nick #nxtchan 1 :
[..]

Worse, this allows clients to piggyback irc commands, e.g.
"TOPIC #a :test\n:fake!~a@nonexistant JOIN :#a\r\n", which
causes the client to receive a JOIN command during /LIST output.

Bug reported by Scott Perry, first patch by Florian Westphal.
(cherry picked from commit 8644cbf197807909e4caea184278872cdeca1963)

15 years ago--configtest: return non-zero exit code if there are errors
Alexander Barton [Tue, 27 May 2008 22:31:20 +0000 (00:31 +0200)]
--configtest: return non-zero exit code if there are errors
(cherry picked from commit 6f7b669becb0ebf2058fa2bbe834de48c01de933)

15 years agoUpdate ngIRCd manual pages
Alexander Barton [Sun, 11 May 2008 15:08:46 +0000 (17:08 +0200)]
Update ngIRCd manual pages

- Update timestamp,
- enhance some phrasing,
- and fix "Passive" ([Server]) formatting.
(cherry picked from commit aad49bd260494878aed6795c7a897ad1d28c3082)

15 years agoAdd option aliases -V (for --version) and -h (for --help).
Jari Aalto [Fri, 15 Feb 2008 19:29:24 +0000 (21:29 +0200)]
Add option aliases -V (for --version) and -h (for --help).

This patch adds -h and -V short options (to complement the usage).

It is based on a patch attached to Debian bug #466063, see
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466063>.

Idea by Jari Aalto <jari.aalto@cante.net>,
patch adapted by Alexander Barton <alex@barton.de>.
(cherry picked from commit 818a206a4261f3d4153b0ab5c2025d77002290f5)

15 years agoFix 'no-ipv6' compile error.
Florian Westphal [Mon, 19 May 2008 12:59:35 +0000 (14:59 +0200)]
Fix 'no-ipv6' compile error.

15 years agomake Listen parameter a comma-seperated list of addresses.
Florian Westphal [Sun, 18 May 2008 22:12:41 +0000 (00:12 +0200)]
make Listen parameter a comma-seperated list of addresses.

this also obsoletes ListenIPv4 and ListenIPv6 options.
If Listen is unset, it is treated as Listen="::,0.0.0.0".

Note: ListenIPv4 and ListenIPv6 options are still recognized,
but ngircd will print a warning if they are used in the config file.

Also, some plattforms require that ai_socktype
is set in the getaddrinfo() hints structure.

15 years agongIRCd 0.12.0 rel-0-12-0
Alexander Barton [Tue, 13 May 2008 10:42:59 +0000 (12:42 +0200)]
ngIRCd 0.12.0

15 years agoUpdated NEWS and ChangeLog for ngIRCd 0.12.0.
Alexander Barton [Tue, 13 May 2008 10:42:27 +0000 (12:42 +0200)]
Updated NEWS and ChangeLog for ngIRCd 0.12.0.

15 years agoIf bind() fails, also print ip address and not just the port number.
Florian Westphal [Mon, 12 May 2008 16:46:55 +0000 (18:46 +0200)]
If bind() fails, also print ip address and not just the port number.

15 years agoFix complie on FreeBSD 5.4 and AIX.
Florian Westphal [Sat, 10 May 2008 19:53:39 +0000 (21:53 +0200)]
Fix complie on FreeBSD 5.4 and AIX.

This is picked from commits

d9c26f3aeb35e979b72f7b0ac4220dbd07d7bc15
"ng_ipaddr.h must include netinet/in.h."

and
4e507881f30c8b4296d87de519658e45f8cb417f
"On AIX (for example) socklen_t is defined in sys/socket.h"

15 years agoFix secret channel information leak
Ali Shemiran [Fri, 9 May 2008 19:52:54 +0000 (21:52 +0200)]
Fix secret channel information leak

/who on a secret channel that the user is not a member of
now returns proper RPL_ENDOFWHO_MSG instead of nothing.

[picked from 12cd554af1709c44f35024d7d2fc368fb22f133d; without testcase]

15 years agongIRCd 0.12.0-pre2 rel-0-12-0-pre2
Alexander Barton [Tue, 29 Apr 2008 21:57:11 +0000 (23:57 +0200)]
ngIRCd 0.12.0-pre2

15 years agoMerge branch 'master' into branch-0-12-x
Alexander Barton [Tue, 29 Apr 2008 13:36:16 +0000 (15:36 +0200)]
Merge branch 'master' into branch-0-12-x

15 years agoUpdated NEWS and ChangeLog for ngIRCd 0.12.0-pre2.
Alexander Barton [Tue, 29 Apr 2008 13:34:15 +0000 (15:34 +0200)]
Updated NEWS and ChangeLog for ngIRCd 0.12.0-pre2.

15 years ago--configtest: fix missing whitespace at "ConnectIPv4" option.
Alexander Barton [Tue, 29 Apr 2008 13:27:44 +0000 (15:27 +0200)]
--configtest: fix missing whitespace at "ConnectIPv4" option.

15 years ago--enable-ipv6: fix indentation in ./configure --help output.
Alexander Barton [Tue, 29 Apr 2008 13:26:20 +0000 (15:26 +0200)]
--enable-ipv6: fix indentation in ./configure --help output.

15 years agoMerge branch 'master' of git://git.breakpoint.cc/fw/ngircd-fw
Alexander Barton [Tue, 29 Apr 2008 13:15:28 +0000 (15:15 +0200)]
Merge branch 'master' of git://git.breakpoint.cc/fw/ngircd-fw

15 years agoMerge branch 'master' into branch-0-12-x
Alexander Barton [Tue, 29 Apr 2008 12:41:24 +0000 (14:41 +0200)]
Merge branch 'master' into branch-0-12-x

15 years agoTestsuite: remove erroneous ConfUID setting in config file.
Florian Westphal [Fri, 25 Apr 2008 22:38:57 +0000 (00:38 +0200)]
Testsuite: remove erroneous ConfUID setting in config file.

The config file for ngircds test suite contained obsolete
ConfUID/ConfGID settings, causing ngircd to needlesly complain when
started as non-root (which is hopefully the _normal_ case...)

15 years agoMerge branch 'master' into branch-0-12-x
Alexander Barton [Thu, 24 Apr 2008 22:20:35 +0000 (00:20 +0200)]
Merge branch 'master' into branch-0-12-x

Fixed bug 81:
When trying to part a channel ("PART #channel") the client is not member of
the daemon now correctly reports the numeric ERR_NOTONCHANNEL (442) insted
of ERR_NOSUCHCHANNEL (403).

15 years agoGet rid of cvs-version.* and CVSDATE definition.
Alexander Barton [Sun, 20 Apr 2008 21:10:22 +0000 (23:10 +0200)]
Get rid of cvs-version.* and CVSDATE definition.
(cherry picked from commit b187fac244f4e14705f882ba7c43eef0238e2830)

15 years agoDocumentation: get rid of some more references to CVS, switch to GIT.
Alexander Barton [Sun, 20 Apr 2008 20:48:05 +0000 (22:48 +0200)]
Documentation: get rid of some more references to CVS, switch to GIT.
(cherry picked from commit 6e9389b86c906c53a7797b8ced87a19195e16333)

15 years agoReport ERR_NOTONCHANNEL when trying to part a channel one is not member of.
Alexander Barton [Thu, 24 Apr 2008 21:52:54 +0000 (23:52 +0200)]
Report ERR_NOTONCHANNEL when trying to part a channel one is not member of.

When trying to part a channel ("PART #channel") the client is not member of
the daemon now correctly reports the numeric ERR_NOTONCHANNEL (442) insted
of ERR_NOSUCHCHANNEL (403).

15 years agoChannel_Part(): Code and comment cleanup.
Alexander Barton [Thu, 24 Apr 2008 21:47:33 +0000 (23:47 +0200)]
Channel_Part(): Code and comment cleanup.

15 years agoIRC_PART(): code and comment cleanup.
Alexander Barton [Thu, 24 Apr 2008 21:46:59 +0000 (23:46 +0200)]
IRC_PART(): code and comment cleanup.

16 years agoIPv6: Add config options to disabe ipv4/ipv6 support.
Florian Westphal [Sun, 20 Apr 2008 22:45:19 +0000 (00:45 +0200)]
IPv6: Add config options to disabe ipv4/ipv6 support.

This also enables ipv6-only setups.

16 years agoGet rid of cvs-version.* and CVSDATE definition.
Alexander Barton [Sun, 20 Apr 2008 21:10:22 +0000 (23:10 +0200)]
Get rid of cvs-version.* and CVSDATE definition.

16 years agoDocumentation: get rid of some more references to CVS, switch to GIT.
Alexander Barton [Sun, 20 Apr 2008 20:48:05 +0000 (22:48 +0200)]
Documentation: get rid of some more references to CVS, switch to GIT.

16 years agoDon't include doc/CVS.txt in distribution archive, use doc/GIT.txt now!
Alexander Barton [Sun, 20 Apr 2008 14:46:49 +0000 (16:46 +0200)]
Don't include doc/CVS.txt in distribution archive, use doc/GIT.txt now!
(cherry picked from commit a8e0eb62e9dce81ca4a5c5911428561b90bf2c6e)

16 years agoDon't include doc/CVS.txt in distribution archive, use doc/GIT.txt now! rel-0-12-0-pre1
Alexander Barton [Sun, 20 Apr 2008 14:46:49 +0000 (16:46 +0200)]
Don't include doc/CVS.txt in distribution archive, use doc/GIT.txt now!

16 years agoSynchronized branch-0-12-x (ngIRCd 0.12.0-pre1) with master.
Alexander Barton [Sun, 20 Apr 2008 14:20:53 +0000 (16:20 +0200)]
Synchronized branch-0-12-x (ngIRCd 0.12.0-pre1) with master.
(cherry picked from commit 4ea29329674ff8ec6d772991a57c146b5d78d2ad)

16 years agongIRCd 0.12.0-pre1
Alexander Barton [Sun, 20 Apr 2008 13:53:49 +0000 (15:53 +0200)]
ngIRCd 0.12.0-pre1

16 years agoUpdated NEWS and ChangeLog for upcoming 0.12.0-pre1 release.
Alexander Barton [Sun, 20 Apr 2008 13:48:49 +0000 (15:48 +0200)]
Updated NEWS and ChangeLog for upcoming 0.12.0-pre1 release.

16 years agoUpdated copyright notice to read "2001-2008".
Alexander Barton [Sun, 20 Apr 2008 13:48:22 +0000 (15:48 +0200)]
Updated copyright notice to read "2001-2008".

16 years agoAdded make target "testsuite"
Alexander Barton [Sun, 20 Apr 2008 12:52:00 +0000 (14:52 +0200)]
Added make target "testsuite"

This make target runs the testsuite located in src/testsuite without running
alle the other tests that "make check" would run.

16 years agoFixed "xcode" make target (used to build ngIRCd with Mac OS X Xcode)
Alexander Barton [Sun, 20 Apr 2008 12:50:46 +0000 (14:50 +0200)]
Fixed "xcode" make target (used to build ngIRCd with Mac OS X Xcode)

16 years agoChannel_Mode: Remove duplicate code.
Florian Westphal [Sat, 19 Apr 2008 14:58:00 +0000 (16:58 +0200)]
Channel_Mode: Remove duplicate code.

Incidentially, this doesn't even change the
generated code...

16 years agoChannel_Mode: change order of if (set) and if (client) check.
Florian Westphal [Sat, 19 Apr 2008 14:51:42 +0000 (16:51 +0200)]
Channel_Mode: change order of if (set) and if (client) check.

16 years agoChannel_Mode: Re-indent switch.
Florian Westphal [Sat, 19 Apr 2008 14:45:31 +0000 (16:45 +0200)]
Channel_Mode: Re-indent switch.

No functional changes were made.

16 years agoChannel_Mode: check return type of Invite/Ban Add/Del function
Florian Westphal [Sat, 19 Apr 2008 14:17:11 +0000 (16:17 +0200)]
Channel_Mode: check return type of Invite/Ban Add/Del function

16 years agoChannel_Mode: unify 'b' and 'I' switch/case handling.
Florian Westphal [Sat, 19 Apr 2008 12:16:17 +0000 (14:16 +0200)]
Channel_Mode: unify 'b' and 'I' switch/case handling.

16 years agoChannel_Mode: Unify Del_Invite and Del_Ban handler
Florian Westphal [Sat, 19 Apr 2008 12:12:06 +0000 (14:12 +0200)]
Channel_Mode: Unify Del_Invite and Del_Ban handler

16 years agoConstify Lists_MakeMask argument and return type.
Florian Westphal [Sat, 19 Apr 2008 12:11:25 +0000 (14:11 +0200)]
Constify Lists_MakeMask argument and return type.

16 years agoChannel_Mode: Unify Add_Invite and Add_Ban handler
Florian Westphal [Sat, 19 Apr 2008 12:02:54 +0000 (14:02 +0200)]
Channel_Mode: Unify Add_Invite and Add_Ban handler

16 years agoEnable more compiler warnings when using Xcode.
Alexander Barton [Sun, 13 Apr 2008 21:43:12 +0000 (23:43 +0200)]
Enable more compiler warnings when using Xcode.

16 years agoGIT should ignore user preferences files inside Xcode projects.
Alexander Barton [Sat, 12 Apr 2008 21:29:58 +0000 (23:29 +0200)]
GIT should ignore user preferences files inside Xcode projects.

Added filter for GIT to ignore Xcode user preferences files (*.mode1v3 and
*.pbxuser) which are automatically generated inside the project bundle when
opened in Xcode.

16 years agoUpdated Xcode project file.
Alexander Barton [Sat, 12 Apr 2008 21:27:11 +0000 (23:27 +0200)]
Updated Xcode project file.

16 years agoConvert CVS commands to their git equivalents.
Florian Westphal [Sat, 12 Apr 2008 19:10:47 +0000 (21:10 +0200)]
Convert CVS commands to their git equivalents.

Also mention that patches should be sent to the mailing list.

16 years agoAdded "portabtest" binary to .gitignore file in src/portabtest/.
Alexander Barton [Wed, 9 Apr 2008 17:46:26 +0000 (19:46 +0200)]
Added "portabtest" binary to .gitignore file in src/portabtest/.

16 years agoInclude Mac OS X Xcode project in distribution archives. (Part 2)
Alexander Barton [Wed, 9 Apr 2008 17:24:22 +0000 (19:24 +0200)]
Include Mac OS X Xcode project in distribution archives. (Part 2)
I forgot to include the new Makefile.am in contrib/MacOSX/ngIRCd.xcodeproj/ ...

16 years agoInclude Mac OS X Xcode project in distribution archives.
Alexander Barton [Wed, 9 Apr 2008 17:09:23 +0000 (19:09 +0200)]
Include Mac OS X Xcode project in distribution archives.
Oops, it has not been included since ... ages??

16 years agoMoved .cvsignore files to .gitignore
Alexander Barton [Wed, 9 Apr 2008 16:54:52 +0000 (18:54 +0200)]
Moved .cvsignore files to .gitignore
Since we are using GIT starting from now, I converted all the
.cvsignore files to .gitignore files.

16 years agoFix client.c sparse warnings.
Florian Westphal [Fri, 4 Apr 2008 19:30:01 +0000 (19:30 +0000)]
Fix client.c sparse warnings.

client.c:72:6: warning: symbol 'Max_Users' was not declared. Should it be static?
client.c:72:21: warning: symbol 'My_Max_Users' was not declared. Should it be static?

16 years agoio.c: kill select FD_SETSIZE sanity check in io_library_init.
Florian Westphal [Thu, 3 Apr 2008 20:56:44 +0000 (20:56 +0000)]
io.c: kill select FD_SETSIZE sanity check in io_library_init.

We already have way too many.

16 years agoio.c: fix select FD_SETSIZE check when using epoll as io backend
Florian Westphal [Thu, 3 Apr 2008 14:17:42 +0000 (14:17 +0000)]
io.c: fix select FD_SETSIZE check when using epoll as io backend

16 years agoio.c: try to cut down the number of ifdefs.
Florian Westphal [Thu, 27 Mar 2008 15:47:21 +0000 (15:47 +0000)]
io.c: try to cut down the number of ifdefs.

consolidate backend-specific helpers and
add empty statinc inle stubs in the ifndef case
to let the compiler remove the functions at compile time.

16 years agoDo not exit unconditionally if config file cannot be opened
Florian Westphal [Tue, 18 Mar 2008 20:12:47 +0000 (20:12 +0000)]
Do not exit unconditionally if config file cannot be opened

ngircd will exit if the config file cannot be opened. While
thats okay if ngircd starts up for the first time, it isn't
when we are re-reading the config file after a /REHASH or SIGHUP.

16 years agoFix #include's: search log.h locally, include string.h. The latter is required becaus...
Alexander Barton [Tue, 11 Mar 2008 14:05:27 +0000 (14:05 +0000)]
Fix #include's: search log.h locally, include string.h. The latter is required because we include conn.h, which includes resolve.h, which includes ng_ipaddr.h, which contains a macro using strlcpy() ...

16 years agoIPv6 support.
Florian Westphal [Tue, 26 Feb 2008 22:50:35 +0000 (23:50 +0100)]
IPv6 support.

all references to struct sockaddr/in_addr have been
removed from src/ngircd.
libngipaddr (in src/ipaddr/) hides all the gory details.
See src/ipaddr/ng_ipaddr.h for API description.

16 years agoUpdated ChangeLog to include 0.11.1.
Alexander Barton [Tue, 26 Feb 2008 20:35:43 +0000 (20:35 +0000)]
Updated ChangeLog to include 0.11.1.

16 years agoFix sending of JOINs between servers.
Rolf Eike Beer [Sun, 24 Feb 2008 18:57:38 +0000 (18:57 +0000)]
Fix sending of JOINs between servers.

This does hit only operators that join a channel with at least 2 servers active in the net
the server the oper connects to sends "channel^Go" to the other servers
the other server first searches for the channel and then strips the modes from the channel name
he has to do the other way round: first strip and then check the channel name.

16 years agoChannel_Mode cleanups
Florian Westphal [Sun, 24 Feb 2008 18:44:41 +0000 (18:44 +0000)]
Channel_Mode cleanups

- better indentation
- move answering request into seperate function.

16 years agoLaunchDaemon plist for Mac OS X/Darwin launchd.
Alexander Barton [Sun, 17 Feb 2008 15:35:46 +0000 (15:35 +0000)]
LaunchDaemon plist for Mac OS X/Darwin launchd.

16 years agoInstall a LaunchDaemon script to start/stop ngIRCd on Mac OS X.
Alexander Barton [Sun, 17 Feb 2008 15:31:14 +0000 (15:31 +0000)]
Install a LaunchDaemon script to start/stop ngIRCd on Mac OS X.

16 years agoAdded new test files to Xcode project.
Alexander Barton [Sun, 17 Feb 2008 13:59:39 +0000 (13:59 +0000)]
Added new test files to Xcode project.

16 years agoRemoved the SQUIT test for now, actually we don't support it yet.
Alexander Barton [Sun, 17 Feb 2008 13:51:00 +0000 (13:51 +0000)]
Removed the SQUIT test for now, actually we don't support it yet.

16 years agoImplemented IRC commands INFO, USERS (dummy), and SUMMON (dummy).
Alexander Barton [Sun, 17 Feb 2008 13:26:41 +0000 (13:26 +0000)]
Implemented IRC commands INFO, USERS (dummy), and SUMMON (dummy).

16 years agoInclude flags in RPL_WHOREPLY messages.
Dana Dahlstrom [Sun, 17 Feb 2008 00:00:12 +0000 (00:00 +0000)]
Include flags in RPL_WHOREPLY messages.

RPL_WHOREPLY messages generated by IRC_WHO don't include flags (*,@,+)
that should appear according to this description:

http://www.mishscript.de/reference/rawhelp3.htm#raw352

Other IRC servers do include the flags.

Modify who-test.e to expose missing flags,
modify ngircd-test.conf to accommodate who-test.e, and fix
irc-info.c to correct these problems.

16 years agoDon't send trailing space in MODE messages
Dana Dahlstrom [Sat, 16 Feb 2008 11:27:48 +0000 (11:27 +0000)]
Don't send trailing space in MODE messages

Under some circumstances ngIRCd currently issues a channel MODE message
with a trailing space after the last parameter, which isn't permitted by
the grammar in RFC 2812 section 2.3.1:

http://tools.ietf.org/html/rfc2812#section-2.3.1

The following patch modifies mode-test.e to expose this, and modifies
irc-mode.c to correct it.

16 years agoIRC_JOIN cleanups.
Florian Westphal [Sat, 16 Feb 2008 11:21:33 +0000 (11:21 +0000)]
IRC_JOIN cleanups.

- put sending of mode and forwarding of JOIN to other clients
 into seperate function.
- put sending of topic/channel names into seperate function.
- put access check into seperate function.
- translate/remove remaining german comments.
- stop if JOIN to a channel in a list (JOIN #a,#,b,#c...) fails
(This doesn't change the behaviour: skip-to-next-channel-on-error
did never work as intended)

16 years agoMake IRC_WHO also search username/servername/hostname.
Florian Westphal [Mon, 11 Feb 2008 11:06:31 +0000 (11:06 +0000)]
Make IRC_WHO also search username/servername/hostname.

Dana Dahlstrom reported that IRC_WHO did not follow
RFC 2812, Section 3.6.1. Specifically:

- IRC_WHO did not send "G" flag instead if "H" if client was away
- did not search username/servername/hostname etc. if argument
  was not a channel.

Fix all of the above and tidy things up a bit.
Also add IRC_WHO test script contributed by Dana.

16 years agoRemove duplicate Channel_FirstChannelOf().
Dana Dahlstrom [Tue, 5 Feb 2008 19:00:52 +0000 (19:00 +0000)]
Remove duplicate Channel_FirstChannelOf().

noticed there's a way to make the loop
slightly more elegant.

[fw@strlen.de: Extra () to silence gcc.]

16 years agoMake Channel_Part name and reason parameters 'const'.
Florian Westphal [Tue, 5 Feb 2008 16:31:35 +0000 (16:31 +0000)]
Make Channel_Part name and reason parameters 'const'.

16 years agoUpdated NEWS to reflect ChangeLog.
Florian Westphal [Tue, 5 Feb 2008 14:41:50 +0000 (14:41 +0000)]
Updated NEWS to reflect ChangeLog.

16 years agoImplement RFC 2812 handling of "0" argument to JOIN
Dana Dahlstrom [Tue, 5 Feb 2008 13:31:50 +0000 (13:31 +0000)]
Implement RFC 2812 handling of "0" argument to JOIN

The students in my software-engineering class are writing IRC clients in
Java, and I'm running ngIRCd as a sandbox for them to play in. We
noticed ngIRCd doesn't obey the "JOIN 0" command specified in RFC 2812:

   JOIN 0             ; Leave all currently joined
                      channels.

http://tools.ietf.org/html/rfc2812#section-3.2.1
I believe the following patch addresses this. Cheers!

[fw@strlen.de: put it into a seperate function]

16 years agoDon't use Client_Type after command has been processed.
Florian Westphal [Tue, 5 Feb 2008 13:07:14 +0000 (13:07 +0000)]
Don't use Client_Type after command has been processed.

This caused a read from already free'd memory, if the processed
command (IRC_QUIT) calls Client_Destroy.

16 years agoUpdated NEWS to reflect ChangeLog.
Alexander Barton [Tue, 5 Feb 2008 12:02:59 +0000 (12:02 +0000)]
Updated NEWS to reflect ChangeLog.

16 years agoFix wrong strncpy usage if CVSDATE defined
Florian Westphal [Tue, 5 Feb 2008 11:46:55 +0000 (11:46 +0000)]
Fix wrong strncpy usage if CVSDATE defined

Hello_User() used strncpy with overlapping src/dest.
Use memmove instead.

16 years agoThis adds support for sending NOTICEs to a channel.
Florian Westphal [Tue, 15 Jan 2008 22:28:14 +0000 (22:28 +0000)]
This adds support for sending NOTICEs to a channel.

[also see Bug #70 in ngircd bugzilla].

Based on a patch by Fabian Schlager <fabian.schlager@gmail.com>.

16 years ago[Parser]: Fix minor sparse warnings
Florian Westphal [Sun, 13 Jan 2008 16:12:49 +0000 (16:12 +0000)]
[Parser]: Fix minor sparse warnings

parse.c:56:9: warning: symbol 'My_Commands' was not declared. Should it be static?
parse.c:107:9: warning: symbol 'My_Numerics' was not declared. Should it be static?

Also move handling of numerics into a seperate helper function.

16 years agoUpdated ChangeLog to reflect changes in 0.10.x and 0.11.x branches.
Alexander Barton [Mon, 7 Jan 2008 23:08:14 +0000 (23:08 +0000)]
Updated ChangeLog to reflect changes in 0.10.x and 0.11.x branches.

16 years agoUpdated Debian changelog [from 0.10.x; 0.11.x]
Alexander Barton [Mon, 7 Jan 2008 23:06:24 +0000 (23:06 +0000)]
Updated Debian changelog [from 0.10.x; 0.11.x]

16 years agoDocument NoDNS configuration option.
Alexander Barton [Mon, 7 Jan 2008 23:02:29 +0000 (23:02 +0000)]
Document NoDNS configuration option.

16 years agoIRC_PART could reference invalid memory.
Florian Westphal [Mon, 7 Jan 2008 11:42:00 +0000 (11:42 +0000)]
IRC_PART could reference invalid memory.

16 years agoRemove entry about ngircd failing on Linux 2.4:
Alexander Barton [Wed, 2 Jan 2008 22:47:58 +0000 (22:47 +0000)]
Remove entry about ngircd failing on Linux 2.4:
ngircd can now fall back to select. [from 0.11.x]

16 years agoUpdated NEWS and ChangeLog files.
Alexander Barton [Wed, 2 Jan 2008 11:31:48 +0000 (11:31 +0000)]
Updated NEWS and ChangeLog files.

16 years ago[Resolver]: Use dotted-decimal IP address if hostname is >= 64
Florian Westphal [Wed, 2 Jan 2008 11:03:29 +0000 (11:03 +0000)]
[Resolver]: Use dotted-decimal IP address if hostname is >= 64

16 years agoio_event_disable: return if event-to-disable is already off
Florian Westphal [Wed, 2 Jan 2008 10:29:51 +0000 (10:29 +0000)]
io_event_disable: return if event-to-disable is already off

16 years agokqueue: check for EV_ERROR in .flags
Florian Westphal [Thu, 27 Dec 2007 18:25:26 +0000 (18:25 +0000)]
kqueue: check for EV_ERROR in .flags

if kevent() returns events, check for EV_ERROR in event flags, too.

16 years agoFix format arg: ListenAddress was printed instead of Bind address.
Florian Westphal [Thu, 13 Dec 2007 01:30:16 +0000 (01:30 +0000)]
Fix format arg: ListenAddress was printed instead of Bind address.

16 years agoFix format string in error path: didn't print strerror(errno)
Florian Westphal [Thu, 13 Dec 2007 01:05:01 +0000 (01:05 +0000)]
Fix format string in error path: didn't print strerror(errno)

16 years agoimplement '/STAT u' (uptime)
Florian Westphal [Tue, 11 Dec 2007 11:29:43 +0000 (11:29 +0000)]
implement '/STAT u' (uptime)

16 years agoFix fmt string: int, not long
Florian Westphal [Fri, 7 Dec 2007 21:19:01 +0000 (21:19 +0000)]
Fix fmt string: int, not long

16 years agoinclude <arpa/inet.h> inside tool.h
Florian Westphal [Sun, 25 Nov 2007 18:42:37 +0000 (18:42 +0000)]
include <arpa/inet.h> inside tool.h

In file included from hash.c:24:
../tool/tool.h:27: warning: `struct in_addr' declared inside parameter list