summaryrefslogtreecommitdiff
path: root/src/commands
AgeCommit message (Collapse)Author
2013-05-18Remove the size argument from IsChannel and IsNick.Peter Powell
There was only one case (which was probably an error) where these methods were not set to their ServerLimits value.
2013-05-16Get rid of strlcpy(), strlcat(), charlcat() and charremove()attilamolnar
2013-05-16Allow spaces (and more) in oper typesattilamolnar
The spaces are converted to '_' characters in OPERTYPE for 2.0 servers Issue #533 suggested by @ankitkv
2013-05-15Replace some C-isms with C++-isms.Peter Powell
* 'const char*' to 'const std::string&'. * snprintf to std::string concatenation. * Replace duplicated OneOfMatches with InspIRCd::MatchMask.
2013-05-14Add method for writing server notices.Peter Powell
This allows us to send a server notice to a user without worrying about whether they are registered or not. If a user receives a server notice and they are not registered then the nickname field will contain an asterisk instead of their nick name.
2013-04-28Merge insp20attilamolnar
2013-04-27Move <performance:nouserdns> to <connect:nouserdns>.Peter Powell
2013-04-26Fix WindowsAdam
2013-04-26Modularize DNSAdam
The DNS modules are temporarily in commands/ so they're loaded automatically Thanks to Attila for helping with much of this.
2013-04-13Add <security:allowcoreunload>.Peter Powell
When enabled (the default) this setting prevents the unloading of core modules such as cmd_privmsg.
2013-04-13Channel::JoinUser() and Channel::ForceChan() changesattilamolnar
Convert static Channel::ForceChan() to non-static Channel::ForceJoin() that joins a user to a channel, no permission checks The (static) Channel::JoinUser() now has a LocalUser parameter, and no longer have TS and bursting parameters. If the channel doesn't exist, it is created using current time as TS
2013-04-13Remove the deprecated invite APIattilamolnar
2013-04-12Add LOG_ prefix to the log level enum values.Peter Powell
2013-04-11Convert ISUPPORT to use a map instead of a string.Peter Powell
2013-04-10Replace IS_AWAY() and IS_OPER() macros with User::IsAway() and User::IsOper()attilamolnar
2013-04-09Move most whois related code from the core into cmd_whoisattilamolnar
2013-04-04Stop recreating hashmaps every hour, move garbage collection code related to ↵attilamolnar
local users to UserManager
2013-04-04Move whowas settings into cmd_whowas from ConfigReaderattilamolnar
2013-04-04Make cmd_whowas act like a module, remove special handlingattilamolnar
2013-04-03Convert InspIRCd::Duration() to be staticattilamolnar
2013-04-01Move member variables from User to LocalUserattilamolnar
- idle_lastmsg - dns_done - quitting_sendq - exempt - lastping
2013-04-01cmd_stats List opers without iterating the whole userlistattilamolnar
2013-04-01cmd_stats List opers without iterating the whole userlistattilamolnar
2013-04-01cmd_invite Check if the inviting user is on the channel before potentially ↵attilamolnar
telling him the target is already on it
2013-04-01Change IsNickHandler()/IsIdentHandler()/IsChannelHandler() to use C++ ↵attilamolnar
strings as arguments instead of C strings
2013-04-01Change channel name parameter of Module::OnUserPreJoin() and ↵attilamolnar
Channel::JoinUser() to std::string from char*
2013-04-01Change User::GetIPString() to return const std::string&attilamolnar
2013-03-29cmd_kill Send snotice to servers when both the oper and the victim are on ↵attilamolnar
the same server
2013-03-27cmd_lusers Fix miscountingattilamolnar
2013-03-03cmd_lusers Be smart and know how many invisible users are there without ↵attilamolnar
iterating the userlist
2013-03-03cmd_lusers Use of size() instead of counting elementsattilamolnar
2013-03-03cmd_lusers Refresh max local/global user counters after a user connectsattilamolnar
Fixes #423 reported by @RawrDragon
2013-03-03cmd_lusers Convert to a moduleattilamolnar
2013-02-11cmd_invite Send invite announcements to halfops and higher when ↵attilamolnar
<security:announceinvites> is 'dynamic' regardless of the channel being +i or not Clarify what the various options mean in the doc Fixes #418 reported by @RawrDragon
2013-02-11cmd_invite Correct error message when the user has no privs to invite and no ↵attilamolnar
halfop prefix is available
2012-12-15Add IS_SERVER() and REG_ALL checks to (mostly oper only) commands taking a ↵attilamolnar
target nickname If a SID was passed as the target user parameter or when it's an unregistered user reply with the "no such nick" (or the moral equivalent) message
2012-12-02Register all commands, modes and extensions using AddService()attilamolnar
AddService() throws an exception if an item cannot be registered, modules no longer need to worry about AddMode() etc. failing
2012-12-02Attach to events and register services in init()attilamolnar
2012-11-29Add a typedef for LocalUserListattilamolnar
2012-11-29cmd_rehash, m_spanningtree Fix REHASH messages duplicating at each hopattilamolnar
Fixes #375 reported by @JDowny
2012-11-28Change empty string assignments to .clear() or remove them entirelyattilamolnar
Part 2 of ba5c0db795824c3fc1ad48ce332d7bdc440cb77f
2012-10-21Fix /RESTART not closing file descriptorsattilamolnar
Fixes issue #262 reported by @MistrX
2012-10-21Make better use of User::GetFullRealHost()attilamolnar
2012-10-21Fix KILL accepting SIDs, get rid of potentially unsafe snprintf and strlcpyattilamolnar
2012-10-12Windows: In-depth cleanup (see details)ChrisTX
-Fix x64 builds for Windows. Now all configurations compile. -Remove the non-working rebase stuff. -Remove the Windows fork hack and instead use FreeConsole() to emulate the behavior. This directly allows us to compile with ASLR, which is turned on now. -Remove the old IPC mechanism for the removed GUI. This is not needed anymore as the GUI wasn't ever supported on anything newer than 1.2 -Remove the WIN32/WINDOWS macros. _WIN32 is supported on all x86-based VC++ targets, so that's what we need. -Enable optimizations for release builds. -De-duplicate printf_c(), it was previously copy-pasted into colors.h for configure -Add the VC++ specific bad files in .gitignore -Disable PID writing on Windows. This is only making sense for *nix builds. -Replace the CPU usage retrieval with an algorithm analogous to the *nix behavior. Also supports separated now/total values. (Tested with a dummy busy loop - seems working) -Removed certain unused functions and variables -Remove stdint defines from the windows wrapper -Remove CRT debug alloc. This is a bad idea as it would define a macro to replace free which breaks builds. -Re-evaluated the warnings list, commented it. -Moved inspircd_config/_version to include/ to match *nix -Removed the creation of inspircd_se_config, as it isn't used at all. -Made non-git builds show as "r0" instead of "r" (thanks to @SaberUK for pointing this out) -Fixed up m_spanningtree's project paths. Now all configurations (debug/release x86/x64) have been tested and build properly. -Moved FindDNS out of the wrapper and matched its log behavior with *nix. (It's pointless having it in the wrapper after the recent slimming down) -Replaced random/srandom wrappers with a mechanism that tries to use Windows' Random API first is no SSL module is loaded. -Removed more old junk from support for compilers older than VC++ 2010 (we don't have project files for these, so compiling them would be hard anyways) -Removed the unused ClearConsole() -Removed unused includes from the wrapper. Also, do not include psapi.h here if we don't link psapi.lib. This should be done where appropriate. -Made inet_aton an inline function for increased performance -C4800, performance warning about bool forcing, resolved at all occurrences. -C4701, uninitialized variable 'cached', resolved at all occurrences. -dlerror() was migrated out of the wrapper for more thread safety (no global buffer being shared) and increased performance. -Removed the wrong CRT debug flags. This drains a lot of performance. -Removed the clock_gettime/gettimeofday wrappers -Replaced all TCHAR/ANSI mix-ups of functions with the correct respective function. -Added a block of C4355 for < VS2012 -Update project files for c870714
2012-10-12Remove superfluous std::string()sattilamolnar
2012-10-12Fix unregistered users getting global notices, also fix certain commands ↵attilamolnar
working on unregistered users, spotted by @Adam-
2012-10-11Add myself to the Other Contributors listAdam
2012-09-30Fix more undefined behavior caused by referencing the returned buffer by ↵attilamolnar
std::string::c_str() when the object is temporary See 83c7cc45daf6fb1f8c36f15297a4657e45a34e88
2012-09-13Don't allow banned users to NOTICE a channel when ↵attilamolnar
security:restrictbannedusers is on Fixes #297 reported by @killerrabbit