272 lines
7.2 KiB
Markdown
272 lines
7.2 KiB
Markdown
### Community-supported Atheme Modules
|
|
|
|
This directory contains modules that are not included in the main modules
|
|
folders for one reason or another. Either their code is a bit ugly, their
|
|
functionality is frowned upon, they only work with a limited number of IRCd's
|
|
or similar cases.
|
|
|
|
### Building other modules not included in this distribution
|
|
|
|
Just drop the file in here, and it will be built/installed.
|
|
|
|
Alternatively just to build a single module, use the `$SRCS`
|
|
make variable to build and install modules.
|
|
|
|
```
|
|
$ make SRCS=fileyouwanttocompile.c
|
|
Successfully compiled fileyouwanttocompile.c as fileyouwanttocompile.so.
|
|
$ make SRCS=fileyouwanttocompile.c install
|
|
Successfully installed fileyouwanttocompile.so.
|
|
```
|
|
|
|
### Adding additional modules here
|
|
|
|
Any modules you want to add can be considered for inclusion here by sending us
|
|
a pull request on GitHub.
|
|
|
|
### Incomplete list of modules
|
|
|
|
#### cs_babbler.c
|
|
|
|
Repeats what others users in a channel say back to a specific
|
|
user. Useful for users that claim they have entire channels on
|
|
ignore. NOT COMPILED BY DEFAULT.
|
|
|
|
#### cs_badwords.c
|
|
|
|
Takes actions against users (KICK, BAN, KICKBAN or QUIET) for
|
|
using badwords in channel, specified on a per-channel basis
|
|
with the BADWORDS command. Be aware it will check every message
|
|
sent to channels that BLOCKBADWORDS is set on so it can be a bit
|
|
CPU-heavy.
|
|
|
|
#### cs_kickdots.c
|
|
|
|
Kicks users from a channel when kickdots metadata is set on
|
|
that channel and users send a line containing only "...".
|
|
Deprecated by cs_badwords (/cs badwords #channel add ... kick).
|
|
|
|
#### cs_ping.c
|
|
|
|
Responds to users that ping ChanServ with "Pong!".
|
|
|
|
#### cs_regmode.c
|
|
|
|
Sets the stupid, pointless DALNet-style +/-r mode when a channel
|
|
is registered or dropped. NOT RECOMMENDED TO USE.
|
|
|
|
#### cs_regnotice.c
|
|
|
|
Sends a user a notice with some information specified in a
|
|
regnotice {} block inside the chanserv {} block of your
|
|
atheme.conf when the user registers a channel.
|
|
|
|
#### cs_updown.c
|
|
|
|
Either gives or removes all your channel status modes at once.
|
|
|
|
#### cs_userinfo.c
|
|
|
|
Display a message when a user joins a channel. You must be able
|
|
to edit the channel access list to add or remove a userinfo entry.
|
|
|
|
#### gen_echoserver.c
|
|
|
|
A small sample echoserver using the connection_t framework (deprecated).
|
|
NOT RECOMMENDED TO USE.
|
|
|
|
#### gen_httpd.c
|
|
|
|
A small sample httpd for serving files. It is highly recommended to use
|
|
misc/httpd.c instead.
|
|
|
|
#### gen_listenerdemo.c
|
|
|
|
Demonstrates how to use listeners using the connection_t framework (deprecated).
|
|
NOT RECOMMENDED TO USE.
|
|
|
|
#### gen_vhostonreg.c
|
|
|
|
Assigns a $account.hidehostsuffix vhost to all users upon
|
|
account registration. $account will be replaced by the users'
|
|
accountname and hidehostsuffix is that config option from the
|
|
serverinfo {} block of your atheme.conf.
|
|
|
|
#### graphtastical.c
|
|
|
|
Graphs user->channel relationships. Not recommended to use if
|
|
there are privacy concerns.
|
|
|
|
#### gs_roulette.c
|
|
|
|
A nice GameServ game of Russian Roulette.
|
|
|
|
#### ircd_catserv.c
|
|
|
|
Little module showing a CatServ Services client, pretty much all modular
|
|
services since forever implement this as an example, so we do too.
|
|
|
|
#### ircd_announceserv.c
|
|
|
|
A services bot which allows users to request network
|
|
announcements that will then (when approved by a soper)
|
|
be sent to all users on the network. This is seperate
|
|
from InfoServ so that users can easily ignore users'
|
|
announcements but won't miss any important announcements
|
|
from network staff.
|
|
|
|
#### ircd_loveserv.c
|
|
|
|
A services bot for sending love-related items to other users.
|
|
NOT COMPILED BY DEFAULT.
|
|
|
|
#### ircd_crypto_trans.c
|
|
|
|
A encryption module for IRCServices weird password encryption scheme, useful
|
|
for transitioning to crypto/posix. NOT COMPILED BY DEFAULT.
|
|
|
|
#### mlocktweaker.c
|
|
|
|
Sets the mlock to all new channels to something specified in
|
|
the source code of the module. See line 16 of the module's
|
|
code for what to edit. NOT COMPILED BY DEFAULT.
|
|
|
|
#### ns_ajoin.c
|
|
|
|
Allows users to set a AJOIN/autojoin list of channels that Atheme
|
|
will automatically join them to upon identify. Only works on
|
|
ShadowIRCd, InspIRCd and UnrealIRCd. NOT COMPILED BY DEFAULT.
|
|
|
|
#### ns_cleannick.c
|
|
|
|
Detects and cleans 'lame' nicknames using case normalization.
|
|
|
|
#### ns_fenforce.c
|
|
|
|
Allows opers to force the ENFORCE flag on/off on other users' accounts.
|
|
|
|
#### ns_forbid.c
|
|
|
|
Allows opers to forbid the registration and use of a nickname.
|
|
|
|
#### ns_fregister.c
|
|
|
|
Allows opers to register an account on behalf of another user.
|
|
An oper must have the user:fregister priv to use this command.
|
|
|
|
#### ns_generatehash.c
|
|
|
|
Generates a password hash from the password given as part
|
|
of the command. Extremely useful if your passwords are
|
|
encrypted and you want to set SOPER passwords.
|
|
|
|
#### ns_generatepass.c
|
|
|
|
Generates a random password.
|
|
|
|
#### ns_guestnoreg.c
|
|
|
|
Disallows the registration of nicks beginning with a string
|
|
specified in the guestnicks {} block inside the nickserv {}
|
|
block of your atheme.conf.
|
|
|
|
#### ns_listlogins.c
|
|
|
|
Allows users to list the other clients currently logged in
|
|
to the same account as them.
|
|
|
|
#### ns_mxcheck.c
|
|
|
|
Checks if a email address provided by a user upon registration
|
|
is valid and fails registration if it is not.
|
|
|
|
#### ns_mxcheck_async.c
|
|
|
|
Same as ns_mxcheck.c, but asynchronous.
|
|
|
|
#### ns_regnotice.c
|
|
|
|
Sends a user a notice with some information specified in a
|
|
regnotice {} block inside the nickserv {} block of your
|
|
atheme.conf when the user registers an account.
|
|
|
|
#### ns_waitreg.c
|
|
|
|
Requires a user to have been connected for waitreg_time (in
|
|
the nickserv {} block of your atheme.conf) seconds before
|
|
they are allowed to register their nick.
|
|
|
|
#### on_db_save.c
|
|
|
|
Allows you to specify a command that is run every time the Atheme
|
|
database is saved.
|
|
|
|
#### os_akillnicklist.c
|
|
|
|
AKILLs users matched in a nicklist specified in your
|
|
atheme.conf. See the comment at the top of the module's
|
|
source code for details.
|
|
|
|
#### os_defcon.c
|
|
|
|
Allows you to use DEFCON-based security on your network.
|
|
*HIGHLY* NOT RECOMMENDED AND NOT COMPILED BY DEFAULT.
|
|
|
|
#### os_helpme.c
|
|
|
|
Sets usermode +h on all users listed with the general:helper
|
|
soper priv upon recieving soper status. Requires an IRCd that has
|
|
+h (helper) usermode support. NOT COMPILED BY DEFAULT.
|
|
|
|
#### os_joinmon.c
|
|
|
|
Allows adding nick patterns to a joinmon list and when a user
|
|
matching one of the patterns joins a channel, a message will
|
|
be sent to the logchan (with the info loglevel).
|
|
|
|
#### os_kill.c
|
|
|
|
Allows opers to KILL users via services.
|
|
|
|
#### os_klinechan.c
|
|
|
|
KLINEs all users who join a KLINECHAN.
|
|
|
|
#### os_pingspam.c
|
|
|
|
Spam a user with pings and various messages either on-demand or
|
|
spams all users a bit upon connect. Basically, the same functionality as
|
|
NeoStats' SecureServ.
|
|
|
|
#### os_procwatch.c
|
|
|
|
Watch a specified process and log a message when it finishes
|
|
running. Requires kqueue (FreeBSD). NOT COMPILED BY DEFAULT.
|
|
|
|
#### os_savechanmodes.c
|
|
|
|
Allows you to dump and restore channelmodes of all channels
|
|
on the network, including unregistered ones. Useful for ircd transitions.
|
|
|
|
#### os_tabletest.c
|
|
|
|
Tests the dynamic table generation APIs for command replies.
|
|
NOT RECOMMENDED TO USE.
|
|
|
|
#### os_testcmd.c
|
|
|
|
Run a test command.
|
|
|
|
#### os_testproc.c
|
|
|
|
Runs a test of child processes.
|
|
|
|
#### os_trace.c
|
|
|
|
Looks up users by certain criteria and allows you to perform
|
|
various actions on them.
|
|
|
|
#### wumpus.c
|
|
|
|
Allows users to play a game of Hunt the Wumpus!
|