Commit Graph

320 Commits

Author SHA1 Message Date
Alexander Barton 628c14d656 Merge branch 'systemd'
* systemd:
  ngircd.sock: explicitely bind to IPv4 and IPv6 addresses
  Show address and port of sockets passed-in by systemd(8)
  Check type of sockets passed-in by systemd(8)
  Adjust severity levels of some log messages
  New configuration option "IdleTimeout": exit daemon when idle
  Implement support for systemd(8) "socket activation"
  contrib/README: add more files
2013-02-10 20:43:56 +01:00
Alexander Barton ac32d07aaf Commands.txt: spelling fixes ... 2013-02-10 00:35:03 +01:00
Alexander Barton cb7e4e8679 Commands.txt: Update description of the "USERS" command 2013-02-10 00:25:19 +01:00
Alexander Barton 35452b3157 Commands.txt: Update description of the "SUMMON" command 2013-02-10 00:25:09 +01:00
Alexander Barton e90d30a2cc Commands.txt: Update description of the "SERVLIST" command 2013-02-10 00:24:52 +01:00
Alexander Barton 45ab73ac81 Commands.txt: Update description of the "WHOWAS" command 2013-02-10 00:24:34 +01:00
Alexander Barton 78978994df Commands.txt: Update description of the "WHOIS" command 2013-02-10 00:24:14 +01:00
Alexander Barton 19cb29da51 Commands.txt: Update description of the "WHO" command 2013-02-10 00:23:59 +01:00
Alexander Barton 6ed3b6f85c Commands.txt: Update description of the "VERSION" command 2013-02-10 00:23:43 +01:00
Alexander Barton 5b8f13a4a9 Commands.txt: Update description of the "USERHOST" command 2013-02-10 00:23:27 +01:00
Alexander Barton b6e6e2e1da Commands.txt: Update description of the "TIME" command 2013-02-10 00:23:10 +01:00
Alexander Barton 7c7fc8b5c4 Commands.txt: Update description of the "STATS" command 2013-02-10 00:22:50 +01:00
Alexander Barton 1a5e08f3f6 Commands.txt: Update description of the "NAMES" command 2013-02-10 00:22:24 +01:00
Alexander Barton e051ea06fc Commands.txt: Update description of the "MOTD" command 2013-02-10 00:20:41 +01:00
Alexander Barton a7023113e7 Commands.txt: Update description of the "LUSERS" command 2013-02-10 00:20:19 +01:00
Alexander Barton 02e24f5d1e Commands.txt: Update description of the "LINKS" command 2013-02-10 00:19:59 +01:00
Alexander Barton 13740c1bf4 Commands.txt: Update description of the "ISON" command 2013-02-10 00:19:41 +01:00
Alexander Barton 8212b730c7 Commands.txt: Update description of the "INFO" command 2013-02-10 00:19:20 +01:00
Alexander Barton a4daa613ae Commands.txt: Update description of the "ADMIN" command 2013-02-10 00:18:43 +01:00
Alexander Barton f295117fba New configuration option "IdleTimeout": exit daemon when idle
This patch implements a new configuration option "IdleTimeout" in the
[Limits] section of the configuration file which can be used to set a
timeout (in seconds) after which the whole daemon will shutdown when no
more connections are left active after handling at least one client.

The default is 0, "never".

This can be useful for testing or when ngIRCd is started using "socket
activation" with systemd(8), for example.
2013-02-04 23:15:53 +01:00
Alexander Barton b7690a0add Commands.txt: Add description for the "CHARCONV" command 2013-02-03 19:02:42 +01:00
Alexander Barton 18ecc2fd81 Commands.txt: Add description for the "CAP" command 2013-02-03 18:59:44 +01:00
Alexander Barton 73fded7515 Commands.txt: Import descriptions from "rbose/command_help"
Import command description texts from the "rbose/command_help" branch,
which have been written by DNS <dns@rbose.org> -- thanks a lot!
2013-01-23 15:16:33 +01:00
Alexander Barton 7630e8ffc6 Commands.txt: Reorder some commands
Reorder some commands and introduce new section "Connection Handling".
Idea by DNS <dns@rbose.org>, thanks!
2013-01-23 15:02:46 +01:00
Alexander Barton 4552ad5269 Commands.txt: Fix some wording and spelling 2013-01-23 14:51:19 +01:00
Alexander Barton 950aeec3ff Use "${docdir}/Commands.txt" as help text file 2013-01-01 19:25:06 +01:00
Alexander Barton 8ec09e3ca4 Add doc/Commands.txt which should document all commands
This document can be used as "help text", too, see configuration option
"HelpFile" in ngircd.conf(5).

Please note that this file in its current state is far from complete, only
a few commands are documented, but you should get an idea how it works.

So please send in patches adding the remaining parts! :-)
2013-01-01 15:11:31 +01:00
Alexander Barton d2a1f6aa4b Document "HelpFile" in sample-ngircd.conf and ngircd.conf.5 2012-12-31 21:03:23 +01:00
Alexander Barton 1e5a7aac87 Makefiles: Correctly quote sed expressions
Now the Makefiles support spaces in "$sysconfdir", which isn't uncommon
for Cygwin for example, when $HOME contains whitespaces ("/home/User Name")
and ngIRCd is installed into the user home ("./configure --prefix=$HOME").
2012-12-25 19:14:31 +01:00
Alexander Barton 12768e7a54 Update doc/Platforms.txt 2012-11-26 11:54:23 +01:00
Alexander Barton 35e2dcff88 Rework cloaked hostname handling, implement "METADATA cloakhost"
Now ngIRCd uses two fields internally, one to store the "real" hostname
and one to save the "cloaked" hostname. And both fields can be set
independently using the "METADATA host" and "METADATA cloakhost" commands.

