Merge branch 'u2_10_12_branch' of git://git.code.sf.net/p/undernet-ircu/ircu2
[ircu2.10.12-pk.git] / doc / snomask.html
diff --git a/doc/snomask.html b/doc/snomask.html
new file mode 100644 (file)
index 0000000..237a3be
--- /dev/null
@@ -0,0 +1,221 @@
+<html>\r
+<head>\r
+<title>SNOMASK - Server Notice Masks</title>\r
+</head>\r
+<body bgcolor=#FFFFFF text=#000000 link=#700000 vlink=#404040>\r
+<center>\r
+<font face="arial">\r
+<h2>SNOMASK - Server Notice Masks</h2></font>\r
+<font face="arial" size="2">\r
+Written by <a href="mailto:foxxe@trms.com">Ghostwolf</a> 18th June 1997<br>\r
+Modified with permission by <a href="mailto:loki@undernet.org">loki</a> 12th November 1997\r
+</center>\r
+<p><hr width="80%" noshade>\r
+\r
+<blockquote>\r
+This document (hopefully) gives a brief explanation of the use of server\r
+notice masks new to ircu2.10.00. This mask allows clients to specify which\r
+types of server notices they will receive when usermode +s. The mask may\r
+optionally be omitted, and reasonable defaults will be used by the server.\r
+<p>\r
+Note: the descriptions here will be best understood by those with knowledge\r
+of C syntax. We do not attempt to explain either this or hexadecimal values\r
+in this document, and familiarity with these is assumed of the reader.\r
+<p>\r
+Usage:\r
+</font><kbd><strong>\r
+/mode &lt;nick&gt; +s [+/-][mask]</kbd></strong>\r
+<font face="arial" size="2">\r
+<p>\r
+<center>\r
+<table border=0 cellspacing=5 cellpadding=0 width=85%>\r
+<tr align=center valign=middle>\r
+<th align=left><font face="arial" size="2">Mask</th>\r
+<th align=left>&nbsp;</th>\r
+<th align=left><font face="arial" size="2">Hex value</th>\r
+<th align=left><font face="arial" size="2">Description</th>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">1</td>\r
+<td><font face="arial" size="2">SNO_OLDSNO</td>\r
+<td><font face="arial" size="2">0x1</td>\r
+<td><font face="arial" size="2">/* unsorted old messages */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">2</td>\r
+<td><font face="arial" size="2">SNO_SERVKILL</td>\r
+<td><font face="arial" size="2">0x2</td>\r
+<td><font face="arial" size="2">/* server kills (nick collisions) */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">4</td>\r
+<td><font face="arial" size="2">SNO_OPERKILL</td>\r
+<td><font face="arial" size="2">0x4</td>\r
+<td><font face="arial" size="2">/* oper kills */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">8</td>\r
+<td><font face="arial" size="2">SNO_HACK2</td>\r
+<td><font face="arial" size="2">0x8</td>\r
+<td><font face="arial" size="2">/* desyncs */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">16</td>\r
+<td><font face="arial" size="2">SNO_HACK3\r
+<td><font face="arial" size="2">0x10</td>\r
+<td><font face="arial" size="2">/* temporary desyncs */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">32</td>\r
+<td><font face="arial" size="2">SNO_UNAUTH</td>\r
+<td><font face="arial" size="2">0x20</td>\r
+<td><font face="arial" size="2">/* unauthorized connections */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">64</td>\r
+<td><font face="arial" size="2">SNO_TCPCOMMON</td>\r
+<td><font face="arial" size="2">0x40</td>\r
+<td><font face="arial" size="2">/* common TCP or socket errors */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">128</td>\r
+<td><font face="arial" size="2">SNO_TOOMANY</td>\r
+<td><font face="arial" size="2">0x80</td>\r
+<td><font face="arial" size="2">/* too many connections */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">256</td>\r
+<td><font face="arial" size="2">SNO_HACK4</td>\r
+<td><font face="arial" size="2">0x100</td>\r
+<td><font face="arial" size="2">/* Uworld actions on channels */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">512</td>\r
+<td><font face="arial" size="2">SNO_GLINE</td>\r
+<td><font face="arial" size="2">0x200</td>\r
+<td><font face="arial" size="2">/* glines */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">1024</td>\r
+<td><font face="arial" size="2">SNO_NETWORK</td>\r
+<td><font face="arial" size="2">0x400</td>\r
+<td><font face="arial" size="2">/* net join/break, etc */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">2048</td>\r
+<td><font face="arial" size="2">SNO_IPMISMATCH</td>\r
+<td><font face="arial" size="2">0x800</td>\r
+<td><font face="arial" size="2">/* IP mismatches */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">4096</td>\r
+<td><font face="arial" size="2">SNO_THROTTLE</td>\r
+<td><font face="arial" size="2">0x1000</td>\r
+<td><font face="arial" size="2">/* host throttle add/remove notices */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">8192</td>\r
+<td><font face="arial" size="2">SNO_OLDREALOP</td>\r
+<td><font face="arial" size="2">0x2000</td>\r
+<td><font face="arial" size="2">/* old oper-only messages */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">16384</td>\r
+<td><font face="arial" size="2">SNO_CONNEXIT</td>\r
+<td><font face="arial" size="2">0x4000</td>\r
+<td><font face="arial" size="2">/* client connect/exit (ugh) */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">32768</td>\r
+<td><font face="arial" size="2">SNO_AUTO</td>\r
+<td><font face="arial" size="2">0x8000</td>\r
+<td><font face="arial" size="2">/* AUTO G-Lines */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">65536</td>\r
+<td><font face="arial" size="2">SNO_DEBUG</td>\r
+<td><font face="arial" size="2">0x10000</td>\r
+<td><font face="arial" size="2">/* debugging messages (DEBUGMODE only) */</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">131072</td>\r
+<td><font face="arial" size="2">SNO_AUTH</td>\r
+<td><font face="arial" size="2">0x20000</td>\r
+<td><font face="arial" size="2">/* iauth status messages */</td>\r
+</tr>\r
+</table>\r
+</center>\r
+\r
+<p>\r
+\r
+<table border=0 cellpadding=0 cellspacing=5 width=90%>\r
+<tr>\r
+<td><font face="arial" size="2">standard +s</td>\r
+<td><font face="arial" size="2">SNO_DEFAULT (SNO_NETWORK | SNO_OPERKILL | SNO_GLINE)</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">standard +s when +o/O</td>\r
+<td><font face="arial" size="2">SNO_DEFAULT | SNO_HACK2 | SNO_HACK4 | SNO_THROTTLE | SNO_OLDSNO)</td>\r
+</tr>\r
+<tr>\r
+<td><font face="arial" size="2">only opers may set</td>\r
+<td><font face="arial" size="2">SNO_OPER (SNO_CONNEXIT | SNO_OLDREALOP | SNO_AUTH)</td>\r
+</tr>\r
+</table>\r
+\r
+<p><hr width="80%" noshade>\r
+<h3 align=center>Examples of Usage</h3>\r
+To receive only operkills, use /mode <nick> +s 4<br>\r
+To receive operkills and glines, add the values:\r
+</font>\r
+<blockquote><kbd><strong>\r
+/mode &lt;nick&gt; +s 516</kbd></strong><p>\r
+<font face="arial" size="2">\r
+(512+4=516)\r
+</blockquote>\r
+<p>\r
+If you are already receiving some notices and you wish to add notices of\r
+netjoins/breaks use:\r
+</font>\r
+<blockquote><kbd><strong>\r
+/mode Ghostwolf +s +1024</kbd></strong><p>\r
+</blockquote>\r
+<font face="arial" size="2">\r
+<p>\r
+If you wish to stop receiving netjoin/break notices, but continue to receive\r
+other notices, use:\r
+</font>\r
+<blockquote><kbd><strong>\r
+/mode Ghostwolf +s -1024<br>\r
+ OR<br>\r
+/mode Ghostwolf -s +1024</kbd></strong>\r
+</blockquote>\r
+<font face="arial" size="2">\r
+<p>\r
+A user typing <strong>/mode Ghostwolf +s </strong>will receive netsplits/joins, operkills, and g-lines.<p>\r
+\r
+Opers who are +s will additionally receive HACK notices and anything that\r
+was originally in sendto_ops() and wasn't changed. Only opers can choose to\r
+receive connect/exit notices and anything that originally was in\r
+sendtoreal_ops() and hasn't been changed (connect/exit notices also require\r
+a #define in config.h).\r
+<p>\r
+</font><center>\r
+<hr width=80% noshade><font size=-1><strong>\r
+If you have further questions about server notices (implementation, etc.),<br>\r
+please consult the ircu source code and/or e-mail <a\r
+href="mailto:coder-com@undernet.org">coder-com@undernet.org</a>.\r
+</strong></font></center>\r
+<hr width="80%" noshade><p>\r
+\r
+<p align="right">\r
+<em>\r
+<font face="times new roman" font size="-1">\r
+Return to <a href="http://www.user-com.undernet.org/documents/" target="nfo">main Documents Project page</a><br>\r
+</em>\r
+</font>\r
+\r
+</body>\r
+</html>\r
+\r
+\r