Skip to content

Commit

Permalink
Update for the changes in v4.4.0.
Browse files Browse the repository at this point in the history
  • Loading branch information
SadieCat committed Nov 2, 2024
1 parent 1709f77 commit 10ec4b1
Show file tree
Hide file tree
Showing 14 changed files with 256 additions and 26 deletions.
1 change: 0 additions & 1 deletion docs/3/modules/anticaps.yml

This file was deleted.

47 changes: 47 additions & 0 deletions docs/3/modules/anticaps.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: anticaps

description: |-
This module adds channel mode `B` (anticaps) which allows channels to block messages which are excessively capitalised.
configuration:
- name: anticaps
description: |-
The `<anticaps>` tag defines settings about how the anticaps module should behave. This tag can only be defined once.
attributes:
- name: lowercase
type: Text
required: false
default: abcdefghijklmnopqrstuvwxyz
description: |-
A list of characters to treat as lower case letters.
- name: uppercase
type: Text
required: false
default: ABCDEFGHIJKLMNOPQRSTUVWXYZ
description: |-
A list of characters to treat as upper case letters.
details: ""
example: |-
```xml
<anticaps lowercase="abcdefghijklmnopqrstuvwxyz"
uppercase="ABCDEFGHIJKLMNOPQRSTUVWXYZ">
```
chmodes:
chars:
- name: anticaps
char: B
type: Parameter
syntax: '{ban|block|mute|kick|kickban}:<minlen>:<percent>'
usable_by: Channel operators
description: |-
Enables blocking excessively capitalised messages.
example:
- description: |-
Kicks users who send a message which is longer than five characters and is more than 75% capital letters
text: |-
/MODE #channel +B kick:5:75
exemptions:
- name: anticaps
description: Allows exempted users to send overly capitalised messages.
1 change: 0 additions & 1 deletion docs/3/modules/hidechans.yml

This file was deleted.

32 changes: 32 additions & 0 deletions docs/3/modules/hidechans.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: hidechans

description: |-
This module adds user mode `I` (hidechans) which hides the channels users with it set are in from their `/WHOIS` response.
configuration:
- name: hidechans
description: |-
The `<hidechans>` tag defines settings about how the hidechans module should behave. This tag can only be defined once.
attributes:
- name: affectsopers
type: Boolean
required: false
default: 'No'
description: |-
Whether server operators are affected by the user mode.
details: ""
example: |-
```xml
<hidechans affectsopers="no">
```
umodes:
chars:
- name: hidechans
char: I
type: Switch
syntax: null
usable_by: Anyone
description: |-
Hides the channels the user is in from their `/WHOIS` response.
example: ""
66 changes: 66 additions & 0 deletions docs/4/change-log.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,72 @@ title: v4 Change Log

This page lists changes which have happened between releases.

### InspIRCd 4.4.0

**This version of InspIRCd was released on 2024-11-02.**

- Added `<anticaps:message>` to allow customising the error shown when blocking an overly capitalised message.

- Added `<chanhistory:savefrombots>` to allow omitting messages from bots.

- Added `<hidechans:hideservices>` to allow showing the channel list of services pseudoclients to server operators.

- Added a `/STATS` character to the sslinfo module for viewing ciphersuite info.

- Added a faster method of converting values to a string for types that support it.

- Added advertisement of the preferred extban format for services.

- Added support for matching account bans against the entire nick group.

- Added support for name-only extended bans.

- Added support for named DNSBL replies and the `%reason%` variable in `<dnsbl:reason>`.

- Added support for regex flags to the filter module.

- Added the "opers" option to `<options:modesinlist>` to allow only showing modes to an operator with the `channels/auspex` privilege.

- Added the `%channel%` template variable to the messageflood and repeat error messages.

- Changed the ldap module to use the Windows API for parsing LDAP URLs.

- Changed the minimum value for `<connectban:threshold>` from 1 to 2.

- Developer: added `Time::FromNow` to convert a duration into a future timestamp.

- Developer: moved core numerics back to a global header again.

- Developer: switched several methods to take a string_view instead of a string.

- Fixed "no tags to send" errors on some clients when `<ctctags:allowclientonlytags>` is disabled.

