summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/inspircd.censor.example1
-rw-r--r--docs/inspircd.conf.example79
-rw-r--r--docs/links.conf.example9
-rw-r--r--docs/modules.conf.example15
-rw-r--r--src/channels.cpp18
-rw-r--r--src/configparser.cpp2
-rw-r--r--src/modules/extra/m_ssl_gnutls.cpp31
-rw-r--r--src/modules/m_censor.cpp4
-rw-r--r--src/modules/m_chancreate.cpp4
-rw-r--r--src/modules/m_chanfilter.cpp4
-rw-r--r--src/modules/m_check.cpp6
-rw-r--r--src/modules/m_clones.cpp8
-rw-r--r--src/modules/m_connectban.cpp4
-rw-r--r--src/modules/m_dccallow.cpp4
-rw-r--r--src/modules/m_delayjoin.cpp5
-rw-r--r--src/modules/m_globops.cpp6
-rw-r--r--src/modules/m_halfop.cpp2
-rw-r--r--src/modules/m_helpop.cpp2
-rw-r--r--src/modules/m_httpd_config.cpp4
-rw-r--r--src/modules/m_jumpserver.cpp4
-rw-r--r--src/modules/m_knock.cpp4
-rw-r--r--src/modules/m_md5.cpp2
-rw-r--r--src/modules/m_mlock.cpp3
-rw-r--r--src/modules/m_namedmodes.cpp2
-rw-r--r--src/modules/m_operlevels.cpp3
-rw-r--r--src/modules/m_passforward.cpp3
-rw-r--r--src/modules/m_randquote.cpp6
-rw-r--r--src/modules/m_rline.cpp5
-rw-r--r--src/modules/m_seenicks.cpp2
-rw-r--r--src/modules/m_services_account.cpp6
-rw-r--r--src/modules/m_shun.cpp4
31 files changed, 149 insertions, 103 deletions
diff --git a/docs/inspircd.censor.example b/docs/inspircd.censor.example
index 05d9ce6fa..342ccd875 100644
--- a/docs/inspircd.censor.example
+++ b/docs/inspircd.censor.example
@@ -12,4 +12,3 @@
<badword text="shit" replace="poo">
<badword text="fuck" replace="(censored)">
-
diff --git a/docs/inspircd.conf.example b/docs/inspircd.conf.example
index a820d4a40..d1293be25 100644
--- a/docs/inspircd.conf.example
+++ b/docs/inspircd.conf.example
@@ -160,7 +160,7 @@
# for ssl to work. If you do not want this bind section to support ssl,
# just remove or comment out this option.
ssl="gnutls"
- >
+>
<bind address="" port="6660-6669" type="clients">
@@ -390,7 +390,7 @@
# #
<cidr
- # ipv4clone: specifies how many bits of an IP address should be
+ # ipv4clone: specifies how many bits of an IP address should be
# looked at for clones. The default only looks for clones on a
# single IP address of a user. You do not want to set this
# extremely low. (Values are 0-32).
@@ -489,9 +489,9 @@
# Note that any disabled commands take effect only after the user has #
# 'registered' (e.g. after the initial USER/NICK/PASS on connection) #
# so for example disabling NICK will not cripple your network. #
-# #
+# #
# You can also define if you want to disable any channelmodes #
-# or usermodes from your users. #
+# or usermodes from your users. #
# #
# `fakenonexistant' will make the ircd pretend that nonexistant #
# commands simply don't exist to non-opers ("no such command"). #
@@ -548,10 +548,10 @@
# without cycling them.
cyclehosts="yes"
- # cyclehostsfromuser: If enabled, the source of the mode change for
- # cyclehosts will be the user who cycled. This can look nicer, but
- # triggers anti-takeover mechanisms of some obsolete bots.
- cyclehostsfromuser="no"
+ # cyclehostsfromuser: If enabled, the source of the mode change for
+ # cyclehosts will be the user who cycled. This can look nicer, but
+ # triggers anti-takeover mechanisms of some obsolete bots.
+ cyclehostsfromuser="no"
# ircumsgprefix: Use undernet-style message prefixing for NOTICE and
# PRIVMSG. If enabled, it will add users' prefix to the line, if not,
@@ -562,15 +562,15 @@
# in channel will be sent a NOTICE about it.
announcets="yes"
- # allowmismatched: Setting this option to yes will allow servers to link even
- # if they don't have the same VF_OPTCOMMON modules loaded. Setting this to
- # yes may introduce some desyncs and weirdness.
- allowmismatched="no"
+ # allowmismatched: Setting this option to yes will allow servers to link even
+ # if they don't have the same VF_OPTCOMMON modules loaded. Setting this to
+ # yes may introduce some desyncs and weirdness.
+ allowmismatched="no"
- # defaultbind: Sets the default for <bind> tags without an address. Choices are
- # ipv4 or ipv6; if not specified, IPv6 will be used if your system has support,
- # falling back to IPv4 otherwise.
- defaultbind="auto"
+ # defaultbind: Sets the default for <bind> tags without an address. Choices are
+ # ipv4 or ipv6; if not specified, IPv6 will be used if your system has support,
+ # falling back to IPv4 otherwise.
+ defaultbind="auto"
# hostintopic: If enabled, channels will show the host of the topicsetter
# in the topic. If set to no, it will only show the nick of the topicsetter.
@@ -592,9 +592,9 @@
# moronbanner: This is the text that is sent to a user when they are
# banned from the server.
moronbanner="You're banned! Email haha@abuse.com with the ERROR line below for help."
-
- # exemptchanops: exemptions for channel access restrictions based on prefix.
- exemptchanops="nonick:v flood:o"
+
+ # exemptchanops: exemptions for channel access restrictions based on prefix.
+ exemptchanops="nonick:v flood:o"
# invitebypassmodes: This allows /invite to bypass other channel modes.
# (Such as +k, +j, +l, etc)
@@ -694,11 +694,11 @@
# the ircd. This may be set for security reasons or vanity reasons.
customversion=""
- # operspywhois: show opers (users/auspex) the +s channels a user is in. Values:
- # splitmsg Split with an explanatory message
- # yes Split with no explanatory message
- # no Do not show
- operspywhois="no"
+ # operspywhois: show opers (users/auspex) the +s channels a user is in. Values:
+ # splitmsg Split with an explanatory message
+ # yes Split with no explanatory message
+ # no Do not show
+ operspywhois="no"
# runasuser: If this is set, InspIRCd will attempt to setuid
# to run as this user- allows binding of ports under 1024.
@@ -782,19 +782,40 @@
# to do what they want.
#
# An example log tag would be:
-# <log method="file" type="OPER" level="default" target="opers.log">
-# which would log all information on /oper (failed and successful) to
+# <log method="file" type="OPER" level="default" target="opers.log">
+# which would log all information on /oper (failed and successful) to
# a file called opers.log.
#
# There are many different types which may be used, and modules may
# generate their own. A list of useful types:
-# - USERS - information relating to user connection and disconnection
-# - CHANNELS - information relating to joining and parting of channels.
-# XXX someone doc more on this
+# - USERS - information relating to user connection and disconnection
+# - OPER - succesful and failed oper attempts
+# - KILL - kill related messages
+# - snomask - server notices (*all* snomasks will be logged)
+# - FILTER - messages related to filter matches (m_filter)
+# - CONFIG - configuration related messages
+# - COMMAND - die and restart messages, and messages related to unknown user types
+# - SOCKET - socket engine informational/error messages
+# - MODULE - module related messages
+# - STARTUP - messages related to starting up the server
#
# You may also log *everything* by using a type of *, and subtract things out
# of that by using -TYPE - for example "* -USERINPUT -USEROUTPUT".
#
+# Useful levels are:
+# - default (general messages, including errors)
+# - sparse (misc error messages)
+# - debug (debug messages)
+#
+# Some types only produce output in the debug level, those are:
+# - BANCACHE - ban cache debug messages
+# - CHANNELS - information relating to joining/creating channels
+# - CULLLIST - debug messages related to issues with removing users
+# - RESOLVER - DNS related debug messages
+# - CONNECTCLASS - Connection class debug messages
+# - USERINPUT
+# - USEROUTPUT
+#
# The following log tag is highly default and uncustomised. It is recommended you
# sort out your own log tags. This is just here so you get some output.
diff --git a/docs/links.conf.example b/docs/links.conf.example
index 27213f784..a573b66da 100644
--- a/docs/links.conf.example
+++ b/docs/links.conf.example
@@ -10,9 +10,7 @@
# |_| \_\___|\__,_|\__,_| |_| |_| |_|_|___/ |____/|_|\__(_) #
# #
# If you want to link servers to InspIRCd you must load the #
-# m_spanningtree.so module! Please see the modules list below for #
-# information on how to load this module! If you do not load this #
-# module, server links will NOT work! #
+# m_spanningtree.so module! #
# #
# #
@@ -100,8 +98,9 @@
# Failover autoconnect block. If you have multiple hubs, or want your network
# to automatically link even if the hub is down, you can specify multiple
-# servers to autoconnect; they will be tried in a round robin fashion until
-# one succeeds. Period defines the time for restarting a single loop.
+# space seperated servers to autoconnect; they will be tried in a round
+# robin fashion until one succeeds. Period defines the time for restarting
+# a single loop.
<autoconnect period="120"
server="hub.us.penguin.org hub.eu.penguin.org leaf.eu.penguin.org">
diff --git a/docs/modules.conf.example b/docs/modules.conf.example
index 39ea4f9cc..e987f4878 100644
--- a/docs/modules.conf.example
+++ b/docs/modules.conf.example
@@ -607,8 +607,8 @@
# quitmsg - The message that users get if they attempt to
# connect while the throttle is active.
#
-# bootwait - Amount of time to wait before enforcing the
-# throttling when the server just booted.
+# bootwait - Amount of time in seconds to wait before enforcing
+# the throttling when the server just booted.
#
#<connflood seconds="30" maxconns="3" timeout="30"
# quitmsg="Throttled" bootwait="10">
@@ -1568,8 +1568,8 @@
# showfromopers="yes">
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
-# Shun module: Provides the /shun command, which stops a user executing
-# most commands.
+# Shun module: Provides the /SHUN command, which stops a user from
+# executing all except configured commands.
# This module is oper-only.
# To use, SHUN must be in one of your oper class blocks.
#<module name="m_shun.so">
@@ -1757,9 +1757,10 @@
# user - Username for the vhost. #
# #
# pass - Password for the vhost. #
-# #
-# hash - The hash for the specific user (optional)
-# m_password_hash.so and a hashing module must be loaded for this to work
+# #
+# hash - The hash for the specific user (optional) #
+# m_password_hash.so and a hashing module must be loaded #
+# for this to work. #
# #
# host - Vhost to set. #
#
diff --git a/src/channels.cpp b/src/channels.cpp
index 5539f4bfe..4a927cedb 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -274,7 +274,7 @@ Channel* Channel::JoinUser(User *user, const char* cn, bool override, const char
if (!IS_LOCAL(user))
{
if (!TS)
- ServerInstance->Logs->Log("CHANNEL",DEBUG,"*** BUG *** Channel::JoinUser called for REMOTE user '%s' on channel '%s' but no TS given!", user->nick.c_str(), cn);
+ ServerInstance->Logs->Log("CHANNELS",DEBUG,"*** BUG *** Channel::JoinUser called for REMOTE user '%s' on channel '%s' but no TS given!", user->nick.c_str(), cn);
}
else
{
@@ -400,11 +400,15 @@ Channel* Channel::ForceChan(Channel* Ptr, User* user, const std::string &privs,
Ptr->WriteAllExcept(user, false, 0, except_list, "JOIN :%s", Ptr->name.c_str());
/* Theyre not the first ones in here, make sure everyone else sees the modes we gave the user */
- std::string ms = memb->modes;
- for(unsigned int i=0; i < memb->modes.length(); i++)
- ms.append(" ").append(user->nick);
- if ((Ptr->GetUserCounter() > 1) && (ms.length()))
- Ptr->WriteAllExceptSender(user, ServerInstance->Config->CycleHostsFromUser, 0, "MODE %s +%s", Ptr->name.c_str(), ms.c_str());
+ if ((Ptr->GetUserCounter() > 1) && (!memb->modes.empty()))
+ {
+ std::string ms = memb->modes;
+ for(unsigned int i=0; i < memb->modes.length(); i++)
+ ms.append(" ").append(user->nick);
+
+ except_list.insert(user);
+ Ptr->WriteAllExcept(user, !ServerInstance->Config->CycleHostsFromUser, 0, except_list, "MODE %s +%s", Ptr->name.c_str(), ms.c_str());
+ }
if (IS_LOCAL(user))
{
@@ -655,7 +659,7 @@ void Channel::WriteAllExcept(User* user, bool serversource, char status, CUList
if (!text)
return;
- int offset = snprintf(textbuffer,MAXBUF,":%s ", user->GetFullHost().c_str());
+ int offset = snprintf(textbuffer,MAXBUF,":%s ", serversource ? ServerInstance->Config->ServerName.c_str() : user->GetFullHost().c_str());
va_start(argsPtr, text);
vsnprintf(textbuffer + offset, MAXBUF - offset, text, argsPtr);
diff --git a/src/configparser.cpp b/src/configparser.cpp
index 056ed54a4..51d67b4f5 100644
--- a/src/configparser.cpp
+++ b/src/configparser.cpp
@@ -319,7 +319,7 @@ void ParseStack::DoReadFile(const std::string& key, const std::string& name, int
{
int len = strlen(linebuf);
if (len)
- cache.push_back(std::string(linebuf, len - 1));
+ cache.push_back(std::string(linebuf, len));
}
}
diff --git a/src/modules/extra/m_ssl_gnutls.cpp b/src/modules/extra/m_ssl_gnutls.cpp
index 22c027cfb..6ca876d4c 100644
--- a/src/modules/extra/m_ssl_gnutls.cpp
+++ b/src/modules/extra/m_ssl_gnutls.cpp
@@ -156,6 +156,7 @@ class ModuleSSLGnuTLS : public Module
int dh_bits;
bool cred_alloc;
+ bool dh_alloc;
RandGen randhandler;
CommandStartTLS starttls;
@@ -173,6 +174,7 @@ class ModuleSSLGnuTLS : public Module
gnutls_x509_privkey_init(&x509_key);
cred_alloc = false;
+ dh_alloc = false;
}
void init()
@@ -252,20 +254,25 @@ class ModuleSSLGnuTLS : public Module
int ret;
+ if (dh_alloc)
+ {
+ gnutls_dh_params_deinit(dh_params);
+ dh_alloc = false;
+ }
+
if (cred_alloc)
{
// Deallocate the old credentials
- gnutls_dh_params_deinit(dh_params);
gnutls_certificate_free_credentials(x509_cred);
for(unsigned int i=0; i < x509_certs.size(); i++)
gnutls_x509_crt_deinit(x509_certs[i]);
x509_certs.clear();
}
- else
- cred_alloc = true;
- if((ret = gnutls_certificate_allocate_credentials(&x509_cred)) < 0)
+ ret = gnutls_certificate_allocate_credentials(&x509_cred);
+ cred_alloc = (ret >= 0);
+ if (!cred_alloc)
ServerInstance->Logs->Log("m_ssl_gnutls",DEBUG, "m_ssl_gnutls.so: Failed to allocate certificate credentials: %s", gnutls_strerror(ret));
if((ret =gnutls_certificate_set_x509_trust_file(x509_cred, cafile.c_str(), GNUTLS_X509_FMT_PEM)) < 0)
@@ -300,7 +307,9 @@ class ModuleSSLGnuTLS : public Module
gnutls_certificate_client_set_retrieve_function (x509_cred, cert_callback);
- if((ret = gnutls_dh_params_init(&dh_params)) < 0)
+ ret = gnutls_dh_params_init(&dh_params);
+ dh_alloc = (ret >= 0);
+ if (!dh_alloc)
ServerInstance->Logs->Log("m_ssl_gnutls",DEFAULT, "m_ssl_gnutls.so: Failed to initialise DH parameters: %s", gnutls_strerror(ret));
// This may be on a large (once a day or week) timer eventually.
@@ -314,6 +323,9 @@ class ModuleSSLGnuTLS : public Module
// once a day, once a week or once a month. Depending on the
// security requirements.
+ if (!dh_alloc)
+ return;
+
int ret;
if((ret = gnutls_dh_params_generate2(dh_params, dh_bits)) < 0)
@@ -324,13 +336,14 @@ class ModuleSSLGnuTLS : public Module
{
for(unsigned int i=0; i < x509_certs.size(); i++)
gnutls_x509_crt_deinit(x509_certs[i]);
- x509_certs.clear();
+
gnutls_x509_privkey_deinit(x509_key);
- if (cred_alloc)
- {
+
+ if (dh_alloc)
gnutls_dh_params_deinit(dh_params);
+ if (cred_alloc)
gnutls_certificate_free_credentials(x509_cred);
- }
+
gnutls_global_deinit();
delete[] sessions;
ServerInstance->GenRandom = &ServerInstance->HandleGenRandom;
diff --git a/src/modules/m_censor.cpp b/src/modules/m_censor.cpp
index 170fe8b07..5e832cc8b 100644
--- a/src/modules/m_censor.cpp
+++ b/src/modules/m_censor.cpp
@@ -20,6 +20,8 @@
*/
+/* $ModDesc: Provides user and channel +G mode */
+
#define _CRT_SECURE_NO_DEPRECATE
#define _SCL_SECURE_NO_DEPRECATE
@@ -28,8 +30,6 @@
typedef std::map<irc::string,irc::string> censor_t;
-/* $ModDesc: Provides user and channel +G mode */
-
/** Handles usermode +G
*/
class CensorUser : public SimpleUserModeHandler
diff --git a/src/modules/m_chancreate.cpp b/src/modules/m_chancreate.cpp
index d7dfe8d2c..48f60a8d9 100644
--- a/src/modules/m_chancreate.cpp
+++ b/src/modules/m_chancreate.cpp
@@ -21,7 +21,7 @@
#include "inspircd.h"
-/* $ModDesc: Creates a snomask with notices whenever a new channel is created */
+/* $ModDesc: Provides snomasks 'j' and 'J', to which notices about newly created channels are sent */
class ModuleChanCreate : public Module
{
@@ -36,7 +36,7 @@ class ModuleChanCreate : public Module
Version GetVersion()
{
- return Version("Creates a snomask with notices whenever a new channel is created",VF_VENDOR);
+ return Version("Provides snomasks 'j' and 'J', to which notices about newly created channels are sent",VF_VENDOR);
}
diff --git a/src/modules/m_chanfilter.cpp b/src/modules/m_chanfilter.cpp
index e6585e524..c899d7a4b 100644
--- a/src/modules/m_chanfilter.cpp
+++ b/src/modules/m_chanfilter.cpp
@@ -23,14 +23,14 @@
*/
+/* $ModDesc: Provides channel-specific censor lists (like mode +G but varies from channel to channel) */
+
#define _CRT_SECURE_NO_DEPRECATE
#define _SCL_SECURE_NO_DEPRECATE
#include "inspircd.h"
#include "u_listmode.h"
-/* $ModDesc: Provides channel-specific censor lists (like mode +G but varies from channel to channel) */
-
/** Handles channel mode +g
*/
class ChanFilter : public ListModeBase
diff --git a/src/modules/m_check.cpp b/src/modules/m_check.cpp
index cabfd02bc..8316b09fe 100644
--- a/src/modules/m_check.cpp
+++ b/src/modules/m_check.cpp
@@ -20,9 +20,9 @@
*/
-#include "inspircd.h"
+/* $ModDesc: Provides the /CHECK command to retrieve information on a user, channel, hostname or IP address */
-/* $ModDesc: Provides the /check command to retrieve information on a user, channel, or IP address */
+#include "inspircd.h"
/** Handle /CHECK
*/
@@ -288,7 +288,7 @@ class ModuleCheck : public Module
Version GetVersion()
{
- return Version("CHECK command, view user/channel details", VF_VENDOR|VF_OPTCOMMON);
+ return Version("CHECK command, view user, channel, IP address or hostname information", VF_VENDOR|VF_OPTCOMMON);
}
};
diff --git a/src/modules/m_clones.cpp b/src/modules/m_clones.cpp
index 1e5841609..aceac0dc7 100644
--- a/src/modules/m_clones.cpp
+++ b/src/modules/m_clones.cpp
@@ -21,9 +21,9 @@
#include "inspircd.h"
-/* $ModDesc: Provides the /clones command to retrieve information on clones. */
+/* $ModDesc: Provides the /CLONES command to retrieve information on clones. */
-/** Handle /CHECK
+/** Handle /CLONES
*/
class CommandClones : public Command
{
@@ -44,7 +44,7 @@ class CommandClones : public Command
* Syntax of a /clones reply:
* :server.name 304 target :CLONES START
* :server.name 304 target :CLONES <count> <ip>
- * :server.name 304 target :CHECK END
+ * :server.name 304 target :CLONES END
*/
user->WriteServ(clonesstr + " START");
@@ -80,7 +80,7 @@ class ModuleClones : public Module
virtual Version GetVersion()
{
- return Version("Provides the /clones command to retrieve information on clones.", VF_VENDOR);
+ return Version("Provides the /CLONES command to retrieve information on clones.", VF_VENDOR);
}
diff --git a/src/modules/m_connectban.cpp b/src/modules/m_connectban.cpp
index f831a3b77..00452a8f2 100644
--- a/src/modules/m_connectban.cpp
+++ b/src/modules/m_connectban.cpp
@@ -20,7 +20,7 @@
#include "inspircd.h"
#include "xline.h"
-/* $ModDesc: Throttles the connections of any users who try connect flood */
+/* $ModDesc: Throttles the connections of IP ranges who try to connect flood. */
class ModuleConnectBan : public Module
{
@@ -43,7 +43,7 @@ class ModuleConnectBan : public Module
virtual Version GetVersion()
{
- return Version("Throttles the connections of any users who try connect flood", VF_VENDOR);
+ return Version("Throttles the connections of IP ranges who try to connect flood.", VF_VENDOR);
}
virtual void OnRehash(User* user)
diff --git a/src/modules/m_dccallow.cpp b/src/modules/m_dccallow.cpp
index 495a0da5a..8c2a5f73e 100644
--- a/src/modules/m_dccallow.cpp
+++ b/src/modules/m_dccallow.cpp
@@ -25,7 +25,7 @@
#include "inspircd.h"
-/* $ModDesc: Povides support for the /DCCALLOW command */
+/* $ModDesc: Provides support for the /DCCALLOW command */
class BannedFileList
{
@@ -479,7 +479,7 @@ class ModuleDCCAllow : public Module
virtual Version GetVersion()
{
- return Version("Povides support for the /DCCALLOW command", VF_COMMON | VF_VENDOR);
+ return Version("Provides support for the /DCCALLOW command", VF_COMMON | VF_VENDOR);
}
};
diff --git a/src/modules/m_delayjoin.cpp b/src/modules/m_delayjoin.cpp
index 3a574d485..34d782c77 100644
--- a/src/modules/m_delayjoin.cpp
+++ b/src/modules/m_delayjoin.cpp
@@ -20,6 +20,8 @@
*/
+/* $ModDesc: Allows for delay-join channels (+D) where users don't appear to join until they speak */
+
#include "inspircd.h"
#include <stdarg.h>
@@ -60,8 +62,6 @@ class ModuleDelayJoin : public Module
ModResult OnRawMode(User* user, Channel* channel, const char mode, const std::string &param, bool adding, int pcnt);
};
-/* $ModDesc: Allows for delay-join channels (+D) where users don't appear to join until they speak */
-
ModeAction DelayJoinMode::OnModeChange(User* source, User* dest, Channel* channel, std::string &parameter, bool adding)
{
/* no change */
@@ -194,4 +194,3 @@ ModResult ModuleDelayJoin::OnRawMode(User* user, Channel* channel, const char mo
}
MODULE_INIT(ModuleDelayJoin)
-
diff --git a/src/modules/m_globops.cpp b/src/modules/m_globops.cpp
index 2ef6d61d8..db55858d6 100644
--- a/src/modules/m_globops.cpp
+++ b/src/modules/m_globops.cpp
@@ -19,11 +19,11 @@
*/
-// Globops and +g support module by C.J.Edwards
+// Globops and snomask +g module by C.J.Edwards
#include "inspircd.h"
-/* $ModDesc: Provides support for GLOBOPS and user mode +g */
+/* $ModDesc: Provides support for GLOBOPS and snomask +g */
/** Handle /GLOBOPS
*/
@@ -63,7 +63,7 @@ class ModuleGlobops : public Module
virtual Version GetVersion()
{
- return Version("Provides support for GLOBOPS and user mode +g", VF_VENDOR);
+ return Version("Provides support for GLOBOPS and snomask +g", VF_VENDOR);
}
};
diff --git a/src/modules/m_halfop.cpp b/src/modules/m_halfop.cpp
index 2c4b086cb..f0eda3e56 100644
--- a/src/modules/m_halfop.cpp
+++ b/src/modules/m_halfop.cpp
@@ -17,6 +17,8 @@
*/
+/* $ModDesc: Channel half-operator mode provider */
+
#include "inspircd.h"
class ModeChannelHalfOp : public ModeHandler
diff --git a/src/modules/m_helpop.cpp b/src/modules/m_helpop.cpp
index dd2e77986..a7bd4a8c5 100644
--- a/src/modules/m_helpop.cpp
+++ b/src/modules/m_helpop.cpp
@@ -21,6 +21,8 @@
*/
+/* $ModDesc: Provides the /HELPOP command, works like UnrealIRCd's helpop */
+
#include "inspircd.h"
static std::map<irc::string, std::string> helpop_map;
diff --git a/src/modules/m_httpd_config.cpp b/src/modules/m_httpd_config.cpp
index aa84b83a4..0df1c12fb 100644
--- a/src/modules/m_httpd_config.cpp
+++ b/src/modules/m_httpd_config.cpp
@@ -22,7 +22,7 @@
#include "httpd.h"
#include "protocol.h"
-/* $ModDesc: Provides statistics over HTTP via m_httpd.so */
+/* $ModDesc: Allows for the server configuration to be viewed over HTTP via m_httpd.so */
class ModuleHttpConfig : public Module
{
@@ -107,7 +107,7 @@ class ModuleHttpConfig : public Module
virtual Version GetVersion()
{
- return Version("Provides configuration over HTTP via m_httpd.so", VF_VENDOR);
+ return Version("Allows for the server configuration to be viewed over HTTP via m_httpd.so", VF_VENDOR);
}
};
diff --git a/src/modules/m_jumpserver.cpp b/src/modules/m_jumpserver.cpp
index 4379f931a..9a171a19a 100644
--- a/src/modules/m_jumpserver.cpp
+++ b/src/modules/m_jumpserver.cpp
@@ -21,7 +21,7 @@
#include "inspircd.h"
-/* $ModDesc: Provides support for the RPL_REDIR numeric */
+/* $ModDesc: Provides support for the RPL_REDIR numeric and the /JUMPSERVER command. */
/** Handle /JUMPSERVER
*/
@@ -174,7 +174,7 @@ class ModuleJumpServer : public Module
virtual Version GetVersion()
{
- return Version("Provides support for the RPL_REDIR numeric", VF_VENDOR);
+ return Version("Provides support for the RPL_REDIR numeric and the /JUMPSERVER command.", VF_VENDOR);
}
};
diff --git a/src/modules/m_knock.cpp b/src/modules/m_knock.cpp
index 5664e79ab..84838ec7f 100644
--- a/src/modules/m_knock.cpp
+++ b/src/modules/m_knock.cpp
@@ -21,7 +21,7 @@
#include "inspircd.h"
-/* $ModDesc: Provides support for /KNOCK and mode +K */
+/* $ModDesc: Provides support for /KNOCK and channel mode +K */
/** Handles the /KNOCK command
*/
@@ -109,7 +109,7 @@ class ModuleKnock : public Module
virtual Version GetVersion()
{
- return Version("Provides support for /KNOCK and mode +K", VF_OPTCOMMON | VF_VENDOR);
+ return Version("Provides support for /KNOCK and channel mode +K", VF_OPTCOMMON | VF_VENDOR);
}
};
diff --git a/src/modules/m_md5.cpp b/src/modules/m_md5.cpp
index f8f13dcbc..14ccf16a8 100644
--- a/src/modules/m_md5.cpp
+++ b/src/modules/m_md5.cpp
@@ -158,7 +158,7 @@ class MD5Provider : public HashProvider
byteSwap(ctx->buf, 4);
memcpy(digest, ctx->buf, 16);
- memset(ctx, 0, sizeof(ctx));
+ memset(ctx, 0, sizeof(*ctx));
}
void MD5Transform(word32 buf[4], word32 const in[16])
diff --git a/src/modules/m_mlock.cpp b/src/modules/m_mlock.cpp
index b5f34c936..e9ca3bfd0 100644
--- a/src/modules/m_mlock.cpp
+++ b/src/modules/m_mlock.cpp
@@ -16,6 +16,9 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+
+/* $ModDesc: Implements the ability to have server-side MLOCK enforcement. */
+
#include "inspircd.h"
class ModuleMLock : public Module
diff --git a/src/modules/m_namedmodes.cpp b/src/modules/m_namedmodes.cpp
index 8233f4357..024cc427c 100644
--- a/src/modules/m_namedmodes.cpp
+++ b/src/modules/m_namedmodes.cpp
@@ -17,6 +17,8 @@
*/
+/* $ModDesc: Provides the ability to manipulate modes via long names. */
+
#include "inspircd.h"
static void DisplayList(User* user, Channel* channel)
diff --git a/src/modules/m_operlevels.cpp b/src/modules/m_operlevels.cpp
index d142a4b0f..da506dd58 100644
--- a/src/modules/m_operlevels.cpp
+++ b/src/modules/m_operlevels.cpp
@@ -20,9 +20,10 @@
*/
+/* $ModDesc: Gives each oper type a 'level', cannot kill opers 'above' your level. */
+
#include "inspircd.h"
-/* $ModDesc: Gives each oper type a 'level', cannot kill opers 'above' your level. */
class ModuleOperLevels : public Module
{
public:
diff --git a/src/modules/m_passforward.cpp b/src/modules/m_passforward.cpp
index 47f71bbe0..bf09c1f6e 100644
--- a/src/modules/m_passforward.cpp
+++ b/src/modules/m_passforward.cpp
@@ -17,6 +17,8 @@
*/
+/* $ModDesc: Forwards a password users can send on connect (for example for NickServ identification). */
+
#include "inspircd.h"
class ModulePassForward : public Module
@@ -100,4 +102,3 @@ class ModulePassForward : public Module
};
MODULE_INIT(ModulePassForward)
-
diff --git a/src/modules/m_randquote.cpp b/src/modules/m_randquote.cpp
index 94cd3dbac..5fa63d8f4 100644
--- a/src/modules/m_randquote.cpp
+++ b/src/modules/m_randquote.cpp
@@ -21,6 +21,8 @@
*/
+/* $ModDesc: Provides random quotes on connect. */
+
#include "inspircd.h"
static FileReader *quotes = NULL;
@@ -28,8 +30,6 @@ static FileReader *quotes = NULL;
std::string prefix;
std::string suffix;
-/* $ModDesc: Provides random Quotes on Connect. */
-
/** Handle /RANDQUOTE
*/
class CommandRandquote : public Command
@@ -88,7 +88,7 @@ class ModuleRandQuote : public Module
virtual Version GetVersion()
{
- return Version("Provides random Quotes on Connect.",VF_VENDOR);
+ return Version("Provides random quotes on connect.",VF_VENDOR);
}
virtual void OnUserConnect(LocalUser* user)
diff --git a/src/modules/m_rline.cpp b/src/modules/m_rline.cpp
index 5ee3355df..06c852938 100644
--- a/src/modules/m_rline.cpp
+++ b/src/modules/m_rline.cpp
@@ -20,6 +20,8 @@
*/
+/* $ModDesc: RLINE: Regexp user banning. */
+
#include "inspircd.h"
#include "m_regex.h"
#include "xline.h"
@@ -27,8 +29,6 @@
static bool ZlineOnMatch = false;
static std::vector<ZLine *> background_zlines;
-/* $ModDesc: RLINE: Regexp user banning. */
-
class RLine : public XLine
{
public:
@@ -316,4 +316,3 @@ class ModuleRLine : public Module
};
MODULE_INIT(ModuleRLine)
-
diff --git a/src/modules/m_seenicks.cpp b/src/modules/m_seenicks.cpp
index 02c2621bb..297504e05 100644
--- a/src/modules/m_seenicks.cpp
+++ b/src/modules/m_seenicks.cpp
@@ -21,7 +21,7 @@
#include "inspircd.h"
-/* $ModDesc: Provides support for seeing local and remote nickchanges via snomasks */
+/* $ModDesc: Provides support for seeing local and remote nickchanges via snomasks 'n' and 'N'. */
class ModuleSeeNicks : public Module
{
diff --git a/src/modules/m_services_account.cpp b/src/modules/m_services_account.cpp
index ef4802690..7f3c54907 100644
--- a/src/modules/m_services_account.cpp
+++ b/src/modules/m_services_account.cpp
@@ -21,11 +21,11 @@
*/
+/* $ModDesc: Provides support for ircu-style services accounts, including chmode +R, etc. */
+
#include "inspircd.h"
#include "account.h"
-/* $ModDesc: Povides support for ircu-style services accounts, including chmode +R, etc. */
-
/** Channel mode +r - mark a channel as identified
*/
class Channel_r : public ModeHandler
@@ -289,7 +289,7 @@ class ModuleServicesAccount : public Module
Version GetVersion()
{
- return Version("Povides support for ircu-style services accounts, including chmode +R, etc.",VF_OPTCOMMON|VF_VENDOR);
+ return Version("Provides support for ircu-style services accounts, including chmode +R, etc.",VF_OPTCOMMON|VF_VENDOR);
}
};
diff --git a/src/modules/m_shun.cpp b/src/modules/m_shun.cpp
index 5db3c8ef7..391f9a187 100644
--- a/src/modules/m_shun.cpp
+++ b/src/modules/m_shun.cpp
@@ -23,7 +23,7 @@
#include "inspircd.h"
#include "xline.h"
-/* $ModDesc: Provides the /shun command, which stops a user executing all commands except PING and PONG. */
+/* $ModDesc: Provides the /SHUN command, which stops a user from executing all except configured commands. */
class Shun : public XLine
{
@@ -308,7 +308,7 @@ class ModuleShun : public Module
virtual Version GetVersion()
{
- return Version("Provides the /shun command, which stops a user executing all commands except PING and PONG.",VF_VENDOR|VF_COMMON);
+ return Version("Provides the /SHUN command, which stops a user from executing all except configured commands.",VF_VENDOR|VF_COMMON);
}
};