summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
AgeCommit message (Collapse)Author
2020-01-03Bind ports before loading modules.Sadie Powell
This fixes a defect introduced in ce7979bd7d where the ircv3_sts module was unable to find the SSL listener.
2019-12-12Extract port binding code to a function and improve output.Peter Powell
2019-12-09Make BindPorts return size_t instead of int.Peter Powell
2019-12-09Make ForkIntoBackground handle exiting by itself.Peter Powell
2019-12-09Extract command line option parsing to a function.Peter Powell
2019-12-09Fix indentation of CheckRoot() and error in non-interactive mode.Peter Powell
2019-12-08Improve behaviour when running as root.Peter Powell
- Only give the annoying message about root if --runasroot is not specified. - If --runasroot is specified then assume the user knows what they are doing. - Move CheckRoot to a static function in inspircd.cpp.
2019-12-08Show the header before checking if the config file exists.Peter Powell
2019-12-08Initialise Winsock from inside the socket engine.Peter Powell
2019-12-08Extract config file finding code to a function.Peter Powell
2019-12-08Extract performance stat code to a function.Peter Powell
2019-12-08Move XLine garbage collection to core_xline.Peter Powell
2019-12-08Increase the core dump size earlier in the process lifetime.Peter Powell
According to `man 2 getrlimit` resource limits are inherited by the child when a process forks.
2019-12-08Call RecoverFromFork from ForkIntoBackground.Peter Powell
2019-12-08Convert InspIRCd::SetSignals to a static function.Peter Powell
2019-12-08Move forking code into a function and remove DaemonSeed.Peter Powell
2019-12-08Extract the core dump size increasing code to a function.Peter Powell
2019-12-08Make the UpdateTime function easier to read.Peter Powell
2019-12-08Extract root dropping code to a function.Peter Powell
2019-12-08Extract rng initialisation code to a function.Peter Powell
2019-12-08Move various static functions into an anonymous namespace.Peter Powell
2019-12-08Clean up the initialisation of the InspIRCd class.Peter Powell
2019-10-17Add an event which is fired when the server shuts down.Peter Powell
2019-07-03Fix not expanding <pid:file> correctly.Peter Powell
2019-06-20Deduplicate dirent.h inclusion.Peter Powell
2019-05-30Ignore SIGUSR1 and SIGUSR2 by default.Peter Powell
This stops users from accidentally killing their IRC server if they forget to load the sslrehashsignal module.
2019-02-05Quit users during cleanup instead of when /DIE is executed.Peter Powell
2019-02-05Delete the old broken test suite.Peter Powell
This doesn't work properly and is disabled in both debug & release builds. It will be resurrected with a proper unit testing framework in the future.
2019-01-24Move the <disabled> tag out of the core to a new module.Peter Powell
2018-12-04Add an option for changing the allowed server clock drift.Peter Powell
2018-08-13Implement IRCv3 message tag support.Peter Powell
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-08-07Remove the 'debug' snotice character.Peter Powell
2018-06-25Allow relative paths to be passed in --config on boot.Peter Powell
Closes #1115.
2018-06-04Add --nopid command line option (#1497).Chris Novakovic
Add a --nopid command line option, which causes a PID file not to be written to the file system regardless of the presence of the <pid> tag in the configuration file or the value of its "file" variable if it is present.
2017-12-23Get rid of InspIRCd::QuickExit.Peter Powell
This is just a thin wrapper around exit(). I don't think we really need it. While we are changing this code the setgroup/setuser code should be using EXIT_STATUS_CONFIG too.
2017-12-10Extract RFC modes from the core to core_channel and core_user.Peter Powell
2017-11-27Assume that RUSAGE_SELF is always defined.Peter Powell
This was added for Red Hat 7 which was released in 2000(!) which nobody should be using anymore.
2017-11-25Convert GenRandom to std::function.Peter Powell
2017-11-25Convert IsChannel to std::function.Peter Powell
2017-11-25Convert IsIdent to std::function.Peter Powell
2017-11-25Convert IsNick to std::function.Peter Powell
2017-11-17Fix a ton of -Wsign-conversion warnings.Peter Powell
2017-10-22Convert GetMaxFds() to size_t and deduplicate setting code.Peter Powell
2017-10-17Clean up the command disabling logic.Peter Powell
- Read the disabled command list in ApplyDisabledCommands() instead of storing it in a global which is only accessed on rehash. - Write debug messages to the log when disabling commands. - Use irc::spacesepstream instead of std::stringstream.
2017-10-12Merge the latest changes from insp20 into master.Peter Powell
2017-09-12Change FailedPortList to store a sockaddrs/int instead of string.Peter Powell
2017-09-12Clean up the <security:runas{user,group}> code.Peter Powell
- Get rid of unnecessary temporary values. - Remove an erroneous usage comment. - Reset errno before the call to setgroups. - Unify the two stage initialisation of g/u.
2017-09-11Move operquit out of the core and into core_user.Peter Powell
2017-09-11Fix killing elined clients on [gkz]line in some cases.Peter Powell
2017-08-26Make the build reproducible by removing time related macros.Peter Powell
The compile time on boot is not accurate as it will only change when the translation unit containing it is edited. The startup time in RPL_SERVERCREATED is a lot more useful than the compilation time. ngIRCd also implements this behaviour.