- Fixed extbans silently overwriting extbans with the same character from other modules.

- Fixed potentially generating a malformed permchannels database.

- Fixed rebuilding the 004 numeric when core_info is reloaded.

- Fixed resending the 005 numerics when a user changes connect class.

- Fixed the connectban module potentially generating a Z-line on a malformed CIDR range.

- Fixed users not being removed from the services list when their server stops being a services server.

- Fixed warning users about raw I/O logging after a rehash when started with `--nolog`.

- Improved the restrictchans error message.

- Improved the xline_db log messages.

- Renamed `<chanhistory:bots>` to `<chanhistory:sendtobots>`.

- Reverted omission of services pseudoclients from the user count in `/LUSERS`.

- Updated the location of the InspIRCd IRC channels.

- Updated the Windows dependencies.

### InspIRCd 4.3.0

**This version of InspIRCd was released on 2024-09-07.**
Expand Down
14 changes: 11 additions & 3 deletions docs/4/configuration/_options.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ attributes:
description: |-
Whether to show the full user mask of a topic setter rather than just their nickname.
- name: modesinlist
type: Boolean
type: Text
required: false
default: 'Yes'
default: opers
description: |-
Whether to include the current channel modes in the `/LIST` output.
- name: nosnoticestack
Expand Down Expand Up @@ -139,6 +139,14 @@ details: |+
name | Normalise extbans to use their name.
letter | Normalise extbans to use their letter.
The modesinlist field should be set to one of the following values:
Value | Description
----- | -----------
yes | Show the current channel modes to all users.
opers | [**New in v4.4.0!**](/4/change-log/#inspircd-440) Show the current channel modes to server operators with the `channels/auspex` privilege.
no | Do not show the current channel modes in /LIST.
The splitwhois field should be set to one of the following values:
Value | Description
Expand Down Expand Up @@ -173,7 +181,7 @@ example: |-
nosnoticestack="no"
maskinlist="yes"
maskintopic="yes"
modesinlist="no"
modesinlist="opers"
prefixpart="&quot;"
prefixquit="Quit: "
splitwhois="no"
Expand Down
22 changes: 20 additions & 2 deletions docs/4/modules/anticaps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@ configuration:
description: |-
The `<anticaps>` tag defines settings about how the anticaps module should behave. This tag can only be defined once.
attributes:
- name: message
type: Text
required: false
default: Your message exceeded the %percent%%% upper case character threshold for %channel%
description: |-
The message to use when punishing users that hit the upper case character threshold.
- name: lowercase
type: Text
required: false
Expand All @@ -20,10 +26,22 @@ configuration:
default: ABCDEFGHIJKLMNOPQRSTUVWXYZ
description: |-
A list of characters to treat as upper case letters.
details: ""
details: |-
The message field can contain any of the following template variables:
Variable | Description
------------- | -----------
%channel% | The name of the channel the mode is set on.
%lower% | The number of lower case characters.
%minlen% | The minimum length from the mode value.
%percent% | The percentage from the mode value.
%punctuation% | The number of punctuation (non upper or lower) characters.
%upper% | The number of upper case characters.
example: |-
```xml
<anticaps lowercase="abcdefghijklmnopqrstuvwxyz"
<anticaps message="Your message exceeded the %percent%%% upper case character threshold for %channel%"
lowercase="abcdefghijklmnopqrstuvwxyz"
uppercase="ABCDEFGHIJKLMNOPQRSTUVWXYZ">
```
Expand Down
28 changes: 19 additions & 9 deletions docs/4/modules/chanhistory.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,6 @@ configuration:
description: |-
The `<chanhistory>` tag defines settings about how the chanhistory module should behave. This tag can only be defined once.
attributes:
- name: bots
type: Boolean
required: false
default: 'Yes'
description: |-
Whether users with the bot user mode (+B) will receive history.
- name: maxduration
type: Duration
required: false
Expand All @@ -32,13 +26,29 @@ configuration:
default: 'Yes'
description: |-
Whether to send a notice before sending history.
- name:
bots: 4.0.0 to 4.3.0
sendtobots: since 4.4.0
type: Boolean
required: false
default: 'Yes'
description: |-
Whether users with the bot user mode (+B) will receive history.
- name: savefrombots
type: Boolean
required: false
default: 'Yes'
added: 4.4.0
description: |-
Whether messages from users with the bot user mode (+B) will be saved in the history.
details: ""
example: |-
```xml
<chanhistory bots="yes"
maxduration="4w"
<chanhistory maxduration="4w"
maxlines="50"
prefixmsg="yes">
prefixmsg="yes"
savefrombots="yes"
sendtobots="yes">
```
chmodes:
Expand Down
33 changes: 33 additions & 0 deletions docs/4/modules/dnsbl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ configuration:
%ip% | The IP address of the user.
%network% | **New in v4.1.0!** The name of the IRC network (from `<server:network>`).
%network.url% | **New in v4.1.0!** The name of the IRC network (from `<server:network>`) encoded for use in an URL.
%reason% | **New in v4.4.0!** A human readable description of the DNSBL result (from `<dnsblreply>`).
%result% | The record type returned by the DNSBL.
The type field should be set to one of the following values:
Expand Down Expand Up @@ -174,6 +175,38 @@ configuration:
duration="7d"
reason="Tor exit nodes are not allowed on this network. See https://metrics.torproject.org/rs.html#search/%ip% for more information.">
```
- name: dnsblreply
description: |-
The `<dnsblreply>` tag defines the meaning of a reply from a DNSBL. This tag can be defined as many times as required.
attributes:
- name: name
type: Text
required: true
default: null
description: |-
The name of the DNSBL this reply applies to.
- name: reply
type: Number
required: true
default: null
description: |-
The DNSBL reply that this tag specifies a meaning for.
- name: description
type: Text
required: true
default: null
description: |-
A human readable description of the DNSBL reply.
details: ""
example: |-
Specifies that a result of 42 from the SpamBL DNSBL means that the user is connecting from an infected host.
```xml
<dnsblreply name="SpamBL"
reply="42"
description="Infected host">
```
snomasks:
- char: d
Expand Down
7 changes: 7 additions & 0 deletions docs/4/modules/filter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,12 @@ configuration:
default: null
description: |-
The regular expression engine to use for checking matches.
- name: enableflags
type: Boolean
required: false
default: 'No'
description: |-
Whether to allow regex flags (`/pattern/flags`) to be used in a filter regular expression.
- name: notifyuser
type: Boolean
required: false
Expand Down Expand Up @@ -74,6 +80,7 @@ configuration:
example: |-
```xml
<filteropts engine="glob"
enableflags="yes"
notifyuser="yes"
warnonselfmsg="no"
filename="filters.conf"
Expand Down
2 changes: 1 addition & 1 deletion docs/4/modules/geoclass.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,4 @@ configuration:
stats:
- char: G
description: Lists the number of users currently connected from each country.
description: Lists the number of local users currently connected from each country.
9 changes: 8 additions & 1 deletion docs/4/modules/hidechans.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,17 @@ configuration:
default: 'No'
description: |-
Whether server operators are affected by the user mode.
- name: hideservices
type: Boolean
required: false
default: 'Yes'
description: |-
Whether to hide the channels of services pseudoclients from all users.
details: ""
example: |-
```xml
<hidechans affectsopers="no">
<hidechans affectsopers="no"
hideservices="yes">
```
umodes:
Expand Down
5 changes: 2 additions & 3 deletions docs/4/modules/messageflood.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,9 @@ configuration:
- name: message
type: String
required: false
default: Message flood (trigger is %messages% messages in %duration%)
default: Message flood detected (trigger is %messages% messages in %duration%)
description: |-
The message to use when punishing users that hit the message flood trigger.
- name: notice
type: Decimal
required: false
Expand Down Expand Up @@ -51,7 +50,7 @@ configuration:
example: |-
```xml
<messageflood extended="yes"
message="Message flood (trigger is %lines% messages in %duration%)"
message="Message flood detected (trigger is %lines% messages in %duration%)"
notice="1.0"
privmsg="1.0"
tagmsg="0.2">
Expand Down
Loading

0 comments on commit 10ec4b1

Please sign in to comment.