Peter Powell
428e8f4f69
Fix some Windows-related problems.
...
- Fix an error relating to the unavailability of std::back_inserter.
- Fix loading configuration files when using relative paths.
- Fix two methods in hashcomp being exported twice.
- Remove some unimportant error messages.
2014-01-04 19:31:29 +01:00
Adam
dbbd333956
Add m_ldap, and convert m_ldapoper and m_ldapauth to use it.
2013-12-19 16:40:11 +01:00
Attila Molnar
1e8389b27f
Clean up CoreException
...
- Remove default constructor
- Replace virtual functions returning C strings with functions returning const std::string refs
2013-12-18 16:20:40 +01:00
Attila Molnar
ff407e6751
Remove unused motd and rules field from ServerConfig
2013-12-18 16:07:50 +01:00
Peter Powell
ad47ea6626
Make various self contained methods static.
...
- InspIRCd::IsValidMask
- InspIRCd::TimeString
2013-12-15 06:46:44 +00:00
Peter Powell
07d0d8f52f
Remove some pointless code:
...
- Remove the CHARSET entry from ISUPPORT.
CHARSET was removed in draft-brocklesby-irc-isupport-03 and we
always used the default value anyway. This has also been removed
in the latest version of Charybdis.
- Remove irc::sockets::satouser.
This helper method was longer than the code it replaced.
2013-12-15 06:46:44 +00:00
Peter Powell
02830985a1
Move stuff around a bit:
...
- Create FileSystem class:
* Move ServerConfig::CleanFilename to FileSystem::GetFileName and rewrite.
* Move ServerConfig::ExpandPath to FileSystem.
* Move ServerConfig::FileExists to FileSystem.
* Move ServerConfig::StartsWithWindowsDriveLetter to FileSystem.
- Move FileReader to fileutils.cpp and fix documentation.
- Move UserManager::DoBackgroundUserStuff to usermanager.cpp.
2013-12-15 06:46:35 +00:00
Adam
6c7a3ceb6c
Use WriteNumeric() everywhere we send numerics and include the user's nick automatically
2013-11-12 06:51:31 -05:00
Peter Powell
3b38de5b6e
Fix PrefixMode not being exported which caused runtime link errors.
2013-11-09 16:29:50 +00:00
attilamolnar
cc74fb0be4
Pass an interface to the OnSync hooks
...
Remove Module::ProtoSendMetaData()
2013-09-13 12:15:44 +02:00
attilamolnar
02220d48ee
Split ProtocolInterface::SendMetaData() into multiple functions
2013-09-13 12:15:44 +02:00
attilamolnar
58d7827bb1
Send ListModeBase modes implicitly on channel sync
...
Remove Module::ProtoSendMode() and ListModeBase::DoSyncChannel()
2013-09-12 14:44:17 +02:00
attilamolnar
7ba2507681
Keep lists of mode handlers by type
2013-09-12 14:44:17 +02:00
attilamolnar
52e4d9c96c
Add ModeHandler::IsListModeBase() and MC_LIST
2013-09-12 14:44:17 +02:00
attilamolnar
16398df07d
Move prefix mode specific fields and getters into PrefixMode
...
Add ModeHandler::IsPrefixMode()
2013-09-11 12:10:07 +02:00
attilamolnar
34fa5627de
Create a base class for prefix modes
...
Move Channel::SetPrefix() into Membership
2013-09-11 12:10:07 +02:00
attilamolnar
537ad4740a
Add a type id field to ModeHandler
2013-09-11 12:10:07 +02:00
attilamolnar
ba7431b4fd
Hide all symbols that aren't exported explicitly
...
In addition to reducing the sizes of all binaries this also helps the optimizer
2013-09-08 17:21:37 +02:00
attilamolnar
deb18ee9cf
Remove InspIRCd::HandleRehash functor
...
Call InspIRCd::Rehash() from cmd_rehash and from the SIGHUP handler
2013-09-08 17:21:01 +02:00
attilamolnar
992674362c
Automatically register ServiceProviders created by modules
2013-09-08 17:11:08 +02:00
attilamolnar
8a64bd3a0a
Deduplicate code in modmanager_static and modmanager_dynamic
2013-09-08 17:10:15 +02:00
attilamolnar
e6e3ae88fb
Remove ModuleManager::ModCount and GetCount()
2013-09-08 16:57:03 +02:00
attilamolnar
fabe111fb9
Fix module loading in PURE_STATIC builds
2013-09-08 16:54:33 +02:00
attilamolnar
d349f981fb
Remove ModuleManager::GetAllModuleNames(), use GetModules() instead
2013-08-30 13:15:10 +02:00
attilamolnar
c202dea024
Replace OnRehash() with ReadConfig() that is called on boot, on module load and on rehash
...
This eliminates the need for calling OnRehash() in init()
2013-08-30 13:15:10 +02:00
attilamolnar
1031f33333
Merge insp20
2013-08-30 13:01:10 +02:00
attilamolnar
d54eec6dd8
Don't CoreExport reference, fixes m_dnsbl on Windows
...
The explicit instantiations of reference are now useless; remove
2013-08-30 12:10:01 +02:00
attilamolnar
5384ddf545
Fix Windows build and a few more problems
2013-08-27 15:03:10 +02:00
Peter Powell
eaf658de3d
Fix various small issues.
...
- Add CXX11_OVERRIDE to *Regex::Matches and *RegexFactory::Create.
- Fix documentation comment on regex_string.
- Fix various code duplication/layout issues.
2013-08-27 12:20:03 +01:00
Peter Powell
0e7f74a7c8
Make all regex modules throw the same exception on error.
2013-08-27 12:07:49 +01:00
attilamolnar
61d586b1a3
Clean up the protocol interface
2013-08-25 13:41:36 +02:00
attilamolnar
153179b574
Create the CommandBase class from Command
...
The Handle() method is not part of CommandBase, making it possible to provide a different Handle() in each class derived from CommandBase
2013-08-18 15:11:02 +02:00
attilamolnar
b395c59997
m_spanningtree Propagate oper-only quit reason using METADATA, remove OPERQUIT
2013-08-18 13:48:31 +02:00
attilamolnar
19cc8380fb
Store oper types and opers in separate containers
2013-08-13 14:22:07 +02:00
attilamolnar
37394a80c2
Clean up a few constructors
...
Do not silently correct a zero TS in Channel::Channel(); require callers to supply a valid TS instead
2013-08-12 20:10:06 +02:00
attilamolnar
558eea33dc
cmd_whowas Major cleanup, fix inefficiencies
2013-08-12 20:00:10 +02:00
attilamolnar
6d39615998
Add ConfigTag::getDuration() with optional bounds checking
2013-08-12 19:20:18 +02:00
Peter Powell
12be0adc38
Clean up wildcard code.
...
- Move references and pointers next to the type.
- Rename match_internal to MatchInternal.
- Remove duplicate NULL check on map in MatchCIDR.
2013-08-12 18:06:27 +01:00
Peter Powell
29822a263b
Add <path> keys for all of the compile-time paths.
...
Also, make all paths in the config relative to their associated
directory. This reverts a change in 2.0 which turned out to be a
terrible idea, especially for system-wide installations.
2013-08-12 16:53:33 +01:00
Peter Powell
4509cbcc0b
Rename <options:moronbanner> to <options:xlinemessage>.
...
This name is more descriptive of what is actually is used for.
2013-08-10 14:04:09 +01:00
Peter Powell
86f650e6b8
Replace range() with min and max arguments on getInt().
2013-08-10 14:04:09 +01:00
Peter Powell
03a623a284
Rename <connect:nouserdns> to <connect:resolvehostnames>.
...
This name is more descriptive and avoids a double negative which
could make the name of this setting unclear to non-native speakers.
2013-08-10 14:04:09 +01:00
attilamolnar
dafa2f3031
Remove virtual User::GetClass() (but keep LocalUser::GetClass())
2013-08-09 18:28:11 +02:00
attilamolnar
b4542af6b4
Accept std::string as parameter in User::ChangeHost(), ChangeIdent() and ChangeName()
...
Pass the string itself to IsIdent() instead of string.c_str()
2013-08-09 18:20:12 +02:00
attilamolnar
e4b76e6502
Move host cycle logic into m_hostcycle
2013-08-09 18:10:48 +02:00
attilamolnar
9962840222
Fix a couple of issues
...
- Wrong doc for Snomask::GetDescription()
- Incorrect idle time when WHOISing remote users
- String + int = garbage
- Remote MODE commands (user mode changes) being broadcast in addition to being forwarded
- Incorrect revision being shown
2013-08-08 15:10:48 +02:00
attilamolnar
d24619c012
Automatically attach modules to events
2013-08-04 16:08:57 +02:00
Adam
8710724b55
Change the syntax of FOREACH macros to be less dumb.
2013-08-04 16:08:57 +02:00
attilamolnar
1a775c11c2
umode_s Rewrite ProcessNoticeMasks() and remove a few related useless functions
2013-07-24 18:10:34 +02:00
attilamolnar
c265641c0a
Rewrite SnomaskManager::SendMessage() and Flush(), split code into functions
2013-07-24 18:10:20 +02:00