This allows "foreign servers" (aka "IRC services") to alter the real and
cloaked hostnames of clients without problems, even when the user itself
issues additional "MODE +x" and "MODE -x" commands.
2012-11-24 16:15:35 +01:00
Alexander Barton 53917fa4b8 Add new IRC+ server flag "X": "XOP modes supported"
This flag indicates, that the server supports the enhanced "xop channel
user modes", like channel owner, admin, and halfop. This information is
used to make sure that no unsupported CHANINFO commands are sent to
servers not supporting such mode prefixes, for example.
2012-11-10 23:33:19 +01:00
Alexander Barton 646218e6f4 Update autoconf/automake version numbers in doc/HowToRelease.txt 2012-11-10 21:50:36 +01:00
Alexander Barton c7db2f8429 doc/Services.txt: Update documentation for Anope 1.9.8
Starting with Anope 1.9.8, the ngIRCd protocol module is rewritten from
scratch by "DukePyrolator" and included in the Anope distribution. So no
patching is required any more, yeah!

Drawback: Anope 1.9.8 is in development and not yet released ...
2012-11-10 21:24:55 +01:00
Alexander Barton 7871a904d7 doc/Protocol.txt: Document METADATA command 2012-11-05 23:51:52 +01:00
Alexander Barton 79731a57f3 doc/Protocol.txt: add/fix CHARCONV description 2012-11-05 23:11:41 +01:00
Alexander Barton f2455cbe33 Update doc/Services.txt, sort services alphabetically 2012-11-04 13:22:26 +01:00
Alexander Barton 48326e061a Spelling fix: "nick name" -> "nickname" 2012-11-02 14:30:19 +01:00
Brett Smith 32f63abb59 Make the maximum /list reply length a configurable limit. 2012-10-25 14:46:29 -04:00
Alexander Barton 73229249d8 Add "i586/pc/haiku" to doc/Platforms.txt 2012-10-11 15:05:21 +00:00
DNS777 9d97004a28 Implement user mode "b": block messages
When a user has set mode "b", all private messages and notices to this
user are blocked if they don't originate from a registered user, an IRC Op,
server or service. The originator gets an error numeric sent back in this
case, ERR_CANNOTSENDTONICK_MSG(976), which is/was(?) used by KineIRCd, too.

This closes bug #144.
2012-10-08 12:11:04 +02:00
Alexander Barton c9d166747d Merge branch 'bug141-ModesQq'
This closes bug #141.

* bug141-ModesQq:
  KICK-protect IRC services
  Implement channel mode "Q" and user mode "q"

Conflicts:
	src/ngircd/defines.h
	src/ngircd/messages.h
2012-10-06 22:37:57 +02:00
DNS777 de453d71cb Implement channel mode 'V' (invite disallow)
If the new channel mode "V" is set, the INVITE command becomes invalid
and all clients get the new ERR_NOINVITE_MSG(518) reply.

Unreal and InspIRCd uses this mode, too.

This closes bug #143.
2012-10-06 20:49:35 +02:00
Alexander Barton 46b0eef721 Merge branch 'bug109-CHARCONV'
This closes bug #109.

* bug109-CHARCONV:
  Debian: require "telnet" or "telnet-ssl" for building
  Debian ngircd-full[-dbg]: enable CHARCONV
  Add "CHARCONV" to "feature string" when enabled
  Implement new IRC+ "CHARCONV" command
  Added new configure option "--with-iconv"

Conflicts:
	src/ngircd/messages.h
2012-10-06 18:26:25 +02:00
Alexander Barton d3ae351236 Implement channel mode "Q" and user mode "q"
Both modes protect users from channel kicks: only IRC operators and
servers can kick users having mode "q" or in channels with mode "Q".

Original patch by DNS777 <dns@rbose.org>, thanks!

This closes bug #141.
2012-10-06 18:13:01 +02:00
DNS777 808c291c76 New configuration option "OperChanPAutoOp"
If disabled, IRC operators don't become channel operators in persistent
channels when joining. Enabled by default, which has been the behavior
of ngIRCd up to this patch.

Closes bug #135.

(Cosmetic fixes by Alex.)
2012-09-25 13:08:39 +02:00
Alexander Barton b1b83831d1 Add doc/Contributing.txt to distribution archive 2012-09-24 17:40:33 +02:00
Alexander Barton e3e181f4b3 Merge branch 'bug92-xop'
By Alexander Barton (5) and Sebastian Köhler (2)

* bug92-xop:
  Fix NAMES/WHO response when client has multi-prefix
  Fix prefix of "halfop" when "multi-prefix" is active
  Clean up doc/.gitignore
  doc/Modes.txt: add version number to new channel modes
  Fix some "whitespace glitches"
  Tests and documentation for xop
  Implemented xop support

Conflicts (because of "multi-prefix fix"):
	src/ngircd/irc-info.c

This fixes bug #92 "ngircd does not support XOP usermodes".
2012-09-23 20:06:14 +02:00
Alexander Barton 1744a8d145 Clean up doc/.gitignore 2012-09-23 17:52:53 +02:00
Alexander Barton b12acddf4f doc/Modes.txt: add version number to new channel modes 2012-09-23 17:52:26 +02:00