aboutsummaryrefslogtreecommitdiffstats
path: root/extensions/README
blob: f7b31239b1bc6890ae6345d9918659a8fa38dacb (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
$Id: README 1622 2006-06-04 03:01:05Z beu $

This directory contains extensions (modules) to ChatIRCd that
have been contributed by other people, or written by our development
team.  Unsupported extensions live under unsupported/.


Modules
-------

createauthonly.so            - Only allow authenticated (identified) users to create
                               channels.

ip_cloaking.so               - Cloak (spoof) the host for users that have umode +h.

m_42.so                      - The Answer to Life, the Universe, and Everything.
                               Syntax: 42

m_adminwall.so               - Sends a message to all admins network-wide (umode +a)
                               Syntax: ADMINWALL :<message>

m_findforwards.so            - Find channels that forward (+f) to a given channel.
                               Syntax: FINDFORWARDS <channel>

m_forcejoin.so               - Force joins the specified user to a channel.  Requires
                               the issuing user to be an oper with the oper:force flag.
                               Syntax: FORCEJOIN NickOfUserToJoin #ChannelToJoin
                               Syntax: FJOIN NickOfUserToJoin #ChannelToJoin

m_forcenick.so               - Forcibly changes the nickname of the target user to the
                               specified nick.  Requires the issuing user to be an oper
                               with the oper:force flag.
                               Syntax: FORCENICK OldNick NewNick
                               Syntax: FNICK OldNick NewNick

m_identify.so                - Identifies to NickServ or ChanServ
                               Syntax: IDENTIFY [nick|channel] <password>

m_listenoff.so               - Turns off all the listeners on all servers matching the given
                               server mask , or the local server if no server mask is given.
                               For local, requires the issuing user to be an admin with the
                               oper:local_routing flag.  For remote, additionally requires
                               the issuing user to be a NetAdmin with the oper:routing flag.
						       Syntax: LISTENOFF [server.mask.here]
						   
m_mkpasswd.so                - Generate a DES or MD5 encryption of a password
                               Syntax:  MKPASSWD <plaintext> [MD5|DES]

m_partall.so                 - When executed, parts the issuing user from all channels.
                               Replaces /join 0.
                               Syntax: PARTALL

m_why.so                     - Permits channel operators, or IRCops to see if a given user
                               matches any of the bans, quiets, ban exceptions, or invite
                               exceptions on the channel.
                               Syntax: WHY #Channel NickOfUserToCheck

m_ojoin.so                   - Join a channel through any modes or limits with 
                               an optional status (@+)
                               Syntax: OJOIN [status]<channel>

m_olist.so                   - Lists channels like LIST, but shows hidden
                               channels.  Oper only of course.
                               Syntax: OLIST [params]

m_opme.so                    - Allows an admin to op themselves in an opless channel
                               Syntax: OPME <channel>

m_omode.so                   - Allows an admin to do all sorts of evil upon a
                               channel, sets modes with extreme prejudice
                               Syntax: OMODE #Channel +abc-xyz [params]

m_remove.so                  - Implements /REMOVE, which allows a channel op to
                               force-part a problematic user from a channel.  Most
                               likely, you don't want this, because it is non-standard,
                               and easily worked around for autojoin purposes.
                               Syntax: REMOVE #Channel LamerNick

make_override_immune.so      - Provides umode +y, which prevents opers from being kicked
                               from channels.  Will not prevent kicks from services, or
                               other opers with umode +p (override) enabled.

no_kill_higher_opers.so      - Prevents NetAdmins from being /kill'd by a non-NetAdmin.
                               Prevents Admins from being /kill'd by an oper who is not
                               another Admin or a NetAdmin.

no_kill_services.so          - Prevents services clients from being /kill'd.

no_locops.so                 - Prevents setting umode +l, and thus the usage of local wallops.

no_oper_invis.so             - Disallow opers setting marking themselves as invisible
                               (+i) unless they have the hidden_oper flag.

restrict_unauthenticated.so - Prevents users from doing anything as channel op without
                               being ID'd to NickServ.

example_module.so            - An example module to be used for creating your own.
                               Syntax: TEST


Spy Modules
-----------

The following are the 'spy' parts, accessible via the +y snomask

spy_admin_notice.so          - Spy on clients doing ADMIN
spy_info_notice.so           - Spy on clients doing INFO
spy_links_notice.so          - Spy on clients doing LINKS
spy_motd_notice.so           - Spy on clients doing MOTD
spy_stats_notice.so          - Spy on clients doing all STATS
spy_stats_p_notice.so        - Spy on clients doing STATS p only
spy_trace_notice.so          - Spy on clients doing TRACE

Note: if you have both spy_stats_notice.so and spy_stats_p_notice.so loaded
you will get two messages.

Snomask Modules
---------------

sno_channeljoin.so           - Generates notices when users join channels, and what channels they joined.
sno_farconnect.so            - Remote client connect/exit notices (snomask +F)
sno_globalkline.so           - Global K/D/X-line activation notices
sno_globalnickchange.so      - Global nick change notices (snomask +N)
sno_whois.so                 - Spy on clients who WHOIS you seeing idle time (snomask +W).

Extban Modules - Different matching criteria for +beIq
------------------------------------------------------

extb_account.so              - Account bans (+b $a[:mask])
extb_canjoin.so              - Banned from another channel (+b $j:mask)
extb_channel.so              - Other-channel bans (+b $c:mask)
extb_combi.so                - Combination extbans, provides AND ($&) and OR ($|) logic.
                               (+b $&($~a,$h:*!webchat@*))
extb_extgecos.so             - Extended ban (+b $x:mask)
extb_hostmask.so             - Hostmasks.  Equivalent to no extban, intended to be used with extb_combi. (+b $h:n!u@h)
extb_oper.so                 - Oper bans, only works with +e and +I. (+I $o)
extb_realname.so             - Realname (gecos) bans (+b $r:mask)
extb_unidentified.so         - Unidentified users matching the given hostmask (+b $u: *!webchat@*)
extb_usermode.so             - Matches users with the given usermode. (+b $m:xB)