summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules')
-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
25 files changed, 75 insertions, 53 deletions
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);
}
};