-# Configuration file for m_filter.so (2.0.0.0)
-# C.J.Edwards April 2004.
-#
+# Configuration file for m_filter.so and m_filter_pcre.so
# The tags for this module are formatted as follows:
#
-# <keyword pattern="any glob pattern here"
-# reason="reason for filtering"
-# action="action to take">
+# <keyword pattern="any glob pattern here"
+# reason="reason for filtering"
+# action="action to take"
+# flags="filter flags"
+# duration="optional length of gline">
#
# Valid actions for 'action' are:
#
-# block This blocks the line, sends out a notice to all opers with
-# +s and informs the user that their message was blocked.
+# block This blocks the line, sends out a notice to all opers with
+# +s and informs the user that their message was blocked.
+#
+# silent This blocks the line only, and informs the user their message
+# was blocked, but does not notify opers.
+#
+# none This action causes nothing to be done except logging. This
+# is the default action if none is specified.
+#
+# kill This disconnects the user, with the 'reason' parameter as
+# the kill reason.
+#
+# gline G-LINE the user for 'duration' length of time. Durations may
+# be specified using the notation 1y2d3h4m6s in a similar way to
+# other glines, omitting the duration or setting it to 0 makes
+# any glines set by this filter be permanent.
#
-# none This action causes nothing to be done except logging. This
-# is the default action if none is specified.
+# You can add filters from IRC using the /FILTER command. If you do this, they
+# will be set globally to your entire network.
#
-# kill This disconnects the user, with the 'reason' parameter as
-# the kill reason.
+# Valid characters for 'flags' are one or more of:
+#
+# p: Block private and channel messages
+# n: Block private and channel notices
+# P: Block part messages
+# q: Block quit messages
+# o: Don't match against opers
+# *: Represents all of the above flags
+# -: Does nothing, a non-op for when you do not want to specify any flags
+
+# Example filters for m_filter:
+#
+# <keyword pattern="*qwerty*" reason="You qwertied!" action="block" flags="pn">
+# <keyword pattern="*killmenow*" reason="As you request." action="kill" flags="*">
+# <keyword pattern="*blah*" reason="Dont blah!" action="gline" duration="1d6h" flags="-">
-<keyword pattern="*qwerty*" reason="You qwertied!" action="block">
-<keyword pattern="*killmenow*" reason="As you request." action="kill">
+# An example regexp filter for m_filter_pcre:
+#
+# <keyword pattern="^blah.*?$" reason="Dont blah!" action="gline" duration="1d6h" flags="pnPq">