<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>InspIRCd: xline.h Source File</title> <link href="inspircd.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.3.3 --> <div class="qindex"><a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a></div> <h1>xline.h</h1><a href="xline_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span> 00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span> 00003 <span class="comment"> * +------------------------------------+</span> 00004 <span class="comment"> *</span> 00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span> 00006 <span class="comment"> * E-mail:</span> 00007 <span class="comment"> * <brain@chatspike.net></span> 00008 <span class="comment"> * <Craig@chatspike.net></span> 00009 <span class="comment"> * </span> 00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span> 00011 <span class="comment"> * This program is free but copyrighted software; see</span> 00012 <span class="comment"> * the file COPYING for details.</span> 00013 <span class="comment"> *</span> 00014 <span class="comment"> * ---------------------------------------------------</span> 00015 <span class="comment"> */</span> 00016 00017 <span class="preprocessor">#ifndef __XLINE_H</span> 00018 <span class="preprocessor"></span><span class="preprocessor">#define __XLINE_H</span> 00019 <span class="preprocessor"></span> 00020 <span class="comment">// include the common header files</span> 00021 00022 <span class="preprocessor">#include <typeinfo></span> 00023 <span class="preprocessor">#include <iostream></span> 00024 <span class="preprocessor">#include <string></span> 00025 <span class="preprocessor">#include <deque></span> 00026 <span class="preprocessor">#include <sstream></span> 00027 <span class="preprocessor">#include <vector></span> 00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span> 00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span> 00030 00031 <a name="l00034"></a><a class="code" href="classXLine.html">00034</a> <span class="keyword">class </span><a class="code" href="classXLine.html">XLine</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a> 00035 { 00036 <span class="keyword">public</span>: 00037 <a name="l00040"></a><a class="code" href="classXLine.html#o0">00040</a> time_t <a class="code" href="classXLine.html#o0">set_time</a>; 00041 <a name="l00044"></a><a class="code" href="classXLine.html#o1">00044</a> <span class="keywordtype">long</span> <a class="code" href="classXLine.html#o1">duration</a>; 00045 <a name="l00048"></a><a class="code" href="classXLine.html#o2">00048</a> <span class="keywordtype">char</span> <a class="code" href="classXLine.html#o2">source</a>[MAXBUF]; 00049 <a name="l00052"></a><a class="code" href="classXLine.html#o3">00052</a> <span class="keywordtype">char</span> <a class="code" href="classXLine.html#o3">reason</a>[MAXBUF]; 00053 <a name="l00056"></a><a class="code" href="classXLine.html#o4">00056</a> <span class="keywordtype">long</span> <a class="code" href="classXLine.html#o4">n_matches</a>; 00057 00058 }; 00059 <a name="l00062"></a><a class="code" href="classKLine.html">00062</a> <span class="keyword">class </span><a class="code" href="classKLine.html">KLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a> 00063 { 00064 <span class="keyword">public</span>: <a name="l00068"></a><a class="code" href="classKLine.html#o0">00068</a> <span class="keywordtype">char</span> <a class="code" href="classKLine.html#o0">hostmask</a>[MAXBUF]; 00069 }; 00070 <a name="l00073"></a><a class="code" href="classGLine.html">00073</a> <span class="keyword">class </span><a class="code" href="classGLine.html">GLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a> 00074 { 00075 <span class="keyword">public</span>: <a name="l00079"></a><a class="code" href="classGLine.html#o0">00079</a> <span class="keywordtype">char</span> <a class="code" href="classGLine.html#o0">hostmask</a>[MAXBUF]; 00080 }; 00081 <a name="l00084"></a><a class="code" href="classZLine.html">00084</a> <span class="keyword">class </span><a class="code" href="classZLine.html">ZLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a> 00085 { 00086 <span class="keyword">public</span>: <a name="l00090"></a><a class="code" href="classZLine.html#o0">00090</a> <span class="keywordtype">char</span> <a class="code" href="classZLine.html#o0">ipaddr</a>[MAXBUF]; <a name="l00094"></a><a class="code" href="classZLine.html#o1">00094</a> <span class="keywordtype">bool</span> <a class="code" href="classZLine.html#o1">is_global</a>; 00095 }; 00096 <a name="l00099"></a><a class="code" href="classQLine.html">00099</a> <span class="keyword">class </span><a class="code" href="classQLine.html">QLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a> 00100 { 00101 <span class="keyword">public</span>: <a name="l00105"></a><a class="code" href="classQLine.html#o0">00105</a> <span class="keywordtype">char</span> <a class="code" href="classQLine.html#o0">nick</a>[MAXBUF]; <a name="l00109"></a><a class="code" href="classQLine.html#o1">00109</a> <span class="keywordtype">bool</span> <a class="code" href="classQLine.html#o1">is_global</a>; 00110 }; 00111 00112 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a0">read_xline_defaults</a>(); 00113 00114 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a1">add_gline</a>(<span class="keywordtype">long</span> duration, <span class="keywordtype">char</span>* source, <span class="keywordtype">char</span>* reason, <span class="keywordtype">char</span>* hostmask); 00115 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a2">add_qline</a>(<span class="keywordtype">long</span> duration, <span class="keywordtype">char</span>* source, <span class="keywordtype">char</span>* reason, <span class="keywordtype">char</span>* nickname); 00116 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a3">add_zline</a>(<span class="keywordtype">long</span> duration, <span class="keywordtype">char</span>* source, <span class="keywordtype">char</span>* reason, <span class="keywordtype">char</span>* ipaddr); 00117 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a4">add_kline</a>(<span class="keywordtype">long</span> duration, <span class="keywordtype">char</span>* source, <span class="keywordtype">char</span>* reason, <span class="keywordtype">char</span>* hostmask); 00118 00119 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a5">del_gline</a>(<span class="keywordtype">char</span>* hostmask); 00120 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a6">del_qline</a>(<span class="keywordtype">char</span>* nickname); 00121 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a7">del_zline</a>(<span class="keywordtype">char</span>* ipaddr); 00122 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a8">del_kline</a>(<span class="keywordtype">char</span>* hostmask); 00123 00124 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a9">matches_qline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nick); 00125 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a10">matches_gline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host); 00126 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a11">matches_zline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr); 00127 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a12">matches_kline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host); 00128 00129 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a13">expire_lines</a>(); 00130 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a14">apply_lines</a>(); 00131 00132 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a15">stats_k</a>(<a class="code" href="classuserrec.html">userrec</a>* user); 00133 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a16">stats_g</a>(<a class="code" href="classuserrec.html">userrec</a>* user); 00134 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a17">stats_q</a>(<a class="code" href="classuserrec.html">userrec</a>* user); 00135 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a18">stats_z</a>(<a class="code" href="classuserrec.html">userrec</a>* user); 00136 00137 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a19">gline_set_creation_time</a>(<span class="keywordtype">char</span>* host, time_t create_time); 00138 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a20">qline_set_creation_time</a>(<span class="keywordtype">char</span>* nick, time_t create_time); 00139 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a21">zline_set_creation_time</a>(<span class="keywordtype">char</span>* ip, time_t create_time); 00140 00141 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a22">zline_make_global</a>(<span class="keywordtype">char</span>* ipaddr); 00142 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a23">qline_make_global</a>(<span class="keywordtype">char</span>* nickname); 00143 00144 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a24">sync_xlines</a>(<a class="code" href="classserverrec.html">serverrec</a>* serv, <span class="keywordtype">char</span>* tcp_host); 00145 00146 <span class="preprocessor">#endif</span> 00147 <span class="preprocessor"></span> 00148 </pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Mar 25 03:49:29 2005 for InspIRCd by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.3 </small></address> </body> </html>