/** Used to define a set of behavior bits for a module
*/
enum ModuleFlags {
+ VF_NONE = 0, // module is not special at all
VF_STATIC = 1, // module is static, cannot be /unloadmodule'd
VF_VENDOR = 2, // module is a vendor module (came in the original tarball, not 3rd party)
VF_SERVICEPROVIDER = 4, // module provides a service to other modules (can be a dependency)
class CoreExport Version : public classbase
{
public:
+ /** Module description
+ */
+ const std::string description;
/** Version information.
*/
const std::string version;
/** Initialize version class
*/
- Version(const std::string &customver, int flags,
+ Version(const std::string &desc, int flags,
int api_ver = API_VERSION, const std::string& src_rev = VERSION " r" REVISION);
};
* The method should return a Version object with its version information assigned via
* Version::Version
*/
- virtual Version GetVersion();
+ virtual Version GetVersion() = 0;
/** Called when a user connects.
* The details of the connecting user are available to you in the parameter User *user
if (user->HasPrivPermission("servers/auspex"))
{
- std::string flags("Svsc");
+ std::string flags("SvscC");
int pos = 0;
- for (int mult = 1; mult <= VF_SERVICEPROVIDER; mult *= 2, ++pos)
+ for (int mult = 1; mult <= VF_OPTCOMMON; mult *= 2, ++pos)
if (!(V.Flags & mult))
flags[pos] = '-';
- user->WriteNumeric(702, "%s :0x%08lx %s %s :%s", user->nick.c_str(), (unsigned long)m, module_names[i].c_str(), flags.c_str(), V.version.c_str());
+ user->WriteNumeric(702, "%s :0x%08lx %s %s :%s - %s", user->nick.c_str(),(unsigned long)m, module_names[i].c_str(), flags.c_str(), V.description.c_str(), V.version.c_str());
}
else
{
- user->WriteNumeric(702, "%s :%s",user->nick.c_str(), module_names[i].c_str());
+ user->WriteNumeric(702, "%s :%s %s", user->nick.c_str(), module_names[i].c_str(), V.description.c_str());
}
}
user->WriteNumeric(703, "%s :End of MODULES list",user->nick.c_str());
// version is a simple class for holding a modules version number
Version::Version(const std::string &modv, int flags, int api_ver, const std::string& rev)
-: version(modv + " - " + rev), Flags(flags), API(api_ver)
+: description(modv), version(rev), Flags(flags), API(api_ver)
{
}
void Module::OnRehash(User*) { }
ModResult Module::OnUserPreJoin(User*, Channel*, const char*, std::string&, const std::string&) { return MOD_RES_PASSTHRU; }
void Module::OnMode(User*, void*, int, const std::vector<std::string>&, const std::vector<TranslateType>&) { }
-Version Module::GetVersion() { return Version("Misconfigured", VF_VENDOR, -1); }
void Module::OnOper(User*, const std::string&) { }
void Module::OnPostOper(User*, const std::string&, const std::string &) { }
void Module::OnInfo(User*) { }
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides a way to restrict users by country using GeoIP lookup", VF_VENDOR, API_VERSION);
}
virtual void OnRehash(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Allow/Deny connections based upon answer from LDAP server", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Allow/Deny connections based upon answer from LDAP server", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("MsSQL provider", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
};
Version ModuleSQL::GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("SQL Service Provider module for all other m_sql* modules", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
void DispatcherThread::Run()
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR|VF_SERVICEPROVIDER, API_VERSION);
+ return Version("PostgreSQL Service Provider module for all other m_sql* modules, uses v2 of the SQL API", VF_VENDOR|VF_SERVICEPROVIDER, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Regex Provider Module for PCRE", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
virtual ~ModuleRegexPCRE()
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Regex Provider Module for POSIX Regular Expressions", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
virtual ~ModuleRegexPOSIX()
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Regex Provider Module for TRE Regular Expressions", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
virtual ~ModuleRegexTRE()
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Allow/Deny connections based upon an arbitary SQL table", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("sqlite3 provider", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Logs network-wide data to an SQL database", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Allows storage of oper credentials in an SQL table", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Provides some utilities to SQL client modules, such as mapping queries to users and channels", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides SSL support for clients", VF_VENDOR, API_VERSION);
}
Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides SSL support for clients", VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides SSL support for clients", VF_VENDOR, API_VERSION);
}
virtual void OnBackgroundTimer(time_t)
Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides zlib link support for servers", VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides the ability to abbreviate commands a-la BBC BASIC keywords.",VF_VENDOR,API_VERSION);
}
virtual ModResult OnPreCommand(std::string &command, std::vector<std::string> ¶meters, User *user, bool validated, const std::string &original_line)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Provides aliases of commands.", VF_VENDOR,API_VERSION);
}
std::string GetVar(std::string varname, const std::string &original_line)
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides support for channel mode +A, allowing /invite freely on a channel (and extban A to allow specific users it)",VF_COMMON|VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Display timestamps from all servers connected to the network", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Sends a numeric on connect which cripples a common type of trojan/spambot",VF_VENDOR,API_VERSION);
}
virtual ModResult OnPreCommand(std::string &command, std::vector<std::string> ¶meters, User *user, bool validated, const std::string &original_line)
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Changes the ident of connecting bottler clients to 'bottler'",VF_VENDOR,API_VERSION);
}
virtual ModResult OnPreCommand(std::string &command, std::vector<std::string> ¶meters, User *user, bool validated, const std::string &original_line)
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Allows for auditorium channels (+u) where nobody can see others joining and parting or the nick list", VF_COMMON | VF_VENDOR, API_VERSION);
}
void OnNamesListItem(User* issuer, Membership* memb, std::string &prefixes, std::string &nick)
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for the +e channel mode", VF_COMMON | VF_VENDOR, API_VERSION);
}
~ModuleBanException()
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON|VF_VENDOR, API_VERSION);
+ return Version("Allows an extended ban (+b) syntax redirecting banned users to another channel", VF_COMMON|VF_VENDOR, API_VERSION);
}
void Prioritize()
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Attempt to block /amsg, at least some of the irritating mIRC scripts.",VF_VENDOR,API_VERSION);
}
virtual void OnRehash(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides support to block all-CAPS channel messages and notices", VF_COMMON|VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides support for unreal-style channel mode +c",VF_COMMON|VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides support for unreal-style umode +B",VF_COMMON|VF_VENDOR,API_VERSION);
}
virtual void OnWhois(User* src, User* dst)
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Implementation of callerid (umode +g & /accept, ala hybrid etc)", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual void On005Numeric(std::string& output)
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Gives /cban, aka C:lines. Think Q:lines, for channels.", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides user and channel +G mode",VF_COMMON|VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Change user's hosts connecting from known CGI:IRC hosts",VF_VENDOR,API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Creates a snomask with notices whenever a new channel is created",VF_VENDOR,API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides channel-specific censor lists (like mode +G but varies from channel to channel)", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual ~ModuleChanFilter()
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Logs snomask output to channel(s).", VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Implements config tags which allow changing characters allowed in channel names", VF_VENDOR,API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for the CHGHOST command", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for the CHGIDENT command", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for the CHGNAME command", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
{
// returns the version number of the module to be
// listed in /MODULES
- return Version("$Id$", VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides masking of user hostnames", VF_COMMON|VF_VENDOR,API_VERSION);
}
void OnRehash(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides the /clones command to retrieve information on clones.", VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides /CLOSE functionality", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON|VF_VENDOR, API_VERSION);
+ return Version("Adds user mode +c, which if set, users must be on a common channel with you to private message you", VF_COMMON|VF_VENDOR, API_VERSION);
}
virtual ModResult OnUserPreMessage(User* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Forces users to join the specified channel(s) on connect", VF_VENDOR,API_VERSION);
}
virtual void OnPostConnect(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Sets (and unsets) modes on users when they connect", VF_VENDOR,API_VERSION);
}
virtual void OnUserConnect(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Throttles the connections of any users who try connect flood", VF_VENDOR,API_VERSION);
}
virtual void OnRehash(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Connection throttle", VF_VENDOR,API_VERSION);
}
void InitConf()
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style CYCLE command.", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Povides support for the /DCCALLOW command", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides support for ircu style usermode +d (deaf to channel messages and channel notices)", VF_COMMON|VF_VENDOR,API_VERSION);
}
};
Version ModuleDelayJoin::GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR);
+ return Version("Allows for delay-join channels (+D) where users dont appear to join until they speak", VF_COMMON | VF_VENDOR);
}
void ModuleDelayJoin::OnNamesListItem(User* issuer, Membership* memb, std::string &prefixes, std::string &nick)
Version ModuleDelayMsg::GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides channelmode +d <int>, to deny messages to a channel until <int> seconds.", VF_COMMON | VF_VENDOR, API_VERSION);
}
void ModuleDelayMsg::OnUserJoin(Membership* memb, bool sync, bool created, CUList&)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Implements config tags which allow blocking of joins to channels", VF_VENDOR,API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides voiced users with the ability to devoice themselves.", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides handling of DNS blacklists", VF_VENDOR, API_VERSION);
}
Version FilterBase::GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_COMMON, API_VERSION);
+ return Version("Text (spam) filtering", VF_VENDOR | VF_COMMON, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Allows global loading of a module.", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for GLOBOPS and user mode +g", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("/helpop Command, Works like Unreal helpop", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for hiding channels with user mode +I", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual void OnRehash(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for hiding oper status with user mode +H", VF_COMMON | VF_VENDOR, API_VERSION);
}
ModResult OnWhoisLine(User* user, User* dest, int &numeric, std::string &text)
{
// returns the version number of the module to be
// listed in /MODULES
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides masking of user hostnames in a different way to m_cloaking", VF_VENDOR, API_VERSION);
}
virtual void OnUserConnect(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Provides HTTP serving facilities to modules", VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides access control lists (passwording of resources, ip restrictions etc) to m_httpd.so dependent modules", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides statistics over HTTP via m_httpd.so", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides statistics over HTTP via m_httpd.so", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for RFC1413 ident lookups", VF_VENDOR, API_VERSION);
}
virtual void OnRehash(User *user)
Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_COMMON, API_VERSION);
+ return Version("Provides support for the +I channel mode", VF_VENDOR | VF_COMMON, API_VERSION);
}
~ModuleInviteException()
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides channel mode +j (join flood protection)", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for the RPL_REDIR numeric", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for /KNOCK and mode +K", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Allows locking of the server to stop all incoming connections till unlocked again", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Hide /MAP and /LINKS in the same form as ircu (mostly useless)", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR|VF_SERVICEPROVIDER,API_VERSION);
+ return Version("Allows for MD5 encrypted oper passwords",VF_VENDOR|VF_SERVICEPROVIDER,API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides channel mode +f (message flood protection)", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Implements extban +b m: - mute bans",VF_COMMON|VF_VENDOR,API_VERSION);
}
virtual ModResult OnUserPreMessage(User *user, void *dest, int target_type, std::string &text, char status, CUList &exempt_list)
Version GetVersion()
{
- return Version("$Id$",VF_VENDOR);
+ return Version("Provides the NAMESX (CAP multi-prefix) capability.",VF_VENDOR);
}
void On005Numeric(std::string &output)
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON,API_VERSION);
+ return Version("Provides an ability to have non-RFC1459 nicks & support for national CASEMAPPING",VF_COMMON,API_VERSION);
}
/*make an array to check against it 8bit characters a bit faster. Whether allowed or uppercase (for your needs).*/
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides the NICKLOCK command, allows an oper to chage a users nick and lock them to it until they quit", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style channel mode +C", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual ModResult OnUserPreMessage(User* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list)
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style channel mode +Q", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for channel mode +N & extban +b N: which prevents nick changes on channel", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style channel mode +T", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON|VF_VENDOR, API_VERSION);
+ return Version("Implements extban +b p: - part message bans", VF_COMMON|VF_VENDOR, API_VERSION);
}
Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_COMMON, API_VERSION);
+ return Version("Provides support for oper-only chans via the +O channel mode", VF_VENDOR | VF_COMMON, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Forces opers to join the specified channel(s) on oper-up", VF_VENDOR, API_VERSION);
}
virtual void OnPostOper(User* user, const std::string &opertype, const std::string &opername)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Gives each oper type a 'level', cannot kill opers 'above' your level.", VF_VENDOR, API_VERSION);
}
virtual ModResult OnKill(User* source, User* dest, const std::string &reason)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("A module which logs all oper commands to the ircd log at default loglevel.", VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Sets (and unsets) modes on opers when they oper up", VF_VENDOR, API_VERSION);
}
virtual void OnPostOper(User* user, const std::string &opertype, const std::string &opername)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Shows a message to opers after oper-up, adds /opermotd", VF_VENDOR, API_VERSION);
}
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Gives opers cmode +y which provides a staff prefix.", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides support for unreal-style oper-override",VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Allows for hashed oper passwords",VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Provides support for channel mode +P to provide permanent channels",VF_COMMON|VF_VENDOR,API_VERSION);
}
virtual ModResult OnChannelPreDelete(Channel *c)
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides random Quotes on Connect.",VF_VENDOR,API_VERSION);
}
virtual void OnUserConnect(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides channel mode +L (limit redirection)", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Regex module using plain wildcard matching.", VF_COMMON | VF_VENDOR | VF_SERVICEPROVIDER, API_VERSION);
}
virtual ~ModuleRegexGlob()
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Prevents users who's nicks are not registered from creating new channels", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides a /remove command, this is mostly an alternative to /kick, except makes users appear to have parted the channel", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Only opers may create new channels if this module is loaded",VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Forbids users from messaging each other. Users may still message opers and opers may message other opers.",VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR|VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Allows for RIPEMD-160 encrypted oper passwords", VF_VENDOR|VF_SERVICEPROVIDER, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("RLINE: Regexp user banning.", VF_COMMON | VF_VENDOR, API_VERSION);
}
virtual void OnUserConnect(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_SERVICEPROVIDER | VF_VENDOR, API_VERSION);
+ return Version("Encode and decode JSON-RPC requests for modules", VF_SERVICEPROVIDER | VF_VENDOR, API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("A test of the RPC API", VF_VENDOR, API_VERSION);
}
Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("A module overriding /list, and making it safe - stop those sendq problems.",VF_VENDOR,API_VERSION);
}
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style SAJOIN command", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON|VF_VENDOR, API_VERSION);
+ return Version("Provides a SAKICK command", VF_OPTCOMMON|VF_VENDOR, API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides more advanced UnrealIRCd SAMODE command", VF_VENDOR, API_VERSION);
}
ModResult OnPreMode(User* source,User* dest,Channel* channel, const std::vector<std::string>& parameters)
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for SANICK command", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style SAPART command", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for an SAQUIT command, exits user with a reason", VF_OPTCOMMON | VF_VENDOR, API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides support for IRC Authentication Layer (aka: atheme SASL) via AUTHENTICATE.",VF_VENDOR,API_VERSION);
}
void OnEvent(Event *ev)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides a SATOPIC command", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("A module overriding /list, and making it safe - stop those sendq problems.",VF_VENDOR,API_VERSION);
}
void OnRehash(User* user)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for seeing local and remote nickchanges via snomasks", VF_VENDOR, API_VERSION);
}
Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Povides support for ircu-style services accounts, including chmode +R, etc.",VF_COMMON|VF_VENDOR,API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for Austhex style +k / UnrealIRCD +S services mode", VF_COMMON | VF_VENDOR, API_VERSION);
}
void OnWhois(User* src, User* dst)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for the SETHOST command", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for the SETIDENT command", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Allows opers to set their idle time", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides support for the SETNAME command", VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR|VF_SERVICEPROVIDER, API_VERSION);
+ return Version("Allows for SHA-256 encrypted oper passwords", VF_VENDOR|VF_SERVICEPROVIDER, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version("Allows opers to set +W to see when a user uses WHOIS on them",VF_COMMON|VF_VENDOR,API_VERSION);
}
virtual void OnWhois(User* source, User* dest)
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR|VF_COMMON,API_VERSION);
+ return Version("Provides the /shun command, which stops a user executing all commands except PING and PONG.",VF_VENDOR|VF_COMMON,API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for the /SILENCE command", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
if (IS_OPER(source))
{
- std::string flags("Svsc");
+ std::string flags("SvscC");
int pos = 0;
- for (int mult = 1; mult <= VF_SERVICEPROVIDER; mult *= 2, ++pos)
+ for (int mult = 1; mult <= VF_OPTCOMMON; mult *= 2, ++pos)
if (!(V.Flags & mult))
flags[pos] = '-';
- snprintf(strbuf, MAXBUF, "::%s 702 %s :0x%08lx %s %s :%s", ServerInstance->Config->ServerName, source->nick.c_str(),(unsigned long)m, module_names[i].c_str(), flags.c_str(), V.version.c_str());
+ snprintf(strbuf, MAXBUF, "::%s 702 %s :0x%08lx %s %s :%s - %s", ServerInstance->Config->ServerName, source->nick.c_str(),(unsigned long)m, module_names[i].c_str(), flags.c_str(), V.description.c_str(), V.version.c_str());
}
else
{
- snprintf(strbuf, MAXBUF, "::%s 702 %s :%s", ServerInstance->Config->ServerName, source->nick.c_str(), module_names[i].c_str());
+ snprintf(strbuf, MAXBUF, "::%s 702 %s :%s %s", ServerInstance->Config->ServerName, source->nick.c_str(), module_names[i].c_str(), V.description.c_str());
}
par[1] = strbuf;
Utils->DoOneToOne(ServerInstance->Config->GetSID(), "PUSH", par, source->server);
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Provides the ability to see the complete names list of channels an oper is not a member of", VF_VENDOR, API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for unreal-style channel mode +z", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides channel +S mode (strip ansi colour)", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Implements SVSHOLD. Like Q:Lines, but can only be added/removed by Services.", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides the SWHOIS command which allows setting of arbitary WHOIS lines", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Adds timed bans", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR,API_VERSION);
+ return Version("Provides /tline command used to test who a mask matches", VF_VENDOR,API_VERSION);
}
};
Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides the UHNAMES facility.",VF_VENDOR,API_VERSION);
}
void On005Numeric(std::string &output)
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR | VF_COMMON, API_VERSION);
+ return Version("Provides the UNINVITE command which lets users un-invite other users from channels (!)", VF_VENDOR | VF_COMMON, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides support for USERIP command",VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$",VF_VENDOR,API_VERSION);
+ return Version("Provides masking of user hostnames via traditional /VHOST command",VF_VENDOR,API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_COMMON | VF_VENDOR, API_VERSION);
+ return Version("Provides support for the /WATCH command", VF_COMMON | VF_VENDOR, API_VERSION);
}
};
virtual Version GetVersion()
{
- return Version("$Id$", VF_VENDOR, API_VERSION);
+ return Version("Keeps a dynamic log of all XLines created, and stores them in a seperate conf file (xline.db).", VF_VENDOR, API_VERSION);
}
};