Bryan Caldwell
3d8eda9c86
Allow KICK to handle comma-delimited lists (of channels, nicks).
...
includes test cases.
[fw@strlen.de:
- move code around to avoid duplication
- use const where possible
- integrate test case]
2008-05-05 16:12:41 +02:00
Alexander Barton
2a790861a1
Handle 1-character messages terminated with CR or LF correctly
...
Code cleanup and fix for Bug #83 , "ngIRCd chokes on 1-character messages" in
function Handle_Buffer(): the buffer is now correctly cleared when ngIRCd
receives 1-character messages terminated with either CR or LF (in violation
to RFC 2812, section 2.3 "Messages", 5th paragraph).
2008-05-02 02:14:15 +02:00
Ali Shemiran
530112b114
Add support for modeless channels
...
Add support for modeless channels (+channels).
[fw@strlen.de:
- integrate test cases
- don't support +channels when compiled with --strict-rfc
- do not set +o mode for channel creator
- force +nt mode when channel is created ]
2008-05-01 15:55:12 +02:00
Alexander Barton
6cfc56064e
Updated NEWS and ChangeLog for ngIRCd 0.12.0-pre2.
2008-04-29 15:34:15 +02:00
Alexander Barton
09968ee843
Documentation: get rid of some more references to CVS, switch to GIT.
...
(cherry picked from commit 6e9389b86c906c53a7797b8ced87a19195e16333)
2008-04-25 00:13:07 +02:00
Alexander Barton
92a9092208
Updated NEWS and ChangeLog for upcoming 0.12.0-pre1 release.
2008-04-20 15:48:49 +02:00
Alexander Barton
307f8abd74
Include Mac OS X Xcode project in distribution archives.
...
Oops, it has not been included since ... ages??
2008-04-09 19:09:23 +02:00
Florian Westphal
abb1abeb77
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.
2008-03-26 21:31:13 +01:00
Florian Westphal
feb31e4200
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.
2008-02-26 23:50:35 +01:00
Alexander Barton
c31ad221a6
Updated ChangeLog to include 0.11.1.
2008-02-26 23:49:33 +01:00
Rolf Eike Beer
44cdf1b1ca
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.
2008-02-26 23:49:33 +01:00
Alexander Barton
0250acc50b
Install a LaunchDaemon script to start/stop ngIRCd on Mac OS X.
2008-02-26 23:49:33 +01:00
Alexander Barton
ddecfcd831
Implemented IRC commands INFO, USERS (dummy), and SUMMON (dummy).
2008-02-26 23:49:33 +01:00
Dana Dahlstrom
2f71fbb2a1
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.
2008-02-26 23:49:33 +01:00
Dana Dahlstrom
1784180bf3
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.
2008-02-26 23:49:33 +01:00
Florian Westphal
4d152b771e
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.
2008-02-26 23:49:33 +01:00
Dana Dahlstrom
6bd35bf090
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]
2008-02-26 23:49:33 +01:00
Florian Westphal
59b19ea6a3
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>.
2008-02-26 23:49:33 +01:00
Alexander Barton
d1364ab488
Updated ChangeLog to reflect changes in 0.10.x and 0.11.x branches.
2008-01-07 23:08:14 +00:00
Florian Westphal
463c5cb7c5
IRC_PART could reference invalid memory.
2008-01-07 11:42:00 +00:00
Alexander Barton
478a8c01f9
Updated NEWS and ChangeLog files.
2008-01-02 11:31:48 +00:00
Florian Westphal
8974e90552
implement '/STAT u' (uptime)
2007-12-11 11:29:43 +00:00
Florian Westphal
37563537a9
document new "Bind" server config option in changelog.
2007-11-23 16:28:05 +00:00
Alexander Barton
47ca178a21
Introduce option to configure the maximum nick name lenth in ngircd.conf
...
- New configuration option "MaxNickLength" to specify the allowed maximum
length of user nick names. Note: must be unique in an IRC network!
- Enhanced the IRC+ protocol to support an enhanced "server handshake" and
enable server to recognice numeric 005 (ISUPPORT) and 376 (ENDOFMOTD).
See doc/Protocol.txt for details.
2007-11-21 12:16:33 +00:00
Alexander Barton
12db0bdc4f
Re-added doc/SSL.txt to distribution -- got lost somewhere!?
2007-11-20 21:39:35 +00:00
Alexander Barton
53b98fd7e9
Fixes the wrong logging output when nested servers are introduced
...
to the network as well as the wrong output of the LINKS command.
2007-11-20 20:02:40 +00:00
Alexander Barton
06bfb3adfb
Fix code to compile using K&R C compiler and ansi2kr again.
2007-11-18 15:05:35 +00:00
Florian Westphal
e47c9d750f
Document NoDNS Option in changelog
2007-10-25 11:03:02 +00:00
Alexander Barton
8f162f4e17
Fixed propagation of channel mode 'P' on server links.
2007-10-14 12:08:57 +00:00
Alexander Barton
d4ed056147
Numeric 317: implemented "signon time" (displayed in WHOIS result).
2007-10-04 15:03:55 +00:00
Alexander Barton
9021ea2070
Updated documentation ("Passive" option, for example).
2007-10-04 10:14:52 +00:00
Florian Westphal
640367e886
we now support /WALLOPS
2007-08-02 10:16:28 +00:00
Alexander Barton
69081851ac
SECURITY: Fixed a severe bug in handling JOIN commands, which could
...
cause the server to crash. Thanks to Sebastian Vesper, <net@veoson.net>.
2007-07-31 18:56:13 +00:00
Florian Westphal
cd65e0a56e
Don't connect to a server if a connection to another server within the same group
...
is in progress.
2007-06-28 15:13:38 +00:00
Florian Westphal
2275add327
Add new server config option to disable automatic connect. (Tassilo Schweyer)
2007-06-28 05:15:12 +00:00
Alexander Barton
fd1091541b
Updated documentation to include changes of ngIRCd 0.10.2.
2007-06-13 14:32:13 +00:00
Alexander Barton
ddf56cbe5f
Updated ChangeLog.
2007-05-17 23:38:14 +00:00
Florian Westphal
508b55126f
fix compressed server links
2007-05-02 12:34:30 +00:00
Alexander Barton
2e34ddae53
Updated documentation.
2007-04-08 11:39:08 +00:00
Florian Westphal
1b852fce72
add support for predefined-channel configuration of k and l modes
2006-12-29 14:09:48 +00:00
Alexander Barton
5c78230283
New configure option "--without-select"; when usin epoll() IO API include
...
support for select() as well by default and fall back on runtime when needed.
2006-12-26 16:00:45 +00:00
Alexander Barton
f36746a4d0
Updated ChangeLog/NEWS to reflect release of ngIRCd 0.10.1.
2006-12-17 21:00:30 +00:00
Alexander Barton
5b35b101f2
Fixed validation of server names containing digits.
2006-11-10 10:05:00 +00:00
Florian Westphal
058d3085a9
New configuration option "PredefChannelsOnly": if set, make
...
all JOINs to-non existants channel return ERR_BANNEDFROMCHAN_MSG,
restricting users to those channels defined in the config file.
2006-11-05 13:03:46 +00:00
Alexander Barton
4e02bdc322
Update info text of local server after re-reading configuration.
2006-10-03 10:59:40 +00:00
Alexander Barton
257312b102
Changed Numerics 265 and 266 to follow ircd 2.11.x "standards".
2006-10-01 19:13:32 +00:00
Alexander Barton
27d947fb7d
Allow PASS syntax defined in RFC 1459 for server links, too.
...
Removed client status CLIENT_GOTPASSSERVER.
2006-10-01 19:05:00 +00:00
Alexander Barton
bed98979dc
Enhanced ISUPPORT message (numeric 005).
2006-10-01 19:03:05 +00:00
Alexander Barton
bddb4914b4
Updated files from ngIRCd 0.10.0.
2006-10-01 17:23:36 +00:00
Alexander Barton
c888c81adf
Synchronized documentation with branch-0-10-x ...
2006-08-03 14:37:29 +00:00
Alexander Barton
f1f94f07e1
Validate "ServerName" variable.
2006-07-23 16:42:45 +00:00
Alexander Barton
c8fd051e06
Updated documentation.
2006-07-23 15:47:26 +00:00
Alexander Barton
a65eb347ec
Removed kqueue bug fix (never released), rephrased some internal changes,
...
and added "time shift" bug fix.
2006-05-09 15:45:30 +00:00
Florian Westphal
1f5bdaec84
kqueue fix.
2006-05-07 10:55:43 +00:00
Florian Westphal
a17745d6d7
Make connid same as connection fd.
2006-02-08 15:20:21 +00:00
Alexander Barton
4f8d646e2a
Adjusted ChangeLog for ngIRCd release 0.9.2.
2005-10-31 21:40:17 +00:00
Alexander Barton
bc09a3e487
Changed Handle_Write() to not close sockets itself but to call Conn_Close.
2005-10-11 19:29:23 +00:00
Florian Westphal
5b2364b236
merge new resolver code
2005-09-12 19:10:20 +00:00
Alexander Barton
b5b7c7f174
Updated Changelog: fixed file descriptor leak in resolver code.
2005-09-02 22:12:43 +00:00
Alexander Barton
e708790566
JOIN now supports more than one channel key at a time.
2005-09-02 15:46:49 +00:00
Alexander Barton
ca32c1b311
Implementec numeric "333": Time and user name who set a channel topic.
2005-09-02 12:50:25 +00:00
Alexander Barton
a2e4eb5aaf
Fixed server NOTICEs to users with "s" mode ("server messages").
2005-08-29 10:58:00 +00:00
Alexander Barton
4074fd9149
Enhanced the handler for PING and PONG commands: fix forwarding and enable
...
back-passing of a client supplied additional argument of PING.
2005-08-28 11:40:13 +00:00
Alexander Barton
e728bd2e1a
Changed handling of timeouts for unregistered connections: don't reset
...
the counter if data is received and disconnect clients earlier.
2005-08-27 23:33:10 +00:00
Alexander Barton
733e15bb64
Two spelling fixes.
2005-08-27 22:59:06 +00:00
Alexander Barton
99544e8d5d
Forgot to mention last change ...
2005-08-27 22:55:13 +00:00
Alexander Barton
d5c5d2a37f
Updated ChangeLog (from 0.9.1 branch).
2005-08-25 09:00:16 +00:00
Alexander Barton
b15d906dff
The KILL command killed much more than desired (including server links!)
...
when the target user is connected to a remote server. [from 0.9.x]
2005-08-02 23:19:21 +00:00
Alexander Barton
77f54693ef
Removed unnecessary #define of "LOCAL", now use plain C "static" instead.
2005-07-31 20:13:07 +00:00
Alexander Barton
b120c2a271
Fixed line wrapping.
2005-07-30 21:00:19 +00:00
Florian Westphal
890c3d9d72
add topic length changelog entry
2005-07-28 16:28:11 +00:00
Alexander Barton
21a067e0b1
Updated documentation from CVS branch-0-9-x.
2005-07-26 19:41:49 +00:00
Florian Westphal
2e794a6943
Reverse lookup now checks result by additional forward lookup
2005-07-25 09:20:10 +00:00
Florian Westphal
6b4ecf8c83
new buffer/IO API.
2005-07-07 18:50:23 +00:00
Alexander Barton
e5a19fa3a0
Fixed maximum length of user names, now allow up to 9 characters.
2005-07-05 22:44:47 +00:00
Alexander Barton
ccb747cb3b
Updated documentation.
2005-07-02 14:46:38 +00:00
Alexander Barton
eeccc193dd
Prepare documentation for release 0.9.0 ...
2005-06-26 21:54:01 +00:00
Alexander Barton
162338b8c8
Ignore unknown commands received before the client is registered.
2005-06-24 20:56:46 +00:00
Florian Westphal
1ca8bb5255
startup: fork only once, never run with uid 0
2005-06-17 19:04:53 +00:00
Florian Westphal
cac9f279fa
send RFC compliant netsplit messages.
2005-06-04 12:32:09 +00:00
Florian Westphal
517321807e
Fix Handling of quit messages: always send only one QUIT message.
2005-06-04 11:53:24 +00:00
Alexander Barton
cd0dc8627d
Don't exit server if closing of a socket fails; instead ignore it and
...
pray that this will be "the right thing" ...
2005-05-22 23:55:57 +00:00
Alexander Barton
06caecb0c4
Implemented IRC function "WHOWAS".
2005-05-16 12:25:15 +00:00
Alexander Barton
6ed37415fc
Used a spellchecker :-)
2005-04-13 21:40:49 +00:00
Alexander Barton
e635ed43bf
Don't enable assert() calls when not ./configure'd with --enable-debug.
2005-03-30 17:00:42 +00:00
Alexander Barton
9dfcc6504e
Fixed ./configure test for TCP Wrappers: now it runs on Mac OS X as well.
2005-03-21 22:15:15 +00:00
Alexander Barton
a822153309
Enhanced configure script: now you can pass an (optional) search path
...
to all --with-XXX parameters, e. g. "--with-ident=/opt/ident".
2005-03-20 17:23:36 +00:00
Florian Westphal
374f90f392
Add notice about typedef removal and stdbool.h/inttypes.h
2005-03-19 18:53:16 +00:00
Alexander Barton
1d08d51e2e
New configuration option "OperServerMode".
2005-03-15 16:56:16 +00:00
Alexander Barton
4ef172d603
Implemented support for "secret channels" (channel mode "s").
2005-03-02 16:35:10 +00:00
Alexander Barton
490c9d04d7
New configuration option "Mask" for [Operator] sections to limit OPER command.
2005-03-02 16:07:30 +00:00
Alexander Barton
9537542647
Write "error file" (/tmp/ngircd-XXX.err) only if compiled with debug
...
code ("--enable-debug") and running as daemon process.
2005-02-10 12:49:04 +00:00
Alexander Barton
894cd2cd68
Don't create version information string each time a client connects but
...
insetead on server startup. By Florian Westphal.
2005-02-09 09:52:58 +00:00
Alexander Barton
112102b10c
New configuration variable "PidFile", section "[Global]": if defined,
...
the server writes its process ID (PID) to this file. Default: off.
Idea by Florian Westphal, <westphal@foo.fh-furtwangen.de>.
2005-02-04 14:24:20 +00:00
Alexander Barton
ae63ed04c5
ngIRCd 0.8.3.
2005-02-04 14:21:35 +00:00
Alexander Barton
8308c170db
Fixed a bug that could case a root exploit when the daemon is compiled
...
to do IDENT lookups and is logging to syslog. Bug discovered by CoKi,
<coki@nosystem.com.ar>, thanks a lot!
(http://www.nosystem.com.ar/advisories/advisory-11.txt )
2005-02-03 09:26:42 +00:00
Alexander Barton
07fe19889b
Updated ChangeLog for 0.8.2.
2005-02-03 09:11:43 +00:00
Alexander Barton
2440ed080c
Fixed a buffer overflow that could cause the daemon to crash. Bug found
...
by Florian Westphal, <westphal@foo.fh-furtwangen.de>.
2005-01-26 13:23:24 +00:00
Alexander Barton
44172a8c7f
Fixed a possible buffer underrun when reading the MOTD file. Thanks to
...
Florian Westphal, <westphal@foo.fh-furtwangen.de>.
2005-01-24 14:17:21 +00:00
Alexander Barton
d16ce5a735
Code cleanups from Florian Westphal, <westphal@foo.fh-furtwangen.de>.
2005-01-20 00:11:49 +00:00