about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)Author
2011-01-18conf: fix 'Value of "..." is not a number!' for negative valuesAlexander Barton
Don't use isdigit() function any more, because it only checks the first character of the variable value and because it doesn't know about the minus sign which is required e.g. for "Group = -1".
2011-01-18Don't read MOTD file twiceAlexander Barton
The MOTD file is read in Read_Config(), so don't read it when handling the "MotdFile" configuration variable. Instead make sure that it is initialized properly when (re-)reading the configuration.
2011-01-18Add [Features] section to ngircd-test{1|2}.confAlexander Barton
Fix commit 5a34bb203a: It is not enough to strip the "No" prefix from "Ident" and "PAM", but we have to introduce the new [Features] section to fix all warning messages of ngIRCd. Variables "Ident" and "PAM" in [Global] are completely wrong :-(
2011-01-18Enable WHOIS command to return information about servicesAlexander Barton
2011-01-18Update testsuite configuration: strip No... prefixesAlexander Barton
2011-01-16Add connection/socket information to some log messagesAlexander Barton
2011-01-10Implement channel mode 'O': "IRC operators only"Alexander Barton
This channel mode is used on DALnet (bahamut), for example.
2011-01-09Remove support for ZeroConf/Bonjour/Rendezvous service registrationAlexander Barton
2011-01-09TOPIC command: test for channel admin rights correctlyAlexander Barton
This enables other servers, services and IRC operators to change channel topics, even when the client is not joined to this channel. Now the handler for TOPIC behaves like the one for MODE.
2011-01-09Channel_CheckAdminRights(): test if client can admin a channelAlexander Barton
This generic function tests if a client is allowed to do administrative tasks to a specific channel: - servers and services are always truested ("allowed everything"), - channel operators are allowed, - IRC operarors are allowed if OperCanUseMode is set in the config.
2011-01-09conf: fix 'unknown section' FEATURES parse errorFlorian Westphal
pointed out by Alex: ngircd.conf, line 105: Unknown section "[Features]"!
2011-01-09IRC_TOPIC(): code cleanupAlexander Barton
2011-01-09conf: move 'run-time-feature-disable' options to new FEATURE sectionFlorian Westphal
2011-01-09array: remove check for allocated == 0Florian Westphal
allocated can only be zero if ->mem is NULL.
2011-01-09array: remove alignment of requested sizeFlorian Westphal
libc should know better than us. Also, this helps debugging with tools like valgrind: When you allocate an array of size x, and then erronoulsy use x+1 valgrind cannot detect the bug because due to ALIGN_() made by array.c we might have allocated more than size x...
2011-01-09conf: Warn if PAM=true when ngircd was built without PAM supportFlorian Westphal
2011-01-09conf: add missing static qualifierFlorian Westphal
internal helper, so it should be static. also, add UNUSED to 'Line'.
2011-01-09Update copyright notices for 2010 :)Alexander Barton
And update the NEWS and ChangeLog file as well.
2011-01-09Make NoZeroConf option work with HowlAlexander Barton
2011-01-09config: deprecate NoXX-OptionsFlorian Westphal
ngircd unfortunately uses several options using double-negation, e.g. NoIdent = No, NoPam = No, etc. This renames all options by dropping the "No" prefix, e.g. "NoIdent = no" becomes "Ident = yes". The old options will continue to work, but will cause a warning message. Also update man pages and default config. To prevent silly 'Ident = yes' from appearing in --configtest output in the 'ident support not compiled in and Ident Option not used' case, make default value depend on feature availability. If feature is available, enable by default, otherwise disable. We might consider moving these options to a new [Feature] section, or something like that, because none of these options are essential. Another possible improvement: 'Ident = yes' option in ngircd.conf causes a warning if ngircd was built without ident support. This does not happen with e.g. zeroconf....
2010-12-31channel: fix confusing "adding to invite list" debug outputFlorian Westphal
adding entries to ban list produced 'invite list' debug output...
2010-12-29Command throttling: introduce MAX_COMMANDS_SERVICEAlexander Barton
New MAX_COMMANDS_SERVICE (currently set to MAX_COMMANDS_SERVER[10]), so that services are handled like servers (and not regular users).
2010-12-29Don't throttle services and servers beeing registeredAlexander Barton
2010-12-24Don't assert() when serching a client for an invalid server tokenAlexander Barton
This is only relevant when a trusted server on a server-server link sends invalid commands.
2010-12-02--configtest: remember if MOTD is configured by file or phraseAlexander Barton
Configuration variables "MotdFile" and "MotdPhrase" are mutually exclusive; so don't display content in both of them when running "ngircd --configtest": instead remember which one is beeing used.
2010-12-02Enhance log messages when establishing server links a little bitAlexander Barton
2010-12-02Reset ID of outgoing server link on DNS error correctlyAlexander Barton
Not resetting the ID prevents the daemon from trying to re-establish outgoing server links when the DNS resolver failed to resole a hostname.
2010-12-02Don't log critical (or worse) messages to stderrAlexander Barton
stderr isn't redirected to the "error file" any more, so there is no point in trying to log to it ...
2010-12-01Remove "error file" when compiled with debug code enabledAlexander Barton
The information written to the "error file" (/tmp/ngircd-<PID>.err) when ngIRCd is compiled with debug code enabled isn't that usefule, so don't create this file at all.
2010-11-11New numeric 329: get channel creation time on "MODE #chan" commandsAlexander Barton
2010-11-11Save channel creation time; new function Channel_CreationTime()Alexander Barton
2010-10-27Fix connect attempts to further IP addresses of outgoing server linksAlexander Barton
If a hostname resolves to more than one IP address (round-robin DNS, IPv4 and IPv6) and an attempt to connect to the first address fails, ngIRCd should try to connect to the 2nd address, 3rd address etc. But because of a wrong variable used in the call to New_Server(), the wrong server structure has been used in further connection attemps which possibly lead to connection attempts to already connected servers.
2010-10-26Xcode builds ("make xcode"): disable pam_fail_delay()Alexander Barton
disable pam_fail_delay() only is available starting with Mac OS X 10.6; but we use the 10.5 SDK for campatibility, so don't use this function at all when building using Xcode.
2010-10-25ZeroConf: include header files missing since commit a988bbc86aAlexander Barton
2010-10-24Make sourcecode compatible with ansi2knr againAlexander Barton
This allows to compile ngIRCd using a pre-ANSI K&R C compiler again: all source files are automatically converted by the included ansi2knr program (of GNU automake/autoconf) before compiling them with the K&R C compiler, but a few coding standards must be met. Tested on Apple A/UX 3.x. Regression testing on Linux and Mac OS X.
2010-10-24Don't use PARAMS() macro for function implementationsAlexander Barton
The PARAMS() macro is only needed for function prototypes; don't use it for the actual implementations.
2010-10-19Only try to set FD_CLOEXEC if this flag is definedAlexander Barton
A/UX 3.x doesn't implement this constant, for example.
2010-10-19Only use "__attribute__ ((unused))" if GCC >=2.8 is usedAlexander Barton
At least GCC 2.7.2 doesn't support this attribute.
2010-10-11New configuration option "NoZeroConf" to disable ZeroConf registrationAlexander Barton
If ngIRCd is compiled to register its services using ZeroConf (e.g. using Howl, Avahi or on Mac OS X) this parameter can be used to disable service registration at runtime.
2010-10-05Make sure sighandlers.h is listed in noinst_HEADERSAlexander Barton
... because it must be included in the distribution archive :-)
2010-10-05const'ify ngt_SyslogFacilityName() functionAlexander Barton
This fixes the following gcc compiler warning: tool.c: In function 'ngt_SyslogFacilityName': tool.c:195: warning: return discards qualifiers from pointer target type
2010-09-24New configuration option "SyslogFacility"Alexander Barton
The new option "SyslogFacility" deines the syslog "facility" to which ngIRCd should send log messages. Possible values are system dependant, but most probably "auth", "daemon", "user" and "local1" through "local7" are possible values; see syslog(3). Default is "local5" for historical reasons.
2010-09-24New functions ngt_SyslogFacilityName() and ngt_SyslogFacilityID()Alexander Barton
These both functions translate syslog facility names to ID numbers and vice versa. On systems that don't define the facilitynames[] array in syslog.h, we try to build one ourself.
2010-09-22Explicitly cast return value of read(2) to "int"Alexander Barton
This fixes the following gcc warning, emitted by Xcode: src/ngircd/sighandlers.c: In function 'Signal_Callback': src/ngircd/sighandlers.c:239: warning: implicit conversion shortens 64-bit value into a 32-bit value
2010-09-22Don't call sigaction() if it is not available on the systemAlexander Barton
2010-09-14Fix signalpipe file descriptor leak on RESTARTFlorian Westphal
Signals_Init() must only be called once. This does not affect any ngircd release version. Earlier version of this patch moved the io and sighandler initialization before the while() loop, but as Alexander Barton noticed that broke all systems without builtin select support in io.c...
2010-09-14sighandlers.{c|h}: Code cleanupAlexander Barton
- declare signals_catch[] array not between the function implementations. - rename now local function NGIRCd_Rehash() to Rehash(). - remove empty and therefore not used "catch SIGHUP; break;".
2010-09-14Make sighandlers.{c|h} compatible with ansi2knrAlexander Barton
2010-09-14Output connection status when dumping the internal server stateAlexander Barton
2010-09-14Reformat "server state" debug messages a little bitAlexander Barton