Fixed a ban version {} bug, added an aliases/anope.conf, and updated some docs

This commit is contained in:
codemastr 2003-04-15 21:56:24 +00:00
parent c2a4509d9c
commit dd1364321a
5 changed files with 67 additions and 77 deletions

View file

@ -2057,3 +2057,6 @@ seen. gmtime warning still there
by Rocko
- Fix for set::restrict-channelmodes (eating parameters).
- Made it so if someone /who's you and you are +p it doesn't show the channel you are on
- Fixed a ban version {} bug where it would version remote clients
- Added aliases/anope.conf (For Anope IRC Services)
- Updated some documentation

19
aliases/anope.conf Normal file
View file

@ -0,0 +1,19 @@
/* Anope Aliases */
alias nickserv { type services; };
alias ns { nick nickserv; type services; };
alias chanserv { type services; };
alias cs { nick chanserv; type services; };
alias memoserv { type services; };
alias ms { nick memoserv; type services; };
alias operserv { type services; };
alias os { nick operserv; type services; };
alias helpserv { type services; };
alias hs { nick helpserv; type services; };
alias botserv { type services; };
alias bs { nick botserv; type services; };
alias hostserv { type services; };
alias hs { nick hostserv; type services; };
include "aliases/aliases.conf";

View file

@ -21,7 +21,7 @@
<font size="4"><a href="http://www.unrealircd.com">http://www.unrealircd.com</a></font><br>
<font size="4">Version: 3.2</font><br>
<b>Current Version:</b> 3.2 Beta15<br>
<b>Last doc update:</b> 2003-04-13 </div>
<b>Last doc update:</b> 2003-04-15 </div>
<b>Head Coders:</b> Stskeeps / codemastr / Luke / McSkaf / Syzop<br>
<b>Contributors:</b> Zogg / NiQuiL / assyrian / chasm / DrBin / llthangel / Griever / nighthawk<br>
<b>Documentation:</b> CKnight^ / Syzop<br>
@ -30,10 +30,13 @@
must have a compatible browser, which are listed below. Up to date docs are
available @ <a href="http://www.vulnscan.org/UnrealIrcd/unreal32docs.html">http://www.vulnscan.org/UnrealIrcd/unreal32docs.html</a></p>
<p><b>Compatible Browsers: </b><br>
Opera 6.02<br>
Microsoft Internet Explorer 6.X / 5.5<br>
Netscape Navigator 6.X<br>
Lynx (to a point)<br>
<ul>
<li>Opera 6.02
<li>Microsoft Internet Explorer 6.X / 5.5
<li>Netscape Navigator 6.X
<li>Mozilla 1.2.X
<li>Lynx (to a point)
</ul>
</p>
<p><font size="+2"><b>INDEX / TABLE OF CONTENTS</b></font><br>
1. <a href="#IntroductionNotes">Introduction & Notes</a><br>
@ -52,7 +55,8 @@
-- 3.9. <a href="#feature_ssl">SSL</a><br>
-- 3.10. <a href="#feature_ipv6">IPv6</a><br>
-- 3.11. <a href="#feature_ziplinks">Zip links</a><br>
-- 3.12. <a href="#feature_other">Other stuff</a><br>
-- 3.12. <a href="#feature_throttling">Throttling</a><br>
-- 3.13. <a href="#feature_other">Other features</a><br>
4. <a href="#configuringyourunrealircdconf">Configuring your unrealircd.conf
file</a><br>
---4.1. <a href="#configurationfileexplained">Configuration file explained</a><br>
@ -192,8 +196,8 @@ Windows:<br>
This feature is useful to prevent users flooding each other since they can't see the real host/IP.</p>
<p>This is controlled by usermode +x (like: /mode yournick +x), admins can also force +x to be enabled
by default, or make it so users can never do -x.</p>
<p>The cloaked host is generated by some formula which uses 3 "cloak keys", you are required
to set those 3 keys in your config file, they should be 3 random numbers between 10,000 and 4,294,967,295.
<p>The cloaked host is generated by a formula which uses 3 "cloak keys." You are required
to set these 3 keys in your config file, they should be 3 random numbers between 10,000 and 4,294,967,295.
If someone else knows these keys they can decode the cloaked host and discover the real one, that's why you
have to keep them secret. The cloak keys must be the same on all servers on the network.</p>
</div>
@ -236,9 +240,10 @@ Windows:<br>
on oper (set::snomask-on-oper, set::oper::snomask)</p></div>
<p><font size="+2"><b>3.5 - Aliases</b></font><a name="feature_aliases"></a></p><div class="desc">
<p>With aliases you can configure serverside alias commands.
<p>With aliases you can configure server-side alias commands.
You can for example let "/ns identify blah" be forwarded to nickserv (it will be
translated to: privmsg nickserv identify blah).</p>
translated to: privmsg nickserv identify blah). You can even make more complex aliases such as /register can forward to
ChanServ if the first parameter begins with a # and forwarded to NickServ if it doesn't.</p>
<p>Aliases are configured by alias blocks in the configuration file, and you can also include
a file with default aliases for most commonly used services.</p></div>
@ -292,7 +297,12 @@ Windows:<br>
many users, it can help a lot when you are linking since a lot of data is sent about every user/channel/etc.</p>
<p>To compile with zip links support, you need to answer Yes to the zlib question in ./Config and set it in link::options::zip</p></div>
<p><font size="+2"><b>3.12 - Other stuff</b></font><a name="feature_other"></a></p><div class="desc">
<p><font size="+2"><b>3.12 - Throttling</b></font><a name="feature_throttling"></a></p><div class="desc">
<p>Throttling is still considered to be experimental, but it has come a long way. Throttling is a method that allows
you to limit how fast a user can disconnect and then reconnect to your server. Throttling is not enabled by default in
UnrealIRCd, you must open include/config.h and change the #undef THROTTLING to #define THROTTLING.</p></div>
<p><font size="+2"><b>3.13 - Other features</b></font><a name="feature_other"></a></p><div class="desc">
<p>UnrealIRCd has a lot of features so not everything is covered here... You'll find that out by yourself.</p></div>
<p> </p>
@ -305,7 +315,7 @@ Windows:<br>
and check the FAQ before asking for help/reporting a bug.</p></div>
<p><b><font size="+2">4.1 Configuration File Explained</font></b><a name="configurationfileexplained"></a><br><div class="desc">
</p>
<p>The new system uses a block-based system. Each entry, or block, in the new
<p>The new system uses a block-based format. Each entry, or block, in the new
format has a specific format. The format works like:</p>
<pre>
&lt;block-name&gt; &lt;block-value&gt; {
@ -381,7 +391,7 @@ admin {
</pre></p>
<p> </p>
<p>The admin block defines the text displayed in a /admin request. You can specify
as many lines as you want and you they can contain whatever information you
as many lines as you want and they can contain whatever information you
choose, but it is standard to include the admin's nickname and email address
at a minimum. Other information may include any other contact information you
wish to give.</p>
@ -459,7 +469,8 @@ allow {
<p><b>About matching</b><br>
The access control works like this: ip matches OR host matches, so "hostname *@*"; and "ip *@1.2.3.4"
will mean it will always match. Also the allow blocks are read upside down, so you need specific host/ip allow blocks
AFTER your general *@* allow blocks.</p>
AFTER your general *@* allow blocks. Additionally, if you want to setup a block that only matches based on IP, then set
the hostname to something invalid, such as "hostname NOBODY;", this will allow the block to only match based on IP.</p>
<p><b>ip</b><br>
The ip mask is in the form user@ip, user is the ident and often set at *, ip is the ipmask.
Some examples: *@* (from everywhere), *@192.168.* (only from addr's starting with 192.168), etc.</p>
@ -520,7 +531,8 @@ listen &lt;ip:port&gt; {
form listen &lt;ip:port&gt;;.</p>
<p><b>ip and port</b><br>
ip is usually set at * but you can specify an IP here to only bind to that IP.
The port is the port you want to listen on. IPv6 users, see below.</p>
The port is the port you want to listen on. You can also set the port to a range rather than an individual
value. For example, 6660-6669 would listen on ports 6660 through 6669 (inclusive). IPv6 users, see below.</p>
<p><b>Info for IPv6 users</b><br>
If you have an IPv6 enabled server you need to enclose the IP in brackers.
Like [::1]:6667 (listen at localhost on port 6667). If you are using IPv6 and you
@ -545,10 +557,11 @@ listen *:6601 {
clientsonly;
};
};
</pre></p>
<p>Or if there are no options:</p>
<p>listen *:8067;<br>
listen *:6667;</p></div>
listen *:6660-6669;</p></div>
<p><font class="block_section">4.7 - </font><font class="block_name">Oper Block</font>
<font class="block_recommended">RECOMMENDED</font> <font class="block_old">(Previously known as the O:Line)</font><a name="operblock"></a><div class="desc">
</p>
@ -821,55 +834,9 @@ listen *:6601 {
</table>
<p>The oper::swhois directive allows you to add an extra line to an opers whois
information.</p>
<p>The oper::snomask directive allows you to preset an opers service notice mask
on oper up.<br>
Vaild Service Notice Masks (snomask) are:</p>
<table width="75%" border="1">
<tr>
<td width="17%"><b>Snomask Mode</b></td>
<td width="83%"><b>Description</b></td>
</tr>
<tr>
<td>k</td>
<td>See's All the /kill's which are executed</td>
</tr>
<tr>
<td>c</td>
<td>See's All the local connects</td>
</tr>
<tr>
<td>F</td>
<td>Lets you receive Far AND Local Connects</td>
</tr>
<tr>
<td>f</td>
<td>Listens to flood alerts from server</td>
</tr>
<tr>
<td>j</td>
<td>See's misc. messages generated by the server</td>
</tr>
<tr>
<td>v </td>
<td>Lets you receive notices of /vhost usages</td>
</tr>
<tr>
<td>G</td>
<td>Lets you see TKL (G:Lines/shuns) notifies</td>
</tr>
<tr>
<td>e</td>
<td>Can listen to Server messages sent to +e users (eyes)</td>
</tr>
<tr>
<td>n</td>
<td>Lets you see notices when a user changes his/her nickname</td>
</tr>
<tr>
<td>q</td>
<td>Lets you see notices when a user is rejected because of a Q:Line</td>
</tr>
</table>
<p>The oper::snomask directive allows you to preset an oper's server notice mask
on oper up. For a list of available SNOMASKs, see <a href="#feature_snomasks">Section 3.4</a><br>
<p>Example:<br>
<pre>
oper bobsmith {
@ -889,7 +856,7 @@ oper bobsmith {
</pre></p>
<p> </p></div>
<p><font class="block_section">4.8 - </font><font class="block_name">DRpass Block</font>
<font class="block_required">REQUIRED</font> <font class="block_old">(Previously known as the X:Line)</font><a name="drpassblock"></a><div class="desc">
<font class="block_recommended">RECOMMENDED</font> <font class="block_old">(Previously known as the X:Line)</font><a name="drpassblock"></a><div class="desc">
</p>
<p>Syntax:<br>
<pre>
@ -930,6 +897,7 @@ drpass {
<ul>
<li>aliases/ircservices.conf (IRCServices, Daylight)
<li>aliases/epona.conf (Epona)
<li>aliases/anope.conf (Anope)
<li>aliases/auspice.conf (Auspice)
<li>aliases/generic.conf (Magick, Sirius, Wrecked)
<li>aliases/cygnus.conf (Cygnus)
@ -1390,7 +1358,7 @@ vhost {
badword &lt;type&gt; {
word &lt;text-to-match&gt;;
replace &lt;replace-with&gt;;
action &lt;<replace|block>&gt;;
action &lt;replace|block&gt;;
};</pre></p>
<p>The badword block allows you to manipulate the list used for user and channel
mode +G to strip "badwords". The badword:: specifies the type, valid
@ -1761,9 +1729,9 @@ set {
What ip should the scanner bind to before connecting</p>
<p><font class="set">set::scan::message &lt;message&gt;;</font><br>
Put a message that users will see when scanner is scanning</p>
<p><font class="set">set::scan::bantime {time}</font><br>
<p><font class="set">set::scan::bantime &lt;time&gt;;</font><br>
Sets the time of the ban (4d)</p>
<p><font class="set">set::scan::timeout {time}</font><br>
<p><font class="set">set::scan::timeout &lt;time&gt;;</font><br>
How long we wait to see if the host has a proxy (15s)</p>
<p><font class="set">set::ssl::egd &lt;filename&gt;;</font><br>
Specifies that EGD (Entropy Gathering Daemon) support should be enabled. If
@ -1788,17 +1756,17 @@ set {
<p><font class="set">set::throttle::period &lt;timevalue&gt;</font><br>
How long a user must wait before reconnecting more than set::throttle::connections
times.</p>
<p><font class="set">set::throttle::connections &lt;amount&gt;</font><br>
<p><font class="set">set::throttle::connections &lt;amount&gt;;</font><br>
How many times a user must connect with the same host to be throttled.</p>
<p><font class="set">set::anti-flood::unknown-flood-bantime &lt;timevalue&gt;</font><br>
<p><font class="set">set::anti-flood::unknown-flood-bantime &lt;timevalue&gt;;</font><br>
Specifies how long an unknown connection flooder is banned for.</p>
<p><font class="set">set::anti-flood::unknown-flood-amount &ltamount&gt</font><br>
<p><font class="set">set::anti-flood::unknown-flood-amount &lt;amount&gt;;</font><br>
Specifies the amount of data (in KiloBytes) that the unknown connection must send
in order for the user to be killed.</p>
<p><font class="set">set::anti-flood::away-count &lt;amount&gt;</font><br>
<p><font class="set">set::anti-flood::away-count &lt;amount&gt;;</font><br>
Specifies the number of aways a user must execute before flood protection is triggered.
This requires NO_FLOOD_AWAY to be defined.</p>
<p><font class="set">set::anti-flood::away-period &lt;timevalue&gt;</font><br>
<p><font class="set">set::anti-flood::away-period &lt;timevalue&gt;;</font><br>
Specifies the amount of time in which the set::anti-flood::away-count of /aways must be
executed for flood protection to be triggered. This requires NO_FLOOD_AWAY to be defined.</p>
<p></p> </div>

View file

@ -202,7 +202,7 @@ Debug((DEBUG_NOTICE, "NOSPOOF"));
goto temp;
}
sptr->nospoof = 0;
if (USE_BAN_VERSION)
if (USE_BAN_VERSION && MyConnect(sptr))
sendto_one(sptr, ":IRC PRIVMSG %s :\1VERSION\1",
sptr->name);

View file

@ -1764,7 +1764,7 @@ CMD_FUNC(m_nick)
** --must test this and exit m_nick too!!!
*/
#ifndef NOSPOOF
if (USE_BAN_VERSION)
if (USE_BAN_VERSION && MyConnect(sptr))
sendto_one(sptr, ":IRC PRIVMSG %s :\1VERSION\1",
nick);
#endif
@ -1985,7 +1985,7 @@ CMD_FUNC(m_user)
if (sptr->name[0] && (IsServer(cptr) ? 1 : IsNotSpoof(sptr)))
/* NICK and no-spoof already received, now we have USER... */
{
if (USE_BAN_VERSION)
if (USE_BAN_VERSION && MyConnect(sptr))
sendto_one(sptr, ":IRC PRIVMSG %s :\1VERSION\1",
sptr->name);