Documents Project
The Documents Project, formerly known as Doco-Com, is responsible for creating and maintaining useful resource documentation for the Undernet community. Both new and experienced IRC users will find information here on everything from downloading an IRC client to explanation of the various protocols.
Posted on 2nd Feb 2020 19:23:33 in Technical Docs
Written by Ghostwolf (foxxe@wtfs.net) -- 18th June 1997
Modified with permission by loki (loki@undernet.org) -- 12th November 1997
Last Modified by Ghostwolf (foxxe@wtfs.net) -- 22 December 2000
These descriptions are current up to ircu2.10.11 alpha. The most current description of these values can be found in the ircu source code in the file include/client.h
This document (hopefully) gives a brief explanation of the use of server notice masks new to ircu2.10.xx. This mask allows clients to specify which types of server notices they will receive when usermode +s.
The mask may optionally be omitted, and reasonable defaults will be used by the server.
*Note* the descriptions here will be best understood by those with knowledge of C syntax. We do not attempt to explain either this or hexadecimal values in this document and familiarity with these is assumed of the reader.
Usage: /mode +s [+/-][mask]
Mask | Hex value | Description | |
---|---|---|---|
1 | SNO_OLDSNO | 0x1 | /* unsorted old messages */ |
2 | SNO_SERVKILL | 0x2 | /* server kills (nick collisions) */ |
4 | SNO_OPERKILL | 0x4 | /* oper kills */ |
8 | SNO_HACK2 | 0x8 | /* desyncs */ |
16 | SNO_HACK3 | 0x10 | /* temporary desyncs */ |
32 | SNO_UNAUTH | 0x20 | /* unauthorized connections */ |
64 | SNO_TCPCOMMON | 0x40 | /* common TCP or socket errors */ |
128 | SNO_TOOMANY | 0x80 | /* too many connections */ |
256 | SNO_HACK4 | 0x100 | /* Uworld actions on channels */ |
512 | SNO_GLINE | 0x200 | /* glines */ |
1024 | SNO_NETWORK | 0x400 | /* net join/break, etc */ |
2048 | SNO_IPMISMATCH | 0x800 | /* IP mismatches */ |
4096 | SNO_THROTTLE | 0x1000 | /* host throttle add/remove notices */ |
8192 | SNO_OLDREALOP | 0x2000 | /* old oper-only messages */ |
16384 | SNO_CONNEXIT | 0x4000 | /* client connect/exit (ugh) */ |
32768 | SNO_DEBUG | 0x8000 | /* only applies to servers compiled in debug mode (NOT production servers) */ |
standard +s | SNO_DEFAULT (SNO_NETWORK | SNO_OPERKILL | SNO_GLINE) |
standard +s when +o/O | SNOSNO_OPER (SNO_DEFAULT | SNO_HACK2 | SNO_HACK4 | SNO_THROTTLE | SNO_OLDSNO) |
only opers may set | SNO_OPER (SNO_CONNEXIT | SNO_OLDREALOP) |
Examples of usage:
To receive only operkills, use:
/mode +s 4
To receive operkills and glines, add the values:
/mode +s 516 (512+4=516)
If you are already receiving some notices and you wish to add notices of netjoins/breaks use:
/mode Ghostwolf +s +1024
If you wish to stop receiving netjoin/break notices, but continue to receive other notices, use:
/mode Ghostwolf +s -1024 or
/mode Ghostwolf -s +1024
A user doing:
/mode Ghostwolf +s
will receive netsplits/joins, operkills, and g-lines.
Opers who are +s will additionally receive HACK notices and anything that was originally in sendto_ops() and wasn't changed.
Only opers can choose to receive connect/exit notices and anything that originally was in sendtoreal_ops() and hasn't been changed ( connect/exit notices also require a #define in config.h ).
If you have further questions about server notices (implementation, etc.), please consult the ircu source code and/or e-mail coder-com@undernet.org.