mirror of
https://github.com/anope/anope.git
synced 2026-07-04 06:23:14 +02:00
Cleanup some excess whitespaces and tabs, and fix a few typos along the way.
This commit is contained in:
+3
-3
@@ -45,20 +45,20 @@ if(MINOR_VERSION GREATER 5)
|
||||
set(CMAKE242_OR_BETTER TRUE)
|
||||
else(MINOR_VERSION GREATER 5)
|
||||
set(CMAKE26_OR_BETTER FALSE)
|
||||
# Also detect if we are using CMake 2.4.8 or better, the FIND sub-command of list() is non-existent in earlier versions
|
||||
# Also detect if we are using CMake 2.4.8 or better, the FIND sub-command of list() is nonexistent in earlier versions
|
||||
if(PATCH_VERSION GREATER 7)
|
||||
set(CMAKE248_OR_BETTER TRUE)
|
||||
set(CMAKE244_OR_BETTER TRUE)
|
||||
set(CMAKE242_OR_BETTER TRUE)
|
||||
else(PATCH_VERSION GREATER 7)
|
||||
set(CMAKE248_OR_BETTER FALSE)
|
||||
# Also detect if we are using CMake 2.4.4 or better, the CheckCXXCompilerFlag module and SORT sub-command of list() are non-existent in earlier versions
|
||||
# Also detect if we are using CMake 2.4.4 or better, the CheckCXXCompilerFlag module and SORT sub-command of list() are nonexistent in earlier versions
|
||||
if(PATCH_VERSION GREATER 3)
|
||||
set(CMAKE244_OR_BETTER TRUE)
|
||||
set(CMAKE242_OR_BETTER TRUE)
|
||||
else(PATCH_VERSION GREATER 3)
|
||||
set(CMAKE244_OR_BETTER FALSE)
|
||||
# ALSO detect if we are using CMake 2.4.2 or better, the APPEND sub-command of list() is non-existent in earlier versions
|
||||
# ALSO detect if we are using CMake 2.4.2 or better, the APPEND sub-command of list() is nonexistent in earlier versions
|
||||
if(PATCH_VERSION GREATER 1)
|
||||
set(CMAKE242_OR_BETTER TRUE)
|
||||
else(PATCH_VERSION GREATER 1)
|
||||
|
||||
+10
-10
@@ -106,7 +106,7 @@ Anope Version 2.0.0
|
||||
Added irc2sql stats module
|
||||
|
||||
Anope Version 1.9.9
|
||||
--------------------
|
||||
-------------------
|
||||
A Added a better webpanel template, removed the old one
|
||||
A Added SQL logging support
|
||||
A Added Redis database support
|
||||
@@ -118,7 +118,7 @@ F Fixed setting BotServ's default settings in the config
|
||||
F Fixed some names of config items, including NickServ's kill protect
|
||||
|
||||
Anope Version 1.9.8
|
||||
--------------------
|
||||
-------------------
|
||||
A Ability to configure fantasy commands in the config
|
||||
A Add SVSJOIN and SVSPART commands
|
||||
F Fix "leave" channel log level from not logging
|
||||
@@ -130,7 +130,7 @@ F Fix crash in os_forbid with expiring entries
|
||||
F Fix several issues with db_sql_live
|
||||
|
||||
Anope Version 1.9.7
|
||||
--------------------
|
||||
-------------------
|
||||
A Added ability for using regex as patterns for various commands
|
||||
A Extended ability of operserv/akill to also match against nick and realname
|
||||
A Added chanserv:require configuration option
|
||||
@@ -140,7 +140,7 @@ A Added a web panel
|
||||
A db_sql_live now allows all tables to be "live", not just a select few
|
||||
|
||||
Anope Version 1.9.6
|
||||
--------------------
|
||||
-------------------
|
||||
A Added ability to configure emails sent by services
|
||||
A Added chanserv/up and chanserv/down
|
||||
A Added m_proxyscan
|
||||
@@ -159,7 +159,7 @@ F Fixed crash in /os oper info
|
||||
F Fixed eventfd Config check to work properly on OpenVZ
|
||||
|
||||
Anope Version 1.9.5
|
||||
--------------------
|
||||
-------------------
|
||||
A Extended LDAP support
|
||||
A Added os_oper, os_kill, os_forbid, m_statusupdate, cs_sync, and bs_autoassign
|
||||
A Added a new configuration file format
|
||||
@@ -177,7 +177,7 @@ F Fixed setting -P on channels with only a botserv bot in it
|
||||
F Fixed modemanager complaining about prefixless modes on InspIRCd
|
||||
|
||||
Anope Version 1.9.4
|
||||
--------------------
|
||||
-------------------
|
||||
A Automatically set channel founder to the user with the highest access if there is no successor
|
||||
A /chanserv clone command to copy settings from one channel to another.
|
||||
A /chanserv mode command
|
||||
@@ -198,7 +198,7 @@ F Some failed logic in /operserv exception that prevents proper exceptions from
|
||||
F Fixed the anope_os_sxlines MySQL table and code to work after restarting
|
||||
|
||||
Anope Version 1.9.3
|
||||
--------------------
|
||||
-------------------
|
||||
A Added italics BotServ kicks support
|
||||
A Tell users when their nicks expire in /ns glist and /ns info
|
||||
A Added SSL support
|
||||
@@ -225,7 +225,7 @@ F Anoperc start/stop to send the globaloncycle global, and fixed anoperc rehash
|
||||
F Fixed a potential crash if HostServ or BotServ was disbled
|
||||
|
||||
Anope Version 1.9.2
|
||||
--------------------
|
||||
-------------------
|
||||
A K alias to chanserv kick command
|
||||
A KB alias to chanserv ban command
|
||||
A The ability to register empty nonregistered channels
|
||||
@@ -256,7 +256,7 @@ F ms_rsend to really work
|
||||
F SQUITing juped servers on InspIRCd1.2+
|
||||
|
||||
Anope Version 1.9.1
|
||||
--------------------
|
||||
-------------------
|
||||
F Don't enforce akick/forbidden/etc.-restrictions on clients on ulined servers.
|
||||
F Remove modules_unload_all fini + hack that goes with it.
|
||||
F Signal handling cleanup.
|
||||
@@ -297,7 +297,7 @@ Provided by Liber <Liber@jasonirc.net> - 2009
|
||||
F Support operoverride and such things (stop reversing changes from nonopped people where unnecessary)
|
||||
|
||||
Anope Version 1.9.0
|
||||
--------------------
|
||||
-------------------
|
||||
F Modified compile to use g++
|
||||
F Improve protocol modules support (classes, virtual methods, etc)
|
||||
F Move core services to use BotInfo
|
||||
|
||||
+2
-2
@@ -100,7 +100,7 @@ opertype:commands removed operserv/umode
|
||||
operserv:modules removed os_umode
|
||||
|
||||
Anope Version 1.9.3
|
||||
------------------
|
||||
-------------------
|
||||
** ADDED CONFIGURATION DIRECTIVES **
|
||||
nickserv/auspex privilege added
|
||||
SSL module added for SSL support
|
||||
@@ -134,7 +134,7 @@ networkinfo:logchannel, logbot, logusers, logmaxusers, logchannel, and options:k
|
||||
dumpcore because it really didn't do anything
|
||||
|
||||
Anope Version 1.9.2
|
||||
--------------------
|
||||
-------------------
|
||||
** ADDED CONFIGURATION DIRECTIVES **
|
||||
options:enablelogchannel added to auto turn on the logchannel on startup
|
||||
options:mlock added to configure the default mlock modes on new channels
|
||||
|
||||
+18
-19
@@ -1,4 +1,4 @@
|
||||
Anope DefCon
|
||||
Anope DefCon
|
||||
------------
|
||||
|
||||
1) Introduction
|
||||
@@ -11,7 +11,7 @@ Anope DefCon
|
||||
1) Introduction
|
||||
|
||||
Anope 1.6 onwards supports a unique protection mechanism based on the
|
||||
military "Defense Readiness Condition" (DefCon) system. It is based on
|
||||
military "Defense Readiness Condition" (DefCon) system. It is based on
|
||||
5 levels of defense readiness defined as:
|
||||
|
||||
DEFCON5 Normal peacetime readiness
|
||||
@@ -23,9 +23,9 @@ Anope DefCon
|
||||
These are configurable levels that mandates what actions Anope should
|
||||
take in case of emergency and change in readiness status.
|
||||
|
||||
It is used to prevent abuse to both Services, and the ircd on which they
|
||||
It is used to prevent abuse to both Services, and the ircd on which they
|
||||
are running. Also to protect the users, primarily in the event of Clones
|
||||
and/or FloodBOT attacks.
|
||||
and/or FloodBOT attacks.
|
||||
|
||||
2) Installation
|
||||
|
||||
@@ -44,26 +44,26 @@ Anope DefCon
|
||||
|
||||
Pre-defined DefCon actions:
|
||||
|
||||
No new channel registrations
|
||||
No New Nick Registrations
|
||||
No new channel registrations
|
||||
No New Nick Registrations
|
||||
No Mode Lock changes
|
||||
Force Chan Mode
|
||||
Use Reduced Session Limit
|
||||
KILL any new clients trying to connect
|
||||
Services will ignore everyone but opers
|
||||
Services will silently ignore everyone but opers
|
||||
AKILL all new clients trying to connect
|
||||
Force Chan Mode
|
||||
Use Reduced Session Limit
|
||||
KILL any new clients trying to connect
|
||||
Services will ignore everyone but opers
|
||||
Services will silently ignore everyone but opers
|
||||
AKILL all new clients trying to connect
|
||||
No new memos sent to block MemoServ attacks
|
||||
|
||||
|
||||
Information regarding how to enable this for specific defcon levels can
|
||||
be found in operserv.conf
|
||||
|
||||
4) Usage
|
||||
|
||||
Anope starts up in DEFCON5 (normal readiness). To change the Defcon level
|
||||
in action use:
|
||||
|
||||
/msg OperServ DEFCON 1|2|3|4|5
|
||||
Anope starts up in DEFCON5 (normal readiness). To change the Defcon level
|
||||
in action use:
|
||||
|
||||
/msg OperServ DEFCON 1|2|3|4|5
|
||||
|
||||
5) Usage Example
|
||||
|
||||
@@ -89,6 +89,5 @@ Anope DefCon
|
||||
|
||||
6) Support
|
||||
|
||||
You might get DefCon support by posting on our online forum, or maybe on
|
||||
You might get DefCon support by posting on our online forum, or maybe on
|
||||
our #anope channel at /server irc.anope.org.
|
||||
|
||||
|
||||
@@ -32,4 +32,3 @@ Anope Internal Events
|
||||
|
||||
The "anope_override" identifier is for compatibility with C++11.
|
||||
Its usage is highly recommended.
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
Frequently Asked Questions (FAQ) concerning Anope
|
||||
-------------------------------------------------
|
||||
|
||||
|
||||
The information in the 1.9 FAQ is subject to change at any
|
||||
moment due to new developments. Please visit our website
|
||||
for the most up to date information.
|
||||
|
||||
|
||||
An updated version of the FAQ can be found here:
|
||||
|
||||
http://wiki.anope.org/index.php/FAQ
|
||||
|
||||
+3
-3
@@ -60,7 +60,7 @@ Note: You should also read the README and FAQ files!
|
||||
most likely not work!
|
||||
|
||||
If you need help, you should visit http://forum.anope.org/ or #anope on
|
||||
irc.anope.org. Provide *complete* error output, along with other relevant
|
||||
irc.anope.org. Provide *complete* error output, along with other relevant
|
||||
information eg. OS, compiler and C++ library versions.
|
||||
See the README file for more information.
|
||||
|
||||
@@ -116,8 +116,8 @@ Note: You should also read the README and FAQ files!
|
||||
still running, and restart it if not.
|
||||
|
||||
First rename the example.chk script that is in Anope path (by default,
|
||||
this is ~/services/conf) to services.chk and edit it. You'll need to
|
||||
modify the CONFIGURATION part of the file. Then ensure that the file is
|
||||
this is ~/services/conf) to services.chk and edit it. You'll need to
|
||||
modify the CONFIGURATION part of the file. Then ensure that the file is
|
||||
marked as executable by typing chmod +x services.chk, and try to launch the
|
||||
script to see if it works (Anope must not be running when you do this ;))
|
||||
|
||||
|
||||
+6
-6
@@ -12,7 +12,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
|
||||
1) Installation d'Anope
|
||||
|
||||
NOTE IMPORTANTE : il est déconseillé d'utiliser (et même d'installer)
|
||||
Anope en tant que root. Utilisez un utilisateur non
|
||||
Anope en tant que root. Utilisez un utilisateur non
|
||||
privilégié. Celui que vous utilisez pour l'IRCd ou
|
||||
un utilisateur dédié suffira.
|
||||
|
||||
@@ -27,10 +27,10 @@ Note : Vous devrez également lire les fichiers README et FAQ !
|
||||
cmake --version
|
||||
|
||||
Si CMake est installé, vous aurez une ligne qui dit quelque chose comme
|
||||
"cmake version 2.8.12.2". Si la version est inférieure à 2.4 ou si vous
|
||||
"cmake version 2.8.12.2". Si la version est inférieure à 2.4 ou si vous
|
||||
obtenez une erreur disant que la commande n'a pas été trouvée, vous ne
|
||||
pourrez pas utiliser CMake à moins de l'installer vous-même dans votre
|
||||
répertoire home. CMake peut être téléchargé ici :
|
||||
répertoire home. CMake peut être téléchargé ici :
|
||||
|
||||
http://www.cmake.org/cmake/resources/software.html
|
||||
|
||||
@@ -50,7 +50,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
|
||||
Ceci va installer tous les fichiers nécessaires dans les dossiers que
|
||||
vous avez indiqués avec le script Config et régler les permissions des
|
||||
fichiers. Vous devez vous assurer que le répertoire data n'est pas
|
||||
accessible par les autres utilisateurs, car des utilisateurs
|
||||
accessible par les autres utilisateurs, car des utilisateurs
|
||||
malveillants pourraient causer des problèmes sur votre réseau, si les
|
||||
mots de passe ne sont pas chiffrés, ou lire les mémos de tous les
|
||||
utilisateurs.
|
||||
@@ -82,7 +82,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
|
||||
|
||||
3) Configuration de l'IRCd
|
||||
|
||||
Les Services agissent comme un serveur IRC avec des pseudo-clients.
|
||||
Les Services agissent comme un serveur IRC avec des pseudo-clients.
|
||||
Pour les relier à votre réseau, vous aurez besoin de configurer votre
|
||||
IRCd pour permettre aux services de se connecter.
|
||||
|
||||
@@ -106,7 +106,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
|
||||
Allez dans le répertoire où les fichiers binaires ont été installés
|
||||
(par défaut, ~/services/bin). Tapez ./services pour lancer Anope.
|
||||
|
||||
S'il y a des erreurs de syntaxe dans le fichier de configuration, elles
|
||||
S'il y a des erreurs de syntaxe dans le fichier de configuration, elles
|
||||
seront affichées à l'écran. Corrigez-les jusqu'à ce qu'il n'y en ait
|
||||
plus. Un démarrage réussi ne générera pas de message.
|
||||
|
||||
|
||||
+1
-1
@@ -117,7 +117,7 @@ Anope Modules
|
||||
|
||||
There are a number of useful documents on the Anope Wiki. The Anope Wiki
|
||||
can be reached at:
|
||||
|
||||
|
||||
* http://wiki.anope.org/
|
||||
|
||||
8) Modules Repository
|
||||
|
||||
@@ -4,4 +4,3 @@ Highlighted News in Anope 1.9
|
||||
* Added in live updating SQL and the ability to execute commands through SQL
|
||||
* Re-designed configuration file
|
||||
* Code refresh / rewrite into C++
|
||||
|
||||
|
||||
+3
-3
@@ -111,7 +111,7 @@ Table of Contents
|
||||
* Kein <kein-of@yandex.ru> (ru_RU)
|
||||
* Maik Funke <Han@mefalcon.org> (de_DE)
|
||||
* Isaac Fontal <i_fontal@hotmail.com> (es_ES)
|
||||
* Janos Kapitany <sarkanyka@cjbchat.hu> (hu_HU)
|
||||
* Janos Kapitany <sarkanyka@cjbchat.hu> (hu_HU)
|
||||
* Szymon S'wierkosz <szymek@adres.pl> (pl_PL)
|
||||
* Christopher N. <saka@epiknet.org> (fr_FR)
|
||||
* Yusuf Kurekci <ysfm.20@gmail.com> (tr_TR)
|
||||
@@ -247,9 +247,9 @@ Table of Contents
|
||||
|
||||
If you read the documentation carefully, and didn't find the answer to
|
||||
your question, feel free to post on the website forums or join our irc
|
||||
channel (irc.anope.org #anope). Once you join our Support channel be as
|
||||
channel (irc.anope.org #anope). Once you join our Support channel be as
|
||||
precise as possible when asking a question, because we have no extraordinary
|
||||
powers and can't guess things if they aren't provided.
|
||||
powers and can't guess things if they aren't provided.
|
||||
|
||||
The more precise you are the sooner you'll be likely to get an answer.
|
||||
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ Table of Contents
|
||||
1) Data structure
|
||||
|
||||
There are 4 key namespaces in Anope, they are:
|
||||
|
||||
|
||||
id - The keys in id are used to atomically create object ids for new
|
||||
objects. For example, if I were to create a new BotInfo I would first:
|
||||
|
||||
|
||||
+3
-4
@@ -20,7 +20,6 @@ Anope Bundled Tools
|
||||
address. This should generate a log file of what happened when it tried
|
||||
to connect to the SMTP server.
|
||||
|
||||
Credits:
|
||||
Originally written by Dominick Meglio <codemastr@unrealircd.com>
|
||||
Ported to *nix by Trystan Scott Lee <trystan@nomadirc.net>
|
||||
|
||||
Credits:
|
||||
Originally written by Dominick Meglio <codemastr@unrealircd.com>
|
||||
Ported to *nix by Trystan Scott Lee <trystan@nomadirc.net>
|
||||
|
||||
@@ -159,4 +159,3 @@ Anope for Windows
|
||||
Anope's Windows Installer was made using:
|
||||
|
||||
* NSIS 2.20 <http://nsis.sourceforge.net>
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@ class AnopeXMLRPC
|
||||
{
|
||||
return $this->run("channel", [$channel]);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sent a notice to a user.
|
||||
* Returns an array containing channel information, or an array of size one
|
||||
|
||||
+3
-3
@@ -25,7 +25,7 @@ extern CoreExport Serialize::Checker<nickalias_map> NickAliasList;
|
||||
extern CoreExport Serialize::Checker<nickcore_map> NickCoreList;
|
||||
|
||||
/* A registered nickname.
|
||||
* It matters that Base is here before Extensible (it is inherited by Serializable)
|
||||
* It matters that Base is here before Extensible (it is inherited by Serializable)
|
||||
*/
|
||||
class CoreExport NickAlias : public Serializable, public Extensible
|
||||
{
|
||||
@@ -214,7 +214,7 @@ class CoreExport NickCore : public Serializable, public Extensible
|
||||
* @return The account, if it exists
|
||||
*/
|
||||
static NickCore* Find(const Anope::string &nick);
|
||||
|
||||
|
||||
void AddChannelReference(ChannelInfo *ci);
|
||||
void RemoveChannelReference(ChannelInfo *ci);
|
||||
void GetChannelReferences(std::deque<ChannelInfo *> &queue);
|
||||
@@ -234,7 +234,7 @@ class CoreExport IdentifyRequest
|
||||
std::set<Module *> holds;
|
||||
bool dispatched;
|
||||
bool success;
|
||||
|
||||
|
||||
static std::set<IdentifyRequest *> Requests;
|
||||
|
||||
protected:
|
||||
|
||||
+2
-2
@@ -443,13 +443,13 @@ namespace Anope
|
||||
*/
|
||||
extern CoreExport void Unhex(const string &src, string &dest);
|
||||
extern CoreExport void Unhex(const string &src, char *dest, size_t sz);
|
||||
|
||||
|
||||
/** Base 64 encode a string
|
||||
* @param src The string to encode
|
||||
* @param target Where the encoded string is placed
|
||||
*/
|
||||
extern CoreExport void B64Encode(const string &src, string &target);
|
||||
|
||||
|
||||
/** Base 64 decode a string
|
||||
* @param src The base64 encoded string
|
||||
* @param target The plain text result
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ namespace Language
|
||||
* and we detect a language file exists for at least one of the supported
|
||||
* languages for the module, then we add the module's domain (its name)
|
||||
* here.
|
||||
*
|
||||
*
|
||||
* When strings are translated they are checked against all domains.
|
||||
*/
|
||||
extern std::vector<Anope::string> Domains;
|
||||
|
||||
+34
-34
@@ -22,21 +22,21 @@ namespace Message
|
||||
struct CoreExport Away : IRCDMessage
|
||||
{
|
||||
Away(Module *creator, const Anope::string &mname = "AWAY") : IRCDMessage(creator, mname, 0) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Capab : IRCDMessage
|
||||
{
|
||||
Capab(Module *creator, const Anope::string &mname = "CAPAB") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Error : IRCDMessage
|
||||
{
|
||||
Error(Module *creator, const Anope::string &mname = "ERROR") : IRCDMessage(creator, mname, 1) { }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
@@ -46,15 +46,15 @@ namespace Message
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Join : IRCDMessage
|
||||
{
|
||||
Join(Module *creator, const Anope::string &mname = "JOIN") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
|
||||
|
||||
typedef std::pair<ChannelStatus, User *> SJoinUser;
|
||||
|
||||
|
||||
/** Handle a SJOIN.
|
||||
* @param source The source of the SJOIN
|
||||
* @param chan The channel the users are joining to
|
||||
@@ -64,18 +64,18 @@ namespace Message
|
||||
*/
|
||||
static void SJoin(MessageSource &source, const Anope::string &chan, time_t ts, const Anope::string &modes, const std::list<SJoinUser> &users);
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Kick : IRCDMessage
|
||||
{
|
||||
Kick(Module *creator, const Anope::string &mname = "KICK") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Kill : IRCDMessage
|
||||
{
|
||||
Kill(Module *creator, const Anope::string &mname = "KILL") : IRCDMessage(creator, mname, 2) { }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
@@ -85,14 +85,14 @@ namespace Message
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport MOTD : IRCDMessage
|
||||
{
|
||||
MOTD(Module *creator, const Anope::string &mname = "MOTD") : IRCDMessage(creator, mname, 1) { }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Notice : IRCDMessage
|
||||
{
|
||||
Notice(Module *creator, const Anope::string &mname = "NOTICE") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
|
||||
@@ -103,70 +103,70 @@ namespace Message
|
||||
struct CoreExport Part : IRCDMessage
|
||||
{
|
||||
Part(Module *creator, const Anope::string &mname = "PART") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Ping : IRCDMessage
|
||||
{
|
||||
Ping(Module *creator, const Anope::string &mname = "PING") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Privmsg : IRCDMessage
|
||||
{
|
||||
Privmsg(Module *creator, const Anope::string &mname = "PRIVMSG") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Quit : IRCDMessage
|
||||
{
|
||||
Quit(Module *creator, const Anope::string &mname = "QUIT") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport SQuit : IRCDMessage
|
||||
{
|
||||
SQuit(Module *creator, const Anope::string &mname = "SQUIT") : IRCDMessage(creator, mname, 2) { }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Stats : IRCDMessage
|
||||
{
|
||||
Stats(Module *creator, const Anope::string &mname = "STATS") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Time : IRCDMessage
|
||||
{
|
||||
Time(Module *creator, const Anope::string &mname = "TIME") : IRCDMessage(creator, mname, 0) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Topic : IRCDMessage
|
||||
{
|
||||
Topic(Module *creator, const Anope::string &mname = "TOPIC") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Version : IRCDMessage
|
||||
{
|
||||
Version(Module *creator, const Anope::string &mname = "VERSION") : IRCDMessage(creator, mname, 0) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
struct CoreExport Whois : IRCDMessage
|
||||
{
|
||||
Whois(Module *creator, const Anope::string &mname = "WHOIS") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
|
||||
|
||||
|
||||
void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override;
|
||||
};
|
||||
|
||||
|
||||
+1
-1
@@ -197,7 +197,7 @@ class CoreExport ChannelModeStatus : public ChannelMode
|
||||
/** constructor
|
||||
* @param name The mode name
|
||||
* @param mc The mode char
|
||||
* @param msymbol The symbol for the mode, eg @ %
|
||||
* @param msymbol The symbol for the mode, eg @ %
|
||||
* @param mlevel A level for the mode, which is usually determined by the PREFIX capab
|
||||
*/
|
||||
ChannelModeStatus(const Anope::string &name, char mc, char msymbol, short mlevel);
|
||||
|
||||
+2
-2
@@ -72,7 +72,7 @@
|
||||
/**
|
||||
* This #define allows us to call a method in all
|
||||
* loaded modules in a readable simple way, e.g.:
|
||||
*
|
||||
*
|
||||
* FOREACH_MOD(OnUserConnect, (user, exempt));
|
||||
*/
|
||||
#define FOREACH_MOD(ename, args) \
|
||||
@@ -104,7 +104,7 @@ else \
|
||||
* This define is similar to the one above but returns a result.
|
||||
* The first module to return a result other than EVENT_CONTINUE is the value to be accepted,
|
||||
* and any modules after are ignored. This is used like:
|
||||
*
|
||||
*
|
||||
* EventReturn MOD_RESULT;
|
||||
* FOREACH_RESULT(OnUserConnect, MOD_RESULT, (user, exempt));
|
||||
*/
|
||||
|
||||
@@ -78,11 +78,11 @@ namespace DNS
|
||||
|
||||
Question() : type(QUERY_NONE), qclass(0) { }
|
||||
Question(const Anope::string &n, QueryType t, unsigned short c = 1) : name(n), type(t), qclass(c) { }
|
||||
inline bool operator==(const Question & other) const { return name == other.name && type == other.type && qclass == other.qclass; }
|
||||
inline bool operator==(const Question & other) const { return name == other.name && type == other.type && qclass == other.qclass; }
|
||||
|
||||
struct hash
|
||||
{
|
||||
size_t operator()(const Question &q) const
|
||||
size_t operator()(const Question &q) const
|
||||
{
|
||||
return Anope::hash_ci()(q.name);
|
||||
}
|
||||
@@ -94,7 +94,7 @@ namespace DNS
|
||||
unsigned int ttl;
|
||||
Anope::string rdata;
|
||||
time_t created;
|
||||
|
||||
|
||||
ResourceRecord(const Anope::string &n, QueryType t, unsigned short c = 1) : Question(n, t, c), ttl(0), created(Anope::CurTime) { }
|
||||
ResourceRecord(const Question &q) : Question(q), ttl(0), created(Anope::CurTime) { }
|
||||
};
|
||||
@@ -104,7 +104,7 @@ namespace DNS
|
||||
std::vector<Question> questions;
|
||||
std::vector<ResourceRecord> answers, authorities, additional;
|
||||
Error error;
|
||||
|
||||
|
||||
Query() : error(ERROR_NONE) { }
|
||||
Query(const Question &q) : error(ERROR_NONE) { questions.push_back(q); }
|
||||
};
|
||||
|
||||
@@ -25,7 +25,7 @@ class IgnoreService : public Service
|
||||
{
|
||||
protected:
|
||||
IgnoreService(Module *c) : Service(c, "IgnoreService", "ignore") { }
|
||||
|
||||
|
||||
public:
|
||||
virtual void AddIgnore(IgnoreData *) = 0;
|
||||
|
||||
|
||||
@@ -39,11 +39,11 @@ class NewsService : public Service
|
||||
NewsService(Module *m) : Service(m, "NewsService", "news") { }
|
||||
|
||||
virtual NewsItem *CreateNewsItem() = 0;
|
||||
|
||||
|
||||
virtual void AddNewsItem(NewsItem *n) = 0;
|
||||
|
||||
|
||||
virtual void DelNewsItem(NewsItem *n) = 0;
|
||||
|
||||
|
||||
virtual std::vector<NewsItem *> &GetNewsList(NewsType t) = 0;
|
||||
};
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ class SessionService : public Service
|
||||
|
||||
virtual Exception *FindException(User *u) = 0;
|
||||
|
||||
virtual Exception *FindException(const Anope::string &host) = 0;
|
||||
virtual Exception *FindException(const Anope::string &host) = 0;
|
||||
|
||||
virtual ExceptionVector &GetExceptions() = 0;
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Redis
|
||||
|
||||
Reply() { Clear(); }
|
||||
~Reply() { Clear(); }
|
||||
|
||||
|
||||
void Clear()
|
||||
{
|
||||
type = NOT_PARSED;
|
||||
|
||||
@@ -10,6 +10,6 @@ class SSLService : public Service
|
||||
{
|
||||
public:
|
||||
SSLService(Module *o, const Anope::string &n) : Service(o, "SSLService", n) { }
|
||||
|
||||
|
||||
virtual void Init(Socket *s) = 0;
|
||||
};
|
||||
|
||||
@@ -17,7 +17,7 @@ class XMLRPCRequest
|
||||
Anope::string id;
|
||||
std::deque<Anope::string> data;
|
||||
HTTPReply& r;
|
||||
|
||||
|
||||
XMLRPCRequest(HTTPReply &_r) : r(_r) { }
|
||||
inline void reply(const Anope::string &dname, const Anope::string &ddata) { this->replies.insert(std::make_pair(dname, ddata)); }
|
||||
inline const std::map<Anope::string, Anope::string> &get_replies() { return this->replies; }
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@ struct CoreExport Oper
|
||||
virtual ~Oper();
|
||||
|
||||
static std::vector<Oper *> opers;
|
||||
|
||||
|
||||
/** Find an oper block by name
|
||||
* @param name The name
|
||||
* @return the oper block
|
||||
|
||||
+1
-1
@@ -195,7 +195,7 @@ class CoreExport IRCDProto : public Service
|
||||
* initial handshake requirements.
|
||||
*/
|
||||
virtual void SendConnect() = 0;
|
||||
|
||||
|
||||
/** Called right before we begin our burst, after we have handshaked successfully with the uplink.
|
||||
* At this point none of our servers, users, or channels exist on the uplink
|
||||
*/
|
||||
|
||||
+12
-12
@@ -5,11 +5,11 @@
|
||||
*
|
||||
* Copyright (c) 2005-2011 Paul Hsieh
|
||||
* All rights reserved.
|
||||
*
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
@@ -17,7 +17,7 @@
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. The name of the author may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
@@ -730,15 +730,15 @@ typedef uint_least32_t uint_fast32_t;
|
||||
|
||||
#if defined (__TEST_PSTDINT_FOR_CORRECTNESS)
|
||||
|
||||
/*
|
||||
/*
|
||||
* Please compile with the maximum warning settings to make sure macros are not
|
||||
* defined more than once.
|
||||
*/
|
||||
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
|
||||
#define glue3_aux(x,y,z) x ## y ## z
|
||||
#define glue3(x,y,z) glue3_aux(x,y,z)
|
||||
|
||||
@@ -748,7 +748,7 @@ typedef uint_least32_t uint_fast32_t;
|
||||
#define DECL(us,bits) glue3(DECL,us,) (bits)
|
||||
|
||||
#define TESTUMAX(bits) glue3(u,bits,=) glue3(~,u,bits); if (glue3(UINT,bits,_MAX) glue3(!=,u,bits)) printf ("Something wrong with UINT%d_MAX\n", bits)
|
||||
|
||||
|
||||
int main () {
|
||||
DECL(I,8)
|
||||
DECL(U,8)
|
||||
@@ -765,7 +765,7 @@ int main () {
|
||||
char str0[256], str1[256];
|
||||
|
||||
sprintf (str0, "%d %x\n", 0, ~0);
|
||||
|
||||
|
||||
sprintf (str1, "%d %x\n", i8, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with i8 : %s\n", str1);
|
||||
sprintf (str1, "%u %x\n", u8, ~0);
|
||||
@@ -773,20 +773,20 @@ int main () {
|
||||
sprintf (str1, "%d %x\n", i16, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with i16 : %s\n", str1);
|
||||
sprintf (str1, "%u %x\n", u16, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with u16 : %s\n", str1);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with u16 : %s\n", str1);
|
||||
sprintf (str1, "%" PRINTF_INT32_MODIFIER "d %x\n", i32, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with i32 : %s\n", str1);
|
||||
sprintf (str1, "%" PRINTF_INT32_MODIFIER "u %x\n", u32, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with u32 : %s\n", str1);
|
||||
#ifdef INT64_MAX
|
||||
#ifdef INT64_MAX
|
||||
sprintf (str1, "%" PRINTF_INT64_MODIFIER "d %x\n", i64, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with i64 : %s\n", str1);
|
||||
#endif
|
||||
sprintf (str1, "%" PRINTF_INTMAX_MODIFIER "d %x\n", imax, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with imax : %s\n", str1);
|
||||
sprintf (str1, "%" PRINTF_INTMAX_MODIFIER "u %x\n", umax, ~0);
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with umax : %s\n", str1);
|
||||
|
||||
if (0 != strcmp (str0, str1)) printf ("Something wrong with umax : %s\n", str1);
|
||||
|
||||
TESTUMAX(8);
|
||||
TESTUMAX(16);
|
||||
TESTUMAX(32);
|
||||
|
||||
@@ -231,7 +231,7 @@ class CoreExport ChannelInfo : public Serializable, public Extensible
|
||||
*/
|
||||
Anope::string GetIdealBan(User *u) const;
|
||||
|
||||
/** Finds a ChannelInfo
|
||||
/** Finds a ChannelInfo
|
||||
* @param name channel name to lookup
|
||||
* @return the ChannelInfo associated with the channel
|
||||
*/
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ static std::string get_git_hash(const std::string &git_dir)
|
||||
fd.close();
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
fd.close();
|
||||
|
||||
filebuf = filebuf.substr(5);
|
||||
|
||||
@@ -167,4 +167,3 @@ endmacro(build_subdir)
|
||||
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
build_modules(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
|
||||
@@ -173,7 +173,7 @@ class CommandBSSetNoBot : public Command
|
||||
|
||||
if (value.equals_ci("ON"))
|
||||
{
|
||||
Log(LOG_ADMIN, source, this, ci) << "to enable nobot";
|
||||
Log(LOG_ADMIN, source, this, ci) << "to enable nobot";
|
||||
|
||||
ci->Extend<bool>("BS_NOBOT");
|
||||
if (ci->bi)
|
||||
@@ -182,7 +182,7 @@ class CommandBSSetNoBot : public Command
|
||||
}
|
||||
else if (value.equals_ci("OFF"))
|
||||
{
|
||||
Log(LOG_ADMIN, source, this, ci) << "to disable nobot";
|
||||
Log(LOG_ADMIN, source, this, ci) << "to disable nobot";
|
||||
|
||||
ci->Shrink<bool>("BS_NOBOT");
|
||||
source.Reply(_("No-bot mode is now \002off\002 on channel %s."), ci->name.c_str());
|
||||
|
||||
@@ -70,7 +70,7 @@ struct BadWordsImpl : BadWords
|
||||
{
|
||||
if (this->badwords->empty() || index >= this->badwords->size())
|
||||
return;
|
||||
|
||||
|
||||
FOREACH_MOD(OnBadWordDel, (ci, (*this->badwords)[index]));
|
||||
|
||||
delete this->badwords->at(index);
|
||||
@@ -127,7 +127,7 @@ Serializable* BadWordImpl::Unserialize(Serializable *obj, Serialize::Data &data)
|
||||
|
||||
unsigned int n;
|
||||
data["type"] >> n;
|
||||
|
||||
|
||||
BadWordImpl *bw;
|
||||
if (obj)
|
||||
bw = anope_dynamic_static_cast<BadWordImpl *>(obj);
|
||||
@@ -140,7 +140,7 @@ Serializable* BadWordImpl::Unserialize(Serializable *obj, Serialize::Data &data)
|
||||
BadWordsImpl *bws = ci->Require<BadWordsImpl>("badwords");
|
||||
if (!obj)
|
||||
bws->badwords->push_back(bw);
|
||||
|
||||
|
||||
return bw;
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ struct KickerDataImpl : KickerData
|
||||
capsmin = capspercent = 0;
|
||||
floodlines = floodsecs = 0;
|
||||
repeattimes = 0;
|
||||
|
||||
|
||||
dontkickops = dontkickvoices = false;
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ struct KickerDataImpl : KickerData
|
||||
{
|
||||
if (amsgs || badwords || bolds || caps || colors || flood || italics || repeat || reverses || underlines)
|
||||
return;
|
||||
|
||||
|
||||
ci->Shrink<KickerData>("kickerdata");
|
||||
}
|
||||
|
||||
@@ -297,7 +297,7 @@ class CommandBSKickBadwords : public CommandBSKickBase
|
||||
Process(source, ci, params[1], params.size() > 2 ? params[2] : "", TTB_BADWORDS, "badwords", kd, kd->badwords);
|
||||
kd->Check(ci);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
bool OnHelp(CommandSource &source, const Anope::string &subcommand) anope_override
|
||||
@@ -818,7 +818,7 @@ class CommandBSSetDontKickOps : public Command
|
||||
if (params[1].equals_ci("ON"))
|
||||
{
|
||||
bool override = !access.HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable dontkickops";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable dontkickops";
|
||||
|
||||
kd->dontkickops = true;
|
||||
source.Reply(_("Bot \002won't kick ops\002 on channel %s."), ci->name.c_str());
|
||||
@@ -826,7 +826,7 @@ class CommandBSSetDontKickOps : public Command
|
||||
else if (params[1].equals_ci("OFF"))
|
||||
{
|
||||
bool override = !access.HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable dontkickops";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable dontkickops";
|
||||
|
||||
kd->dontkickops = false;
|
||||
source.Reply(_("Bot \002will kick ops\002 on channel %s."), ci->name.c_str());
|
||||
@@ -883,7 +883,7 @@ class CommandBSSetDontKickVoices : public Command
|
||||
if (params[1].equals_ci("ON"))
|
||||
{
|
||||
bool override = !access.HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable dontkickvoices";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable dontkickvoices";
|
||||
|
||||
kd->dontkickvoices = true;
|
||||
source.Reply(_("Bot \002won't kick voices\002 on channel %s."), ci->name.c_str());
|
||||
@@ -891,7 +891,7 @@ class CommandBSSetDontKickVoices : public Command
|
||||
else if (params[1].equals_ci("OFF"))
|
||||
{
|
||||
bool override = !access.HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable dontkickvoices";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable dontkickvoices";
|
||||
|
||||
kd->dontkickvoices = false;
|
||||
source.Reply(_("Bot \002will kick voices\002 on channel %s."), ci->name.c_str());
|
||||
@@ -1364,7 +1364,7 @@ class BSKick : public Module
|
||||
else
|
||||
{
|
||||
Anope::string wordbuf = " " + bw->word + " ";
|
||||
|
||||
|
||||
if ((casesensitive && nbuf.find(wordbuf) != Anope::string::npos) || (!casesensitive && nbuf.find_ci(wordbuf) != Anope::string::npos))
|
||||
mustkick = true;
|
||||
}
|
||||
|
||||
@@ -437,7 +437,7 @@ class CommandCSAccess : public Command
|
||||
list.Process(replies);
|
||||
|
||||
source.Reply(_("Access list for %s:"), ci->name.c_str());
|
||||
|
||||
|
||||
for (unsigned i = 0; i < replies.size(); ++i)
|
||||
source.Reply(replies[i]);
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@ class CommandCSAKick : public Command
|
||||
}
|
||||
|
||||
Entry e("", mask);
|
||||
|
||||
|
||||
mask = (e.nick.empty() ? "*" : e.nick) + "!"
|
||||
+ (e.user.empty() ? "*" : e.user) + "@"
|
||||
+ (e.host.empty() ? "*" : e.host);
|
||||
@@ -272,7 +272,7 @@ class CommandCSAKick : public Command
|
||||
{
|
||||
if (!number || number > ci->GetAkickCount())
|
||||
return;
|
||||
|
||||
|
||||
const AutoKick *akick = ci->GetAkick(number - 1);
|
||||
|
||||
Anope::string timebuf, lastused;
|
||||
@@ -347,7 +347,7 @@ class CommandCSAKick : public Command
|
||||
list.Process(replies);
|
||||
|
||||
source.Reply(_("Autokick list for %s:"), ci->name.c_str());
|
||||
|
||||
|
||||
for (unsigned i = 0; i < replies.size(); ++i)
|
||||
source.Reply(replies[i]);
|
||||
|
||||
@@ -442,7 +442,7 @@ class CommandCSAKick : public Command
|
||||
}
|
||||
|
||||
bool is_list = cmd.equals_ci("LIST") || cmd.equals_ci("VIEW");
|
||||
|
||||
|
||||
bool has_access = false;
|
||||
if (source.AccessFor(ci).HasPriv("AKICK") || source.HasPriv("chanserv/access/modify"))
|
||||
has_access = true;
|
||||
|
||||
@@ -61,7 +61,7 @@ class CommandCSEnforce : public Command
|
||||
}
|
||||
|
||||
for (unsigned i = 0; i < users.size(); ++i)
|
||||
{
|
||||
{
|
||||
User *user = users[i];
|
||||
|
||||
Anope::string mask = ci->GetIdealBan(user);
|
||||
@@ -158,7 +158,7 @@ class CommandCSEnforce : public Command
|
||||
for (unsigned i = 0; i < users.size(); ++i)
|
||||
{
|
||||
User *user = users[i];
|
||||
|
||||
|
||||
Anope::string reason = Language::Translate(user, _("BANS enforced by ")) + source.GetNick();
|
||||
ci->c->Kick(NULL, user, "%s", reason.c_str());
|
||||
}
|
||||
@@ -213,7 +213,7 @@ class CommandCSEnforce : public Command
|
||||
for (unsigned i = 0; i < users.size(); ++i)
|
||||
{
|
||||
User *user = users[i];
|
||||
|
||||
|
||||
Anope::string reason = Language::Translate(user, _("LIMIT enforced by ")) + source.GetNick();
|
||||
ci->c->Kick(NULL, user, "%s", reason.c_str());
|
||||
}
|
||||
|
||||
@@ -133,7 +133,7 @@ class CommandEntryMessage : public Command
|
||||
|
||||
source.Reply(_("End of entry message list."));
|
||||
}
|
||||
|
||||
|
||||
void DoAdd(CommandSource &source, ChannelInfo *ci, const Anope::string &message)
|
||||
{
|
||||
EntryMessageList *messages = ci->Require<EntryMessageList>("entrymsg");
|
||||
|
||||
@@ -45,7 +45,7 @@ class FlagsChanAccess : public ChanAccess
|
||||
{
|
||||
if (access->provider->name == "access/flags")
|
||||
return access->AccessSerialize();
|
||||
|
||||
|
||||
std::set<char> buffer;
|
||||
|
||||
for (std::map<Anope::string, char>::iterator it = defaultFlags.begin(), it_end = defaultFlags.end(); it != it_end; ++it)
|
||||
|
||||
@@ -230,7 +230,7 @@ class CommandCSSetPrivate : public Command
|
||||
this->SendSyntax(source);
|
||||
source.Reply(" ");
|
||||
source.Reply(_("Enables or disables the \002private\002 option for a channel."));
|
||||
|
||||
|
||||
BotInfo *bi;
|
||||
Anope::string cmd;
|
||||
if (Command::FindCommandFromService("chanserv/list", bi, cmd))
|
||||
|
||||
@@ -53,7 +53,7 @@ struct LogSettingImpl : LogSetting, Serializable
|
||||
ChannelInfo *ci = ChannelInfo::Find(sci);
|
||||
if (ci == NULL)
|
||||
return NULL;
|
||||
|
||||
|
||||
LogSettingImpl *ls;
|
||||
if (obj)
|
||||
ls = anope_dynamic_static_cast<LogSettingImpl *>(obj);
|
||||
|
||||
@@ -222,13 +222,13 @@ void ModeLockImpl::Serialize(Serialize::Data &data) const
|
||||
Serializable* ModeLockImpl::Unserialize(Serializable *obj, Serialize::Data &data)
|
||||
{
|
||||
Anope::string sci;
|
||||
|
||||
|
||||
data["ci"] >> sci;
|
||||
|
||||
ChannelInfo *ci = ChannelInfo::Find(sci);
|
||||
if (!ci)
|
||||
return NULL;
|
||||
|
||||
|
||||
ModeLockImpl *ml;
|
||||
if (obj)
|
||||
ml = anope_dynamic_static_cast<ModeLockImpl *>(obj);
|
||||
@@ -475,7 +475,7 @@ class CommandCSMode : public Command
|
||||
else
|
||||
this->OnSyntaxError(source, subcommand);
|
||||
}
|
||||
|
||||
|
||||
void DoSet(CommandSource &source, ChannelInfo *ci, const std::vector<Anope::string> ¶ms)
|
||||
{
|
||||
User *u = source.GetUser();
|
||||
@@ -832,7 +832,7 @@ class CommandCSModes : public Command
|
||||
source.Reply(ACCESS_DENIED);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (u == targ ? !u_access.HasPriv(m.second + "ME") : !u_access.HasPriv(m.second))
|
||||
{
|
||||
if (!can_override)
|
||||
@@ -929,7 +929,7 @@ class CSMode : public Module
|
||||
for (int i = 0; i < conf->CountBlock("command"); ++i)
|
||||
{
|
||||
Configuration::Block *block = conf->GetBlock("command", i);
|
||||
|
||||
|
||||
const Anope::string &cname = block->Get<const Anope::string>("name"),
|
||||
&cmd = block->Get<const Anope::string>("command");
|
||||
|
||||
@@ -938,7 +938,7 @@ class CSMode : public Module
|
||||
|
||||
const Anope::string &set = block->Get<const Anope::string>("set"),
|
||||
&unset = block->Get<const Anope::string>("unset");
|
||||
|
||||
|
||||
if (set.empty() && unset.empty())
|
||||
continue;
|
||||
|
||||
@@ -983,7 +983,7 @@ class CSMode : public Module
|
||||
if (c->HasMode(cm->name))
|
||||
c->RemoveMode(NULL, cm, "", false);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else if (cm->type == MODE_LIST || cm->type == MODE_STATUS)
|
||||
{
|
||||
|
||||
@@ -57,7 +57,7 @@ struct SeenInfo : Serializable
|
||||
static Serializable* Unserialize(Serializable *obj, Serialize::Data &data)
|
||||
{
|
||||
Anope::string snick;
|
||||
|
||||
|
||||
data["nick"] >> snick;
|
||||
|
||||
SeenInfo *s;
|
||||
|
||||
@@ -1312,7 +1312,7 @@ class CSSet : public Module
|
||||
{
|
||||
if (chan->ci)
|
||||
{
|
||||
if (noautoop.HasExt(chan->ci))
|
||||
if (noautoop.HasExt(chan->ci))
|
||||
give_modes = false;
|
||||
if (secureops.HasExt(chan->ci) && !user->HasPriv("chanserv/administration"))
|
||||
// This overrides what chanserv does because it is loaded after chanserv
|
||||
|
||||
@@ -54,7 +54,7 @@ class CommandCSSuspend : public Command
|
||||
{
|
||||
public:
|
||||
CommandCSSuspend(Module *creator) : Command(creator, "chanserv/suspend", 2, 3)
|
||||
{
|
||||
{
|
||||
this->SetDesc(_("Prevent a channel from being used preserving channel data and settings"));
|
||||
this->SetSyntax(_("\037channel\037 [+\037expiry\037] [\037reason\037]"));
|
||||
}
|
||||
|
||||
@@ -121,7 +121,7 @@ class CommandCSTopic : public Command
|
||||
ci->c->ChangeTopic(source.GetNick(), topic, Anope::CurTime);
|
||||
if (has_topiclock)
|
||||
topiclock->Set(ci);
|
||||
|
||||
|
||||
bool override = !source.AccessFor(ci).HasPriv("TOPIC");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << (!topic.empty() ? "to change the topic to: " : "to unset the topic") << (!topic.empty() ? topic : "");
|
||||
}
|
||||
|
||||
@@ -166,7 +166,7 @@ class CommandCSDown : public Command
|
||||
const Anope::string &nick = params.size() > 1 ? params[1] : source.GetNick();
|
||||
|
||||
Channel *c = Channel::Find(channel);
|
||||
|
||||
|
||||
if (c == NULL)
|
||||
{
|
||||
source.Reply(CHAN_X_NOT_IN_USE, channel.c_str());
|
||||
|
||||
@@ -349,7 +349,7 @@ class CommandCSXOP : public Command
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
source.Reply(_("\002%s\002 not found on %s %s list."), mask.c_str(), ci->name.c_str(), source.command.c_str());
|
||||
}
|
||||
}
|
||||
@@ -466,7 +466,7 @@ class CommandCSXOP : public Command
|
||||
|
||||
if (access->provider->name != "access/xop" || source.command.upper() != access->AccessSerialize())
|
||||
continue;
|
||||
|
||||
|
||||
delete ci->EraseAccess(i - 1);
|
||||
}
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ class CommandBSSetGreet : public Command
|
||||
if (value.equals_ci("ON"))
|
||||
{
|
||||
bool override = !source.AccessFor(ci).HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable greets";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable greets";
|
||||
|
||||
ci->Extend<bool>("BS_GREET");
|
||||
source.Reply(_("Greet mode is now \002on\002 on channel %s."), ci->name.c_str());
|
||||
@@ -54,7 +54,7 @@ class CommandBSSetGreet : public Command
|
||||
else if (value.equals_ci("OFF"))
|
||||
{
|
||||
bool override = !source.AccessFor(ci).HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable greets";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable greets";
|
||||
|
||||
ci->Shrink<bool>("BS_GREET");
|
||||
source.Reply(_("Greet mode is now \002off\002 on channel %s."), ci->name.c_str());
|
||||
|
||||
@@ -40,7 +40,7 @@ class CommandHelp : public Command
|
||||
FOREACH_RESULT(OnPreHelp, MOD_RESULT, (source, params));
|
||||
if (MOD_RESULT == EVENT_STOP)
|
||||
return;
|
||||
|
||||
|
||||
Anope::string source_command = source.command;
|
||||
const BotInfo *bi = source.service;
|
||||
const CommandInfo::map &map = source.c ? Config->Fantasy : bi->commands;
|
||||
@@ -149,7 +149,7 @@ class CommandHelp : public Command
|
||||
|
||||
if (hide_privileged_commands && !info.permission.empty() && !source.HasCommand(info.permission))
|
||||
continue;
|
||||
|
||||
|
||||
// Allow unregistered users to see help for commands that they explicitly request help for
|
||||
|
||||
const Anope::string &subcommand = params.size() > max ? params[max] : "";
|
||||
@@ -183,7 +183,7 @@ class CommandHelp : public Command
|
||||
if (helped == false)
|
||||
source.Reply(_("No help available for \002%s\002."), params[0].c_str());
|
||||
}
|
||||
|
||||
|
||||
FOREACH_MOD(OnPostHelp, (source, params));
|
||||
|
||||
return;
|
||||
|
||||
@@ -24,7 +24,7 @@ class CommandHSGroup : public Command
|
||||
if (!na || !na->HasVhost())
|
||||
return;
|
||||
|
||||
setting = true;
|
||||
setting = true;
|
||||
for (unsigned i = 0; i < na->nc->aliases->size(); ++i)
|
||||
{
|
||||
NickAlias *nick = na->nc->aliases->at(i);
|
||||
|
||||
@@ -102,7 +102,7 @@ class CommandHSRequest : public Command
|
||||
}
|
||||
|
||||
Anope::string rawhostmask = params[0];
|
||||
|
||||
|
||||
Anope::string user, host;
|
||||
size_t a = rawhostmask.find('@');
|
||||
|
||||
@@ -380,7 +380,7 @@ static void req_send_memos(Module *me, CommandSource &source, const Anope::strin
|
||||
for (unsigned i = 0; i < Oper::opers.size(); ++i)
|
||||
{
|
||||
Oper *o = Oper::opers[i];
|
||||
|
||||
|
||||
const NickAlias *na = NickAlias::Find(o->name);
|
||||
if (!na)
|
||||
continue;
|
||||
|
||||
@@ -110,7 +110,7 @@ class CommandHSSetAll : public Command
|
||||
{
|
||||
if (!na || !na->HasVhost())
|
||||
return;
|
||||
|
||||
|
||||
for (unsigned i = 0; i < na->nc->aliases->size(); ++i)
|
||||
{
|
||||
NickAlias *nick = na->nc->aliases->at(i);
|
||||
|
||||
@@ -58,7 +58,7 @@ class CommandMSRSend : public Command
|
||||
source.Reply(_("Please wait %d seconds before using the %s command again."), Config->GetModule("memoserv")->Get<time_t>("senddelay"), source.command.c_str());
|
||||
else if (result == MemoServService::MEMO_TARGET_FULL)
|
||||
source.Reply(_("Sorry, %s currently has too many memos and cannot receive more."), nick.c_str());
|
||||
else
|
||||
else
|
||||
{
|
||||
source.Reply(_("Memo sent to \002%s\002."), nick.c_str());
|
||||
|
||||
|
||||
@@ -197,7 +197,7 @@ class CommandNSAJoin : public Command
|
||||
for (; i < (*channels)->size(); ++i)
|
||||
if ((*channels)->at(i)->channel.equals_ci(chan))
|
||||
break;
|
||||
|
||||
|
||||
if (i == (*channels)->size())
|
||||
notfoundchans += chan + ", ";
|
||||
else
|
||||
@@ -341,7 +341,7 @@ class NSAJoin : public Module
|
||||
bool need_invite = false;
|
||||
Anope::string key = entry->key;
|
||||
AccessGroup u_access;
|
||||
|
||||
|
||||
if (ci != NULL)
|
||||
{
|
||||
if (ci->HasExt("CS_SUSPENDED"))
|
||||
@@ -362,7 +362,7 @@ class NSAJoin : public Module
|
||||
need_invite = true;
|
||||
else if (c->HasMode("INVITE") && c->MatchesList(u, "INVITEOVERRIDE") == false)
|
||||
need_invite = true;
|
||||
|
||||
|
||||
if (c->HasMode("KEY"))
|
||||
{
|
||||
Anope::string k;
|
||||
|
||||
@@ -81,7 +81,7 @@ class CommandNSAList : public Command
|
||||
AccessGroup access = ci->AccessFor(nc, false);
|
||||
if (access.empty())
|
||||
continue;
|
||||
|
||||
|
||||
++chan_count;
|
||||
|
||||
entry["Number"] = stringify(chan_count);
|
||||
|
||||
@@ -65,7 +65,7 @@ class CommandNSDrop : public Command
|
||||
if (!source.HasPriv("nickserv/drop"))
|
||||
source.Reply(_("You may drop any nick within your group."));
|
||||
else
|
||||
source.Reply(_("As a Services Operator, you may drop any nick."));
|
||||
source.Reply(_("As a Services Operator, you may drop any nick."));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ class NSGroupRequest : public IdentifyRequest
|
||||
Command *cmd;
|
||||
Anope::string nick;
|
||||
Reference<NickAlias> target;
|
||||
|
||||
|
||||
public:
|
||||
NSGroupRequest(Module *o, CommandSource &src, Command *c, const Anope::string &n, NickAlias *targ, const Anope::string &pass) : IdentifyRequest(o, targ->nc->display, pass), source(src), cmd(c), nick(n), target(targ) { }
|
||||
|
||||
@@ -335,7 +335,7 @@ class CommandNSGList : public Command
|
||||
source.Reply(!nick.empty() ? _("List of nicknames in the group of \002%s\002:") : _("List of nicknames in your group:"), nc->display.c_str());
|
||||
std::vector<Anope::string> replies;
|
||||
list.Process(replies);
|
||||
|
||||
|
||||
for (unsigned i = 0; i < replies.size(); ++i)
|
||||
source.Reply(replies[i]);
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ class CommandNSList : public Command
|
||||
++count;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
source.Reply(_("List of entries matching \002%s\002:"), pattern.c_str());
|
||||
|
||||
std::vector<Anope::string> replies;
|
||||
|
||||
@@ -28,7 +28,7 @@ class NSRecoverRequest : public IdentifyRequest
|
||||
CommandSource source;
|
||||
Command *cmd;
|
||||
Anope::string user;
|
||||
|
||||
|
||||
public:
|
||||
NSRecoverRequest(Module *o, CommandSource &src, Command *c, const Anope::string &nick, const Anope::string &pass) : IdentifyRequest(o, nick, pass), source(src), cmd(c), user(nick) { }
|
||||
|
||||
|
||||
@@ -416,7 +416,7 @@ class CommandNSSetEmail : public Command
|
||||
static bool SendConfirmMail(User *u, NickCore *nc, BotInfo *bi, const Anope::string &new_email)
|
||||
{
|
||||
Anope::string code = Anope::Random(9);
|
||||
|
||||
|
||||
std::pair<Anope::string, Anope::string> *n = nc->Extend<std::pair<Anope::string, Anope::string> >("ns_set_email");
|
||||
n->first = new_email;
|
||||
n->second = code;
|
||||
@@ -1176,7 +1176,7 @@ class NSSet : public Module
|
||||
|
||||
SerializableExtensibleItem<bool> autoop, killprotect, kill_quick, kill_immed,
|
||||
message, secure, noexpire;
|
||||
|
||||
|
||||
struct KeepModes : SerializableExtensibleItem<bool>
|
||||
{
|
||||
KeepModes(Module *m, const Anope::string &n) : SerializableExtensibleItem<bool>(m, n) { }
|
||||
|
||||
@@ -201,7 +201,7 @@ class NSSetMisc : public Module
|
||||
for (int i = 0; i < conf->CountBlock("command"); ++i)
|
||||
{
|
||||
Configuration::Block *block = conf->GetBlock("command", i);
|
||||
|
||||
|
||||
const Anope::string &cmd = block->Get<const Anope::string>("command");
|
||||
|
||||
if (cmd != "nickserv/set/misc" && cmd != "nickserv/saset/misc")
|
||||
|
||||
@@ -321,7 +321,7 @@ class CommandOSAKill : public Command
|
||||
else
|
||||
{
|
||||
source.Reply(_("Current AKILL list:"));
|
||||
|
||||
|
||||
std::vector<Anope::string> replies;
|
||||
list.Process(replies);
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ class CommandOSConfig : public Command
|
||||
const Anope::string show_blocks[] = { "serverinfo", "networkinfo", "options", "" };
|
||||
|
||||
Log(LOG_ADMIN, source, this) << "VIEW";
|
||||
|
||||
|
||||
for (unsigned i = 0; !show_blocks[i].empty(); ++i)
|
||||
{
|
||||
Configuration::Block *block = Config->GetBlock(show_blocks[i]);
|
||||
|
||||
@@ -79,19 +79,19 @@ struct DefconConfig
|
||||
{
|
||||
DefConModesOnParams.erase(name);
|
||||
}
|
||||
|
||||
|
||||
bool GetDefConParam(const Anope::string &name, Anope::string &buf)
|
||||
{
|
||||
std::map<Anope::string, Anope::string>::iterator it = DefConModesOnParams.find(name);
|
||||
|
||||
|
||||
buf.clear();
|
||||
|
||||
|
||||
if (it != DefConModesOnParams.end())
|
||||
{
|
||||
buf = it->second;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
@@ -324,7 +324,7 @@ class OSDefcon : public Module
|
||||
if ((cm = ModeManager::FindChannelModeByName("REDIRECT")) && DConfig.DefConModesOn.count(cm->name) && !DConfig.DefConModesOn.count("LIMIT"))
|
||||
{
|
||||
DConfig.DefConModesOn.erase("REDIRECT");
|
||||
|
||||
|
||||
Log(this) << "DefConChanModes must lock mode +l as well to lock mode +L";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -424,7 +424,7 @@ class CommandOSDNS : public Command
|
||||
{
|
||||
DNSServer *s = DNSServer::Find(params[1]);
|
||||
const Anope::string &zone = params.size() > 2 ? params[2] : "";
|
||||
|
||||
|
||||
if (!s)
|
||||
{
|
||||
source.Reply(_("Server %s does not exist."), params[1].c_str());
|
||||
@@ -487,7 +487,7 @@ class CommandOSDNS : public Command
|
||||
void AddIP(CommandSource &source, const std::vector<Anope::string> ¶ms)
|
||||
{
|
||||
DNSServer *s = DNSServer::Find(params[1]);
|
||||
|
||||
|
||||
if (!s)
|
||||
{
|
||||
source.Reply(_("Server %s does not exist."), params[1].c_str());
|
||||
@@ -522,11 +522,11 @@ class CommandOSDNS : public Command
|
||||
dnsmanager->Notify(*it);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void DelIP(CommandSource &source, const std::vector<Anope::string> ¶ms)
|
||||
{
|
||||
DNSServer *s = DNSServer::Find(params[1]);
|
||||
|
||||
|
||||
if (!s)
|
||||
{
|
||||
source.Reply(_("Server %s does not exist."), params[1].c_str());
|
||||
@@ -565,7 +565,7 @@ class CommandOSDNS : public Command
|
||||
void OnSet(CommandSource &source, const std::vector<Anope::string> ¶ms)
|
||||
{
|
||||
DNSServer *s = DNSServer::Find(params[1]);
|
||||
|
||||
|
||||
if (!s)
|
||||
{
|
||||
source.Reply(_("Server %s does not exist."), params[1].c_str());
|
||||
@@ -598,7 +598,7 @@ class CommandOSDNS : public Command
|
||||
void OnPool(CommandSource &source, const std::vector<Anope::string> ¶ms)
|
||||
{
|
||||
DNSServer *s = DNSServer::Find(params[1]);
|
||||
|
||||
|
||||
if (!s)
|
||||
{
|
||||
source.Reply(_("Server %s does not exist."), params[1].c_str());
|
||||
@@ -633,7 +633,7 @@ class CommandOSDNS : public Command
|
||||
void OnDepool(CommandSource &source, const std::vector<Anope::string> ¶ms)
|
||||
{
|
||||
DNSServer *s = DNSServer::Find(params[1]);
|
||||
|
||||
|
||||
if (!s)
|
||||
{
|
||||
source.Reply(_("Server %s does not exist."), params[1].c_str());
|
||||
|
||||
@@ -38,7 +38,7 @@ Serializable* IgnoreDataImpl::Unserialize(Serializable *obj, Serialize::Data &da
|
||||
{
|
||||
if (!ignore_service)
|
||||
return NULL;
|
||||
|
||||
|
||||
IgnoreDataImpl *ign;
|
||||
if (obj)
|
||||
ign = anope_dynamic_static_cast<IgnoreDataImpl *>(obj);
|
||||
@@ -94,7 +94,7 @@ class OSIgnoreService : public IgnoreService
|
||||
{
|
||||
User *u = User::Find(mask, true);
|
||||
std::vector<IgnoreData *>::iterator ign = this->ignores->begin(), ign_end = this->ignores->end();
|
||||
|
||||
|
||||
if (u)
|
||||
{
|
||||
for (; ign != ign_end; ++ign)
|
||||
@@ -163,7 +163,7 @@ class CommandOSIgnore : public Command
|
||||
User *u = User::Find(mask, true);
|
||||
if (u)
|
||||
return "*!*@" + u->host;
|
||||
|
||||
|
||||
size_t host = mask.find('@');
|
||||
/* Determine whether we get a nick or a mask. */
|
||||
if (host != Anope::string::npos)
|
||||
|
||||
@@ -18,7 +18,7 @@ struct OperInfo : Serializable
|
||||
OperInfo() : Serializable("OperInfo"), created(0) { }
|
||||
OperInfo(const Anope::string &t, const Anope::string &i, const Anope::string &a, time_t c) :
|
||||
Serializable("OperInfo"), target(t), info(i), adder(a), created(c) { }
|
||||
|
||||
|
||||
~OperInfo();
|
||||
|
||||
void Serialize(Serialize::Data &data) const anope_override
|
||||
@@ -74,7 +74,7 @@ Serializable *OperInfo::Unserialize(Serializable *obj, Serialize::Data &data)
|
||||
Extensible *e = OperInfos::Find(starget);
|
||||
if (!e)
|
||||
return NULL;
|
||||
|
||||
|
||||
OperInfos *oi = e->Require<OperInfos>("operinfo");
|
||||
OperInfo *o;
|
||||
if (obj)
|
||||
|
||||
@@ -20,7 +20,7 @@ class CommandOSLogSearch : public Command
|
||||
char timestamp[32];
|
||||
|
||||
tm *tm = localtime(&t);
|
||||
|
||||
|
||||
strftime(timestamp, sizeof(timestamp), "%Y%m%d", tm);
|
||||
|
||||
return Anope::LogDir + "/" + file + "." + timestamp;
|
||||
|
||||
@@ -139,7 +139,7 @@ class CommandOSModUnLoad : public Command
|
||||
source.Reply(_("Module \002%s\002 isn't loaded."), mname.c_str());
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (!m->handle || m->GetPermanent() || m->type == PROTOCOL)
|
||||
{
|
||||
source.Reply(_("Unable to remove module \002%s\002."), m->name.c_str());
|
||||
|
||||
@@ -115,7 +115,7 @@ class MyNewsService : public NewsService
|
||||
{
|
||||
this->newsItems[n->type].push_back(n);
|
||||
}
|
||||
|
||||
|
||||
void DelNewsItem(NewsItem *n)
|
||||
{
|
||||
std::vector<NewsItem *> &list = this->GetNewsList(n->type);
|
||||
@@ -259,7 +259,7 @@ class NewsBase : public Command
|
||||
|
||||
const char **msgs = findmsgs(ntype);
|
||||
if (!msgs)
|
||||
throw CoreException("news: Invalid type to do_news()");
|
||||
throw CoreException("news: Invalid type to DoNews()");
|
||||
|
||||
if (cmd.equals_ci("LIST"))
|
||||
return this->DoList(source, ntype, msgs);
|
||||
@@ -404,7 +404,7 @@ class OSNews : public Module
|
||||
msg = _("[\002Random News\002 - %s] %s");
|
||||
|
||||
int start = 0;
|
||||
|
||||
|
||||
if (Type != NEWS_RANDOM)
|
||||
{
|
||||
start = newsList.size() - news_count;
|
||||
|
||||
@@ -186,7 +186,7 @@ class CommandOSOper : public Command
|
||||
if (params.size() > 2)
|
||||
fulltype += " " + params[2];
|
||||
OperType *ot = OperType::Find(fulltype);
|
||||
if (ot == NULL)
|
||||
if (ot == NULL)
|
||||
source.Reply(_("Oper type \002%s\002 has not been configured."), fulltype.c_str());
|
||||
else
|
||||
{
|
||||
|
||||
@@ -66,7 +66,7 @@ class MySessionService : public SessionService
|
||||
Exception *e = *it;
|
||||
if (Anope::Match(u->host, e->mask) || Anope::Match(u->ip.addr(), e->mask))
|
||||
return e;
|
||||
|
||||
|
||||
if (cidr(e->mask).match(u->ip))
|
||||
return e;
|
||||
}
|
||||
@@ -209,7 +209,7 @@ class CommandOSSession : public Command
|
||||
std::vector<Anope::string> replies;
|
||||
list.Process(replies);
|
||||
|
||||
|
||||
|
||||
for (unsigned i = 0; i < replies.size(); ++i)
|
||||
source.Reply(replies[i]);
|
||||
}
|
||||
@@ -491,7 +491,7 @@ class CommandOSException : public Command
|
||||
else
|
||||
{
|
||||
source.Reply(_("Current Session Limit Exception list:"));
|
||||
|
||||
|
||||
std::vector<Anope::string> replies;
|
||||
list.Process(replies);
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@ class CommandOSSet : public Command
|
||||
return;
|
||||
}
|
||||
catch (const ConvertException &) { }
|
||||
|
||||
|
||||
source.Reply(_("Setting for DEBUG must be \002ON\002, \002OFF\002, or a positive number."));
|
||||
}
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@ class LoadData : public Serialize::Data
|
||||
hash ^= Anope::hash_cs()(it->second);
|
||||
return hash;
|
||||
}
|
||||
|
||||
|
||||
void Reset()
|
||||
{
|
||||
id = 0;
|
||||
@@ -247,7 +247,7 @@ class DBFlatFile : public Module, public Pipe
|
||||
Serialize::Type *stype = Serialize::Type::Find(type_order[i]);
|
||||
if (!stype || stype->GetOwner())
|
||||
continue;
|
||||
|
||||
|
||||
std::vector<std::streampos> &pos = positions[stype->GetName()];
|
||||
|
||||
for (unsigned j = 0; j < pos.size(); ++j)
|
||||
@@ -411,5 +411,3 @@ class DBFlatFile : public Module, public Pipe
|
||||
};
|
||||
|
||||
MODULE_INIT(DBFlatFile)
|
||||
|
||||
|
||||
|
||||
@@ -689,7 +689,7 @@ static void LoadVHosts()
|
||||
NickAlias *na = NickAlias::Find(nick);
|
||||
if (na == NULL)
|
||||
{
|
||||
Log() << "Removing vhost for non-existent nick " << nick;
|
||||
Log() << "Removing vhost for nonexistent nick " << nick;
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -858,7 +858,7 @@ static void LoadChannels()
|
||||
if (in_use)
|
||||
{
|
||||
ChanAccess *access = NULL;
|
||||
|
||||
|
||||
if (xop)
|
||||
{
|
||||
if (provider_xop)
|
||||
@@ -1214,7 +1214,7 @@ static void LoadExceptions()
|
||||
dbFILE *f = open_db_read("OperServ", "exception.db", 9);
|
||||
if (f == NULL)
|
||||
return;
|
||||
|
||||
|
||||
int16_t num;
|
||||
READ(read_int16(&num, f));
|
||||
for (int i = 0; i < num; ++i)
|
||||
@@ -1358,4 +1358,3 @@ class DBOld : public Module
|
||||
};
|
||||
|
||||
MODULE_INIT(DBOld)
|
||||
|
||||
|
||||
@@ -201,7 +201,7 @@ class DatabaseRedis : public Module, public Pipe
|
||||
std::vector<Anope::string> args;
|
||||
args.push_back("SMEMBERS");
|
||||
args.push_back("ids:" + sb->GetName());
|
||||
|
||||
|
||||
redis->SendCommand(new TypeLoader(this, sb->GetName()), args);
|
||||
}
|
||||
|
||||
@@ -456,14 +456,14 @@ void SubscriptionListener::OnResult(const Reply &r)
|
||||
*/
|
||||
if (r.multi_bulk.size() != 4)
|
||||
return;
|
||||
|
||||
|
||||
size_t sz = r.multi_bulk[2]->bulk.find(':');
|
||||
if (sz == Anope::string::npos)
|
||||
return;
|
||||
|
||||
|
||||
const Anope::string &key = r.multi_bulk[2]->bulk.substr(sz + 1),
|
||||
&op = r.multi_bulk[3]->bulk;
|
||||
|
||||
|
||||
sz = key.rfind(':');
|
||||
if (sz == Anope::string::npos)
|
||||
return;
|
||||
@@ -479,7 +479,7 @@ void SubscriptionListener::OnResult(const Reply &r)
|
||||
|
||||
if (s_type == NULL)
|
||||
return;
|
||||
|
||||
|
||||
uint64_t obj_id;
|
||||
try
|
||||
{
|
||||
|
||||
@@ -266,4 +266,3 @@ class DBSQL : public Module, public Pipe
|
||||
};
|
||||
|
||||
MODULE_INIT(DBSQL)
|
||||
|
||||
|
||||
@@ -157,7 +157,7 @@ class DBMySQL : public Module, public Pipe
|
||||
|
||||
void OnSerializableDestruct(Serializable *obj) anope_override
|
||||
{
|
||||
if (!this->CheckInit())
|
||||
if (!this->CheckInit())
|
||||
return;
|
||||
Serialize::Type *s_type = obj->GetSerializableType();
|
||||
if (s_type)
|
||||
@@ -262,4 +262,3 @@ class DBMySQL : public Module, public Pipe
|
||||
};
|
||||
|
||||
MODULE_INIT(DBMySQL)
|
||||
|
||||
|
||||
@@ -284,7 +284,7 @@ class MD5Context : public Encryption::Context
|
||||
|
||||
/* MD5 finalization. Ends an MD5 message-digest opera
|
||||
* the message digest and zeroizing the context.
|
||||
*/
|
||||
*/
|
||||
void Finalize() anope_override
|
||||
{
|
||||
unsigned char bits[8];
|
||||
|
||||
@@ -269,7 +269,7 @@ class LDAPService : public LDAPProvider, public Thread, public Condition
|
||||
|
||||
ldap_unbind_ext(this->con, NULL, NULL);
|
||||
}
|
||||
|
||||
|
||||
void BindAsAdmin(LDAPInterface *i) anope_override
|
||||
{
|
||||
this->Bind(i, this->admin_binddn, this->admin_pass);
|
||||
@@ -575,7 +575,7 @@ class ModuleLDAP : public Module, public Pipe
|
||||
|
||||
delete req;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -619,4 +619,3 @@ int LDAPModify::run()
|
||||
}
|
||||
|
||||
MODULE_INIT(ModuleLDAP)
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ struct IdentifyInfo
|
||||
{
|
||||
req->Hold(me);
|
||||
}
|
||||
|
||||
|
||||
~IdentifyInfo()
|
||||
{
|
||||
req->Release(me);
|
||||
|
||||
@@ -456,7 +456,7 @@ Query MySQLService::BuildInsert(const Anope::string &table, unsigned int id, Dat
|
||||
|
||||
query.SetValue(it->first, buf, escape);
|
||||
}
|
||||
|
||||
|
||||
return query;
|
||||
}
|
||||
|
||||
@@ -476,7 +476,7 @@ void MySQLService::Connect()
|
||||
|
||||
if (!connect)
|
||||
throw SQL::Exception("Unable to connect to MySQL service " + this->name + ": " + mysql_error(this->sql));
|
||||
|
||||
|
||||
Log(LOG_DEBUG) << "Successfully connected to MySQL service " << this->name << " at " << this->server << ":" << this->port;
|
||||
}
|
||||
|
||||
@@ -553,4 +553,3 @@ void DispatcherThread::Run()
|
||||
}
|
||||
|
||||
MODULE_INIT(ModuleSQL)
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ class PCRERegex : public Regex
|
||||
int erroffset;
|
||||
this->regex = pcre_compile(expr.c_str(), PCRE_CASELESS, &error, &erroffset, NULL);
|
||||
if (!this->regex)
|
||||
throw RegexException("Error in regex " + expr + " at offset " + stringify(erroffset) + ": " + error);
|
||||
throw RegexException("Error in regex " + expr + " at offset " + stringify(erroffset) + ": " + error);
|
||||
}
|
||||
|
||||
~PCRERegex()
|
||||
|
||||
@@ -299,7 +299,7 @@ Query SQLiteService::BuildInsert(const Anope::string &table, unsigned int id, Da
|
||||
*it->second >> buf;
|
||||
query.SetValue(it->first, buf);
|
||||
}
|
||||
|
||||
|
||||
return query;
|
||||
}
|
||||
|
||||
@@ -332,4 +332,3 @@ Anope::string SQLiteService::FromUnixtime(time_t t)
|
||||
}
|
||||
|
||||
MODULE_INIT(ModuleSQLite)
|
||||
|
||||
|
||||
@@ -205,7 +205,7 @@ void MySSLService::Init(Socket *s)
|
||||
{
|
||||
if (s->io != &NormalSocketIO)
|
||||
throw CoreException("Socket initializing SSL twice");
|
||||
|
||||
|
||||
s->io = new SSLSocketIO();
|
||||
}
|
||||
|
||||
@@ -283,7 +283,7 @@ ClientSocket *SSLSocketIO::Accept(ListenSocket *s)
|
||||
|
||||
newsocket->flags[SF_ACCEPTING] = true;
|
||||
this->FinishAccept(newsocket);
|
||||
|
||||
|
||||
return newsocket;
|
||||
}
|
||||
|
||||
@@ -297,7 +297,7 @@ SocketFlag SSLSocketIO::FinishAccept(ClientSocket *cs)
|
||||
throw SocketException("SSLSocketIO::FinishAccept called for a socket not accepted nor accepting?");
|
||||
|
||||
SSLSocketIO *io = anope_dynamic_static_cast<SSLSocketIO *>(cs->io);
|
||||
|
||||
|
||||
int ret = SSL_accept(io->sslsock);
|
||||
if (ret <= 0)
|
||||
{
|
||||
@@ -378,7 +378,7 @@ SocketFlag SSLSocketIO::FinishConnect(ConnectionSocket *s)
|
||||
if (!SSL_set_fd(io->sslsock, s->GetFD()))
|
||||
throw SocketException("Unable to set SSL fd");
|
||||
}
|
||||
|
||||
|
||||
int ret = SSL_connect(io->sslsock);
|
||||
if (ret <= 0)
|
||||
{
|
||||
|
||||
@@ -174,4 +174,3 @@ void CommandCSGStats::Execute(CommandSource &source, const std::vector<Anope::st
|
||||
}
|
||||
|
||||
MODULE_INIT(CSStats)
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ class CSTop : public Module
|
||||
{
|
||||
source.Reply(_("%2lu \002%-16s\002 letters: %s, words: %s, lines: %s, smileys: %s, actions: %s"),
|
||||
i+1, res.Get(i, "nick").c_str(), res.Get(i, "letters").c_str(),
|
||||
res.Get(i, "words").c_str(), res.Get(i, "line").c_str(),
|
||||
res.Get(i, "words").c_str(), res.Get(i, "line").c_str(),
|
||||
res.Get(i, "smileys").c_str(), res.Get(i, "actions").c_str());
|
||||
}
|
||||
}
|
||||
@@ -185,5 +185,4 @@ void CommandCSGTop10::Execute(CommandSource &source, const std::vector<Anope::st
|
||||
me->DoTop(source, params, true, 10);
|
||||
}
|
||||
|
||||
|
||||
MODULE_INIT(CSTop)
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
build_subdir(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
|
||||
@@ -82,5 +82,3 @@ class IRC2SQL : public Module
|
||||
|
||||
void OnBotNotice(User *u, BotInfo *bi, Anope::string &message) anope_override;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -66,4 +66,3 @@ bool IRC2SQL::HasEvent(const Anope::string &table)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ class CommandNSSetChanstats : public Command
|
||||
{
|
||||
this->Run(source, source.nc->display, params[0]);
|
||||
}
|
||||
|
||||
|
||||
bool OnHelp(CommandSource &source, const Anope::string &) anope_override
|
||||
{
|
||||
this->SendSyntax(source);
|
||||
@@ -653,4 +653,3 @@ class MChanstats : public Module
|
||||
};
|
||||
|
||||
MODULE_INIT(MChanstats)
|
||||
|
||||
|
||||
+4
-5
@@ -46,7 +46,7 @@ class CommandBSSetFantasy : public Command
|
||||
if (value.equals_ci("ON"))
|
||||
{
|
||||
bool override = !source.AccessFor(ci).HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable fantasy";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to enable fantasy";
|
||||
|
||||
ci->Extend<bool>("BS_FANTASY");
|
||||
source.Reply(_("Fantasy mode is now \002on\002 on channel %s."), ci->name.c_str());
|
||||
@@ -54,7 +54,7 @@ class CommandBSSetFantasy : public Command
|
||||
else if (value.equals_ci("OFF"))
|
||||
{
|
||||
bool override = !source.AccessFor(ci).HasPriv("SET");
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable fantasy";
|
||||
Log(override ? LOG_OVERRIDE : LOG_COMMAND, source, this, ci) << "to disable fantasy";
|
||||
|
||||
ci->Shrink<bool>("BS_FANTASY");
|
||||
source.Reply(_("Fantasy mode is now \002off\002 on channel %s."), ci->name.c_str());
|
||||
@@ -125,7 +125,7 @@ class Fantasy : public Module
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (params.empty())
|
||||
return;
|
||||
|
||||
@@ -149,7 +149,7 @@ class Fantasy : public Module
|
||||
ServiceReference<Command> cmd("Command", info.name);
|
||||
if (!cmd)
|
||||
{
|
||||
Log(LOG_DEBUG) << "Fantasy command " << it->first << " exists for non-existent service " << info.name << "!";
|
||||
Log(LOG_DEBUG) << "Fantasy command " << it->first << " exists for nonexistent service " << info.name << "!";
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -216,4 +216,3 @@ class Fantasy : public Module
|
||||
};
|
||||
|
||||
MODULE_INIT(Fantasy)
|
||||
|
||||
|
||||
+21
-22
@@ -109,7 +109,7 @@ class Packet : public Query
|
||||
|
||||
return name;
|
||||
}
|
||||
|
||||
|
||||
Question UnpackQuestion(const unsigned char *input, unsigned short input_size, unsigned short &pos)
|
||||
{
|
||||
Question question;
|
||||
@@ -212,7 +212,7 @@ class Packet : public Query
|
||||
unsigned short id;
|
||||
/* Flags on the packet */
|
||||
unsigned short flags;
|
||||
|
||||
|
||||
Packet(Manager *m, sockaddrs *a) : manager(m), id(0), flags(0)
|
||||
{
|
||||
if (a)
|
||||
@@ -248,7 +248,7 @@ class Packet : public Query
|
||||
|
||||
for (unsigned i = 0; i < qdcount; ++i)
|
||||
this->questions.push_back(this->UnpackQuestion(input, len, packet_pos));
|
||||
|
||||
|
||||
for (unsigned i = 0; i < ancount; ++i)
|
||||
this->answers.push_back(this->UnpackResourceRecord(input, len, packet_pos));
|
||||
|
||||
@@ -270,7 +270,7 @@ class Packet : public Query
|
||||
{
|
||||
if (output_size < HEADER_LENGTH)
|
||||
throw SocketException("Unable to pack packet");
|
||||
|
||||
|
||||
unsigned short pos = 0;
|
||||
|
||||
output[pos++] = this->id >> 8;
|
||||
@@ -433,7 +433,7 @@ class Packet : public Query
|
||||
l = htonl(manager->GetSerial());
|
||||
memcpy(&output[pos], &l, 4);
|
||||
pos += 4;
|
||||
|
||||
|
||||
l = htonl(refresh); // Refresh
|
||||
memcpy(&output[pos], &l, 4);
|
||||
pos += 4;
|
||||
@@ -459,7 +459,7 @@ class Packet : public Query
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return pos;
|
||||
}
|
||||
};
|
||||
@@ -478,7 +478,7 @@ namespace DNS
|
||||
class TCPSocket : public ListenSocket
|
||||
{
|
||||
Manager *manager;
|
||||
|
||||
|
||||
public:
|
||||
/* A TCP client */
|
||||
class Client : public ClientSocket, public Timer, public ReplySocket
|
||||
@@ -487,7 +487,7 @@ class TCPSocket : public ListenSocket
|
||||
Packet *packet;
|
||||
unsigned char packet_buffer[524];
|
||||
int length;
|
||||
|
||||
|
||||
public:
|
||||
Client(Manager *m, TCPSocket *l, int fd, const sockaddrs &addr) : Socket(fd, l->IsIPv6()), ClientSocket(l, addr), Timer(5),
|
||||
manager(m), packet(NULL), length(0)
|
||||
@@ -500,7 +500,7 @@ class TCPSocket : public ListenSocket
|
||||
Log(LOG_DEBUG_2) << "Resolver: Exiting client from " << clientaddr.addr();
|
||||
delete packet;
|
||||
}
|
||||
|
||||
|
||||
/* Times out after a few seconds */
|
||||
void Tick(time_t) anope_override { }
|
||||
|
||||
@@ -560,13 +560,13 @@ class TCPSocket : public ListenSocket
|
||||
};
|
||||
|
||||
TCPSocket(Manager *m, const Anope::string &ip, int port) : Socket(-1, ip.find(':') != Anope::string::npos), ListenSocket(ip, port, ip.find(':') != Anope::string::npos), manager(m) { }
|
||||
|
||||
|
||||
ClientSocket *OnAccept(int fd, const sockaddrs &addr) anope_override
|
||||
{
|
||||
return new Client(this->manager, this, fd, addr);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/* Listens for UDP requests */
|
||||
class UDPSocket : public ReplySocket
|
||||
{
|
||||
@@ -581,15 +581,15 @@ class UDPSocket : public ReplySocket
|
||||
for (unsigned i = 0; i < packets.size(); ++i)
|
||||
delete packets[i];
|
||||
}
|
||||
|
||||
|
||||
void Reply(Packet *p) anope_override
|
||||
{
|
||||
packets.push_back(p);
|
||||
SocketEngine::Change(this, true, SF_WRITABLE);
|
||||
}
|
||||
|
||||
|
||||
std::deque<Packet *>& GetPackets() { return packets; }
|
||||
|
||||
|
||||
bool ProcessRead() anope_override
|
||||
{
|
||||
Log(LOG_DEBUG_2) << "Resolver: Reading from DNS UDP socket";
|
||||
@@ -600,7 +600,7 @@ class UDPSocket : public ReplySocket
|
||||
int length = recvfrom(this->GetFD(), reinterpret_cast<char *>(&packet_buffer), sizeof(packet_buffer), 0, &from_server.sa, &x);
|
||||
return this->manager->HandlePacket(this, packet_buffer, length, &from_server);
|
||||
}
|
||||
|
||||
|
||||
bool ProcessWrite() anope_override
|
||||
{
|
||||
Log(LOG_DEBUG_2) << "Resolver: Writing to DNS UDP socket";
|
||||
@@ -623,7 +623,7 @@ class UDPSocket : public ReplySocket
|
||||
|
||||
if (packets.empty())
|
||||
SocketEngine::Change(this, false, SF_WRITABLE);
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
@@ -689,7 +689,7 @@ class MyManager : public Manager, public Timer
|
||||
delete tcpsock;
|
||||
|
||||
for (std::map<unsigned short, Request *>::iterator it = this->requests.begin(), it_end = this->requests.end(); it != it_end;)
|
||||
{
|
||||
{
|
||||
Request *request = it->second;
|
||||
++it;
|
||||
|
||||
@@ -767,7 +767,7 @@ class MyManager : public Manager, public Timer
|
||||
this->requests[req->id] = req;
|
||||
|
||||
req->SetSecs(timeout);
|
||||
|
||||
|
||||
Packet *p = new Packet(this, &this->addrs);
|
||||
p->flags = QUERYFLAGS_RD;
|
||||
p->id = req->id;
|
||||
@@ -931,7 +931,7 @@ class MyManager : public Manager, public Timer
|
||||
request->OnLookupComplete(&recv_packet);
|
||||
this->AddCache(recv_packet);
|
||||
}
|
||||
|
||||
|
||||
delete request;
|
||||
return true;
|
||||
}
|
||||
@@ -992,7 +992,7 @@ class MyManager : public Manager, public Timer
|
||||
this->cache.erase(it);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
/** Add a record to the dns cache
|
||||
* @param r The record
|
||||
@@ -1020,7 +1020,7 @@ class MyManager : public Manager, public Timer
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
class ModuleDNS : public Module
|
||||
@@ -1139,4 +1139,3 @@ class ModuleDNS : public Module
|
||||
};
|
||||
|
||||
MODULE_INIT(ModuleDNS)
|
||||
|
||||
|
||||
@@ -192,4 +192,3 @@ class ModuleDNSBL : public Module
|
||||
};
|
||||
|
||||
MODULE_INIT(ModuleDNSBL)
|
||||
|
||||
|
||||
+1
-1
@@ -149,7 +149,7 @@ class MyHTTPClient : public HTTPClient
|
||||
|
||||
this->Serve();
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -117,7 +117,7 @@ class HTTPProxyConnect : public ProxyConnect, public BufferedSocket
|
||||
void OnConnect() anope_override
|
||||
{
|
||||
this->Write("CONNECT %s:%d HTTP/1.0", target_ip.c_str(), target_port);
|
||||
this->Write("Content-length: 0");
|
||||
this->Write("Content-Length: 0");
|
||||
this->Write("Connection: close");
|
||||
this->Write("");
|
||||
}
|
||||
@@ -376,4 +376,3 @@ class ModuleProxyScan : public Module
|
||||
};
|
||||
|
||||
MODULE_INIT(ModuleProxyScan)
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user