Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > by-pkgid > 9601c7beb4ff23e834bfa171795ed560 > files > 607

vidalia-0.2.9-1mdv2010.1.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Vidalia: TorEvents Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>TorEvents Class Reference</h1><!-- doxytag: class="TorEvents" -->
<p><code>#include &lt;<a class="el" href="_tor_events_8h_source.html">TorEvents.h</a>&gt;</code></p>

<p><a href="class_tor_events-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a> { <br/>
&nbsp;&nbsp;<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfacd780c024e79d1b356c6338fcbfbb9c6">Unknown</a> =  0, 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa37aa333e6b9acdb8cf240fbafeba4e38">Bandwidth</a> =  (1u &lt;&lt; 0), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa4920e9d8dc81811068c197c2dcb4661a">LogDebug</a> =  (1u &lt;&lt; 1), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfaf829e003d41f5c29746c593273107013">LogInfo</a> =  (1u &lt;&lt; 2), 
<br/>
&nbsp;&nbsp;<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfaf6c5726f1703ac0dbefb3753383d1c54">LogNotice</a> =  (1u &lt;&lt; 3), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfaecfea72c14b492ec436d71991b11a4f4">LogWarn</a> =  (1u &lt;&lt; 4), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa1588b65cd76aad1ada9925be377eee27">LogError</a> =  (1u &lt;&lt; 5), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfaf51a978d8fb4a086d815518b13c6ccc4">CircuitStatus</a> =  (1u &lt;&lt; 6), 
<br/>
&nbsp;&nbsp;<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa92d48f0cdb62ea444713b7574ab31d34">StreamStatus</a> =  (1u &lt;&lt; 7), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa046a2028ee80393d2b895cce20c15038">OrConnStatus</a> =  (1u &lt;&lt; 8), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfad4e1c3f57606b56d335885d3f36bf20c">NewDescriptor</a> =  (1u &lt;&lt; 9), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa4e71b10927d887d682ded74d160a5a2a">AddressMap</a> =  (1u &lt;&lt; 10), 
<br/>
&nbsp;&nbsp;<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa0f4ce116650cb34661bfe23344562765">GeneralStatus</a> =  (1u &lt;&lt; 11), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa5f1d41f1693f31d72e3e6c037cf7ff01">ClientStatus</a> =  (1u &lt;&lt; 12), 
<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bfa1a28286d958ff505ab63722214395e8f">ServerStatus</a> =  (1u &lt;&lt; 13)
<br/>
 }</td></tr>
<tr><td colspan="2"><h2>Signals</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a39a5f40a4793ee05e0622dd781a204d3">logMessage</a> (<a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a> level, const QString &amp;msg)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#afaa9d5d1de4fbdd2236980569c22b3ba">bandwidthUpdate</a> (quint64 bytesReceived, quint64 bytesSent)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a1249b178f2b514979ce5407659cfdd24">streamStatusChanged</a> (const <a class="el" href="class_stream.html">Stream</a> &amp;stream)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#ace5346dc0a16406d1955f785d078df69">circuitStatusChanged</a> (const <a class="el" href="class_circuit.html">Circuit</a> &amp;circuit)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a4a92733016b756111b95e51c335d269c">addressMapped</a> (const QString &amp;from, const QString &amp;to, const QDateTime &amp;expires)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#aafd39f6ef97ff4bc0537776148529606">newDescriptors</a> (const QStringList &amp;ids)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a49355793c98b0bc802be587d7db1a318">circuitEstablished</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a79a575fba25756532a78ab48276c3283">dangerousTorVersion</a> (<a class="el" href="namespacetc.html#a8389db682e80cb6921e26b529e2ec52c">tc::TorVersionStatus</a> reason, const QString &amp;version, const QStringList &amp;recommended)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a77bb1fb761e4ad941a56a046bc0d0cf4">bootstrapStatusChanged</a> (const <a class="el" href="class_bootstrap_status.html">BootstrapStatus</a> &amp;status)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a25fdc7f80b893ecdf9fd66776fd09170">dangerousPort</a> (quint16 port, bool rejected)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a79fded852c2c70fa0c8539b2e9441fc0">socksError</a> (<a class="el" href="namespacetc.html#ab29556af3a71a9c8768ab9ae1e822191">tc::SocksError</a> error, const QString &amp;destination)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a90f62a5621b32c182b2a786807392902">bug</a> (const QString &amp;reason)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a4a7eb62b180f3706301d201fa5f18de4">externalAddressChanged</a> (const QHostAddress &amp;ip, const QString &amp;hostname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a6e7c92749d962b11441563b19d713148">clockSkewed</a> (int skew, const QString &amp;source)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a9598447c031fa8886b71b6d860f098d5">dnsHijacked</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#ac911333c453887fdffd74e2a074864ca">dnsUseless</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a84d5c8946323cdd327a883958fc549de">checkingOrPortReachability</a> (const QHostAddress &amp;ip, quint16 port)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a32a9aaa46971b5f301ad76a68a96803d">orPortReachabilityFinished</a> (const QHostAddress &amp;ip, quint16 port, bool reachable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#ad0f0f00e1cdd9cdfcf65029059ac7f15">checkingDirPortReachability</a> (const QHostAddress &amp;ip, quint16 port)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#ae2cb999a7c9fbbb416cbac396ce9877b">dirPortReachabilityFinished</a> (const QHostAddress &amp;ip, quint16 port, bool reachable)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a0a0344391536bd8757d2a4f3a81a4ab5">serverDescriptorRejected</a> (const QHostAddress &amp;ip, quint16 port, const QString &amp;reason)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a3617c6cc4672f94e11506d4d0fa84db9">serverDescriptorAccepted</a> (const QHostAddress &amp;ip, quint16 port)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a72175cc254e18a1cedb2e0231749645f">serverDescriptorAccepted</a> ()</td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#aad6644a66c82bc64e07f1e4c3a7a3810">Q_DECLARE_FLAGS</a> (Events, <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a7640c5e646ac7c699995b2e046028749">TorEvents</a> (QObject *parent=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a0b5f60ca782a3d0af243ce77c7189379">handleEvent</a> (const <a class="el" href="class_control_reply.html">ControlReply</a> &amp;reply)</td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a8c62c55a950118cdeba5a7de34ac157b">toString</a> (<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">TorEvents::Event</a> e)</td></tr>
<tr><td colspan="2"><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a7153bf04e68d4f74e16efe2c9dcb1787">EVENT_MIN</a> = TorEvents::Bandwidth</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a49369e2a61ceae0feffd8987c40d8d84">EVENT_MAX</a> = TorEvents::ServerStatus</td></tr>
<tr><td colspan="2"><h2>Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a789ec0c0e8662d8b05b0bb3e85333464">handleBandwidthUpdate</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#ae7ae522be9c3671f3ea705fb436b0b1e">handleCircuitStatus</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a94672855e722c561fff41d25b2fcddfe">handleStreamStatus</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#ae83a736104b606ccad26daaa657b4ae2">handleLogMessage</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#affc963ec10fddf988ead655cc5e15105">handleOrConnStatus</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a7ace5ed4fcac504482c18f63b1e21348">handleNewDescriptor</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a162d8b646b47cc3f66d3db437d103bca">handleAddressMap</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#aef7e7863cf6d8ce36018bbdccca3a1f8">handleStatusEvent</a> (<a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a> type, const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a2289790fffbb6b224a135359d337a8dc">handleGeneralStatusEvent</a> (<a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a> severity, const QString &amp;action, const QHash&lt; QString, QString &gt; &amp;args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a3a7aad7a92cf95b351712af01649a636">handleClientStatusEvent</a> (<a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a> severity, const QString &amp;action, const QHash&lt; QString, QString &gt; &amp;args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#afbbd10a91a6a7b71a7b40ef4194f35fa">handleServerStatusEvent</a> (<a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a> severity, const QString &amp;action, const QHash&lt; QString, QString &gt; &amp;args)</td></tr>
<tr><td colspan="2"><h2>Static Private Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a6f2415a207877518622e3a4c3259b571">parseEventType</a> (const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;line)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#aab44fb9ba9b80d85b95ebe7ac9bc25f9">toTorEvent</a> (const QString &amp;event)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static QPair&lt; QHostAddress, <br class="typebreak"/>
quint16 &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_tor_events.html#a50b675f00d56916ed7997191ca3d06cb">splitAddress</a> (const QString &amp;address)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition at line <a class="el" href="_tor_events_8h_source.html#l00038">38</a> of file <a class="el" href="_tor_events_8h_source.html">TorEvents.h</a>.</p>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a08aed30fd27832e89f96114617da72bf"></a><!-- doxytag: member="TorEvents::Event" ref="a08aed30fd27832e89f96114617da72bf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">TorEvents::Event</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Asynchronous events sent from Tor to the controller </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfacd780c024e79d1b356c6338fcbfbb9c6"></a><!-- doxytag: member="Unknown" ref="a08aed30fd27832e89f96114617da72bfacd780c024e79d1b356c6338fcbfbb9c6" args="" -->Unknown</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa37aa333e6b9acdb8cf240fbafeba4e38"></a><!-- doxytag: member="Bandwidth" ref="a08aed30fd27832e89f96114617da72bfa37aa333e6b9acdb8cf240fbafeba4e38" args="" -->Bandwidth</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa4920e9d8dc81811068c197c2dcb4661a"></a><!-- doxytag: member="LogDebug" ref="a08aed30fd27832e89f96114617da72bfa4920e9d8dc81811068c197c2dcb4661a" args="" -->LogDebug</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfaf829e003d41f5c29746c593273107013"></a><!-- doxytag: member="LogInfo" ref="a08aed30fd27832e89f96114617da72bfaf829e003d41f5c29746c593273107013" args="" -->LogInfo</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfaf6c5726f1703ac0dbefb3753383d1c54"></a><!-- doxytag: member="LogNotice" ref="a08aed30fd27832e89f96114617da72bfaf6c5726f1703ac0dbefb3753383d1c54" args="" -->LogNotice</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfaecfea72c14b492ec436d71991b11a4f4"></a><!-- doxytag: member="LogWarn" ref="a08aed30fd27832e89f96114617da72bfaecfea72c14b492ec436d71991b11a4f4" args="" -->LogWarn</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa1588b65cd76aad1ada9925be377eee27"></a><!-- doxytag: member="LogError" ref="a08aed30fd27832e89f96114617da72bfa1588b65cd76aad1ada9925be377eee27" args="" -->LogError</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfaf51a978d8fb4a086d815518b13c6ccc4"></a><!-- doxytag: member="CircuitStatus" ref="a08aed30fd27832e89f96114617da72bfaf51a978d8fb4a086d815518b13c6ccc4" args="" -->CircuitStatus</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa92d48f0cdb62ea444713b7574ab31d34"></a><!-- doxytag: member="StreamStatus" ref="a08aed30fd27832e89f96114617da72bfa92d48f0cdb62ea444713b7574ab31d34" args="" -->StreamStatus</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa046a2028ee80393d2b895cce20c15038"></a><!-- doxytag: member="OrConnStatus" ref="a08aed30fd27832e89f96114617da72bfa046a2028ee80393d2b895cce20c15038" args="" -->OrConnStatus</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfad4e1c3f57606b56d335885d3f36bf20c"></a><!-- doxytag: member="NewDescriptor" ref="a08aed30fd27832e89f96114617da72bfad4e1c3f57606b56d335885d3f36bf20c" args="" -->NewDescriptor</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa4e71b10927d887d682ded74d160a5a2a"></a><!-- doxytag: member="AddressMap" ref="a08aed30fd27832e89f96114617da72bfa4e71b10927d887d682ded74d160a5a2a" args="" -->AddressMap</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa0f4ce116650cb34661bfe23344562765"></a><!-- doxytag: member="GeneralStatus" ref="a08aed30fd27832e89f96114617da72bfa0f4ce116650cb34661bfe23344562765" args="" -->GeneralStatus</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa5f1d41f1693f31d72e3e6c037cf7ff01"></a><!-- doxytag: member="ClientStatus" ref="a08aed30fd27832e89f96114617da72bfa5f1d41f1693f31d72e3e6c037cf7ff01" args="" -->ClientStatus</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a08aed30fd27832e89f96114617da72bfa1a28286d958ff505ab63722214395e8f"></a><!-- doxytag: member="ServerStatus" ref="a08aed30fd27832e89f96114617da72bfa1a28286d958ff505ab63722214395e8f" args="" -->ServerStatus</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_tor_events_8h_source.html#l00044">44</a> of file <a class="el" href="_tor_events_8h_source.html">TorEvents.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7640c5e646ac7c699995b2e046028749"></a><!-- doxytag: member="TorEvents::TorEvents" ref="a7640c5e646ac7c699995b2e046028749" args="(QObject *parent=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TorEvents::TorEvents </td>
          <td>(</td>
          <td class="paramtype">QObject *&nbsp;</td>
          <td class="paramname"> <em>parent</em> = <code>0</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Default Constructor</p>
<p>Default constructor </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00035">35</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a4a92733016b756111b95e51c335d269c"></a><!-- doxytag: member="TorEvents::addressMapped" ref="a4a92733016b756111b95e51c335d269c" args="(const QString &amp;from, const QString &amp;to, const QDateTime &amp;expires)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::addressMapped </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QDateTime &amp;&nbsp;</td>
          <td class="paramname"> <em>expires</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor has mapped the address <b>from</b> to the address <b>to</b>. <b>expires</b> indicates the time at which when the address mapping will no longer be considered valid. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00267">handleAddressMap()</a>.</p>

</div>
</div>
<a class="anchor" id="afaa9d5d1de4fbdd2236980569c22b3ba"></a><!-- doxytag: member="TorEvents::bandwidthUpdate" ref="afaa9d5d1de4fbdd2236980569c22b3ba" args="(quint64 bytesReceived, quint64 bytesSent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::bandwidthUpdate </td>
          <td>(</td>
          <td class="paramtype">quint64&nbsp;</td>
          <td class="paramname"> <em>bytesReceived</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint64&nbsp;</td>
          <td class="paramname"> <em>bytesSent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor sends a bandwidth usage update (roughly once every second). <b>bytesReceived</b> is the number of bytes read by Tor over the previous second and <b>bytesWritten</b> is the number of bytes sent over the same interval. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00161">handleBandwidthUpdate()</a>.</p>

</div>
</div>
<a class="anchor" id="a77bb1fb761e4ad941a56a046bc0d0cf4"></a><!-- doxytag: member="TorEvents::bootstrapStatusChanged" ref="a77bb1fb761e4ad941a56a046bc0d0cf4" args="(const BootstrapStatus &amp;status)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::bootstrapStatusChanged </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_bootstrap_status.html">BootstrapStatus</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>status</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted during Tor's startup process to indicate how far in its bootstrapping process it has progressed. <b>status</b> may indicate the current bootstrapping stage or an error during bootstrapping. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00354">handleClientStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a90f62a5621b32c182b2a786807392902"></a><!-- doxytag: member="TorEvents::bug" ref="a90f62a5621b32c182b2a786807392902" args="(const QString &amp;reason)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::bug </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>reason</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor has encountered an internal bug. <b>reason</b> is Tor's description of the bug. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00322">handleGeneralStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="ad0f0f00e1cdd9cdfcf65029059ac7f15"></a><!-- doxytag: member="TorEvents::checkingDirPortReachability" ref="ad0f0f00e1cdd9cdfcf65029059ac7f15" args="(const QHostAddress &amp;ip, quint16 port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::checkingDirPortReachability </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Indicates Tor has started testing the reachability of its directory port using the IP address <b>ip</b> and port <b>port</b>. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a84d5c8946323cdd327a883958fc549de"></a><!-- doxytag: member="TorEvents::checkingOrPortReachability" ref="a84d5c8946323cdd327a883958fc549de" args="(const QHostAddress &amp;ip, quint16 port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::checkingOrPortReachability </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Indicates Tor has started testing the reachability of its OR port using the IP address <b>ip</b> and port <b>port</b>. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a49355793c98b0bc802be587d7db1a318"></a><!-- doxytag: member="TorEvents::circuitEstablished" ref="a49355793c98b0bc802be587d7db1a318" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::circuitEstablished </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Indicates Tor has been able to successfully establish one or more circuits. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00354">handleClientStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="ace5346dc0a16406d1955f785d078df69"></a><!-- doxytag: member="TorEvents::circuitStatusChanged" ref="ace5346dc0a16406d1955f785d078df69" args="(const Circuit &amp;circuit)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::circuitStatusChanged </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_circuit.html">Circuit</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>circuit</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when the circuit status of <b>circuit</b> has changed. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00185">handleCircuitStatus()</a>.</p>

</div>
</div>
<a class="anchor" id="a6e7c92749d962b11441563b19d713148"></a><!-- doxytag: member="TorEvents::clockSkewed" ref="a6e7c92749d962b11441563b19d713148" args="(int skew, const QString &amp;source)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::clockSkewed </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>skew</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>source</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Indicates that Tor has determined the client's clock is potentially skewed by <b>skew</b> seconds relative to <b>source</b>. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00322">handleGeneralStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a25fdc7f80b893ecdf9fd66776fd09170"></a><!-- doxytag: member="TorEvents::dangerousPort" ref="a25fdc7f80b893ecdf9fd66776fd09170" args="(quint16 port, bool rejected)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::dangerousPort </td>
          <td>(</td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>rejected</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when the user attempts to establish a connection to some destination on port <b>port</b>, which is a port known to use plaintext connections (as determined by Tor's WarnPlaintextPorts and RejectPlaintextPorts torrc options). <b>rejected</b> indicates whether Tor rejected the connection or permitted it to connect anyway. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00354">handleClientStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a79a575fba25756532a78ab48276c3283"></a><!-- doxytag: member="TorEvents::dangerousTorVersion" ref="a79a575fba25756532a78ab48276c3283" args="(tc::TorVersionStatus reason, const QString &amp;version, const QStringList &amp;recommended)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::dangerousTorVersion </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacetc.html#a8389db682e80cb6921e26b529e2ec52c">tc::TorVersionStatus</a>&nbsp;</td>
          <td class="paramname"> <em>reason</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>version</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QStringList &amp;&nbsp;</td>
          <td class="paramname"> <em>recommended</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Indicates that Tor has decided the user's Tor software <b>version</b> is no longer recommended for some <b>reason</b>. <b>recommended</b> is a list of Tor software versions that are considered current. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00322">handleGeneralStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="ae2cb999a7c9fbbb416cbac396ce9877b"></a><!-- doxytag: member="TorEvents::dirPortReachabilityFinished" ref="ae2cb999a7c9fbbb416cbac396ce9877b" args="(const QHostAddress &amp;ip, quint16 port, bool reachable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::dirPortReachabilityFinished </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>reachable</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Tor has completed testing the reachability of its directory port using the IP address <b>ip</b> and port <b>port</b>. If the user's directory port was reachable, <b>reachable</b> will be set to true. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a9598447c031fa8886b71b6d860f098d5"></a><!-- doxytag: member="TorEvents::dnsHijacked" ref="a9598447c031fa8886b71b6d860f098d5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::dnsHijacked </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor determines that the user's DNS provider is providing an address for non-existent domains when it should really be saying "NXDOMAIN". </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="ac911333c453887fdffd74e2a074864ca"></a><!-- doxytag: member="TorEvents::dnsUseless" ref="ac911333c453887fdffd74e2a074864ca" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::dnsUseless </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor determines that the user's DNS provider is providing a hijacked address even for well-known websites. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a4a7eb62b180f3706301d201fa5f18de4"></a><!-- doxytag: member="TorEvents::externalAddressChanged" ref="a4a7eb62b180f3706301d201fa5f18de4" args="(const QHostAddress &amp;ip, const QString &amp;hostname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::externalAddressChanged </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>hostname</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor decides the client's external IP address has changed to <b>ip</b>. If <b>hostname</b> is non-empty, Tor obtained the new value for <b>ip</b> by resolving <b>hostname</b>. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a162d8b646b47cc3f66d3db437d103bca"></a><!-- doxytag: member="TorEvents::handleAddressMap" ref="a162d8b646b47cc3f66d3db437d103bca" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleAddressMap </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handles a new or updated address map event.</p>
<p>Handles a new or updated address mapping event. The format for event messages of this type is:</p>
<p>"650" SP "ADDRMAP" SP Address SP Address SP Expiry Expiry = DQUOTE ISOTime DQUOTE / "NEVER"</p>
<p>Expiry is expressed as the local time (rather than GMT). </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00267">267</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="class_tor_events.html#a4a92733016b756111b95e51c335d269c">addressMapped()</a>, <a class="el" href="_address_map_8cpp_source.html#l00024">DATE_FMT</a>, and <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a789ec0c0e8662d8b05b0bb3e85333464"></a><!-- doxytag: member="TorEvents::handleBandwidthUpdate" ref="a789ec0c0e8662d8b05b0bb3e85333464" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleBandwidthUpdate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handle a bandwidth update event</p>
<p>Handle a bandwidth update event, to inform the controller of the bandwidth used in the last second. The format of this message is:</p>
<p>"650" SP "BW" SP BytesRead SP BytesWritten BytesRead = 1*DIGIT BytesWritten = 1*DIGIT </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00161">161</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="class_tor_events.html#afaa9d5d1de4fbdd2236980569c22b3ba">bandwidthUpdate()</a>, and <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="ae7ae522be9c3671f3ea705fb436b0b1e"></a><!-- doxytag: member="TorEvents::handleCircuitStatus" ref="ae7ae522be9c3671f3ea705fb436b0b1e" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleCircuitStatus </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handle a circuit status event</p>
<p>Handle a circuit status event. The format of this message is:</p>
<p>"650" SP "CIRC" SP CircuitID SP CircStatus SP Path CircStatus = "LAUNCHED" / ; circuit ID assigned to new circuit "BUILT" / ; all hops finished, can now accept streams "EXTENDED" / ; one more hop has been completed "FAILED" / ; circuit closed (was not built) "CLOSED" ; circuit closed (was built) Path = ServerID *("," ServerID) </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00185">185</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="class_tor_events.html#ace5346dc0a16406d1955f785d078df69">circuitStatusChanged()</a>, <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>, and <a class="el" href="html_8cpp_source.html#l00033">i()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a3a7aad7a92cf95b351712af01649a636"></a><!-- doxytag: member="TorEvents::handleClientStatusEvent" ref="a3a7aad7a92cf95b351712af01649a636" args="(tc::Severity severity, const QString &amp;action, const QHash&lt; QString, QString &gt; &amp;args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleClientStatusEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a>&nbsp;</td>
          <td class="paramname"> <em>severity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>action</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QHash&lt; QString, QString &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>args</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Parses and posts a Tor client status event.</p>
<p>Parses and emits a Tor client status event. </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00354">354</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_bootstrap_status_8cpp_source.html#l00080">BootstrapStatus::actionFromString()</a>, <a class="el" href="tcglobal_8h_source.html#l00083">tc::BadSocksHostnameError</a>, <a class="el" href="class_tor_events.html#a77bb1fb761e4ad941a56a046bc0d0cf4">bootstrapStatusChanged()</a>, <a class="el" href="class_tor_events.html#a49355793c98b0bc802be587d7db1a318">circuitEstablished()</a>, <a class="el" href="namespacetc.html#abebccd78ae0875fead37fd92936b465d">tc::connectionStatusReasonFromString()</a>, <a class="el" href="class_tor_events.html#a25fdc7f80b893ecdf9fd66776fd09170">dangerousPort()</a>, <a class="el" href="tcglobal_8h_source.html#l00081">tc::DangerousSocksTypeError</a>, <a class="el" href="class_tor_events.html#a79fded852c2c70fa0c8539b2e9441fc0">socksError()</a>, <a class="el" href="_bootstrap_status_8cpp_source.html#l00048">BootstrapStatus::statusFromString()</a>, and <a class="el" href="tcglobal_8h_source.html#l00082">tc::UnknownSocksProtocolError</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00292">handleStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a0b5f60ca782a3d0af243ce77c7189379"></a><!-- doxytag: member="TorEvents::handleEvent" ref="a0b5f60ca782a3d0af243ce77c7189379" args="(const ControlReply &amp;reply)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleEvent </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_control_reply.html">ControlReply</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>reply</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Parses an event message and emits the proper signal</p>
<p>Handles an event message from Tor. An event message can potentially have more than one line, so we will iterate through them all and dispatch the necessary events. </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00125">125</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_tor_events_8h_source.html#l00046">Bandwidth</a>, <a class="el" href="_tor_events_8h_source.html#l00052">CircuitStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00058">ClientStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00057">GeneralStatus</a>, <a class="el" href="_control_reply_8cpp_source.html#l00041">ControlReply::getLines()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00267">handleAddressMap()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00161">handleBandwidthUpdate()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00185">handleCircuitStatus()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00234">handleLogMessage()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00251">handleNewDescriptor()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00292">handleStatusEvent()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00214">handleStreamStatus()</a>, <a class="el" href="_tor_events_8h_source.html#l00047">LogDebug</a>, <a class="el" href="_tor_events_8h_source.html#l00051">LogError</a>, <a class="el" href="_tor_events_8h_source.html#l00048">LogInfo</a>, <a class="el" href="_tor_events_8h_source.html#l00049">LogNotice</a>, <a class="el" href="_tor_events_8h_source.html#l00050">LogWarn</a>, <a class="el" href="_tor_events_8h_source.html#l00055">NewDescriptor</a>, <a class="el" href="_tor_events_8cpp_source.html#l00114">parseEventType()</a>, <a class="el" href="_tor_events_8h_source.html#l00059">ServerStatus</a>, and <a class="el" href="_tor_events_8h_source.html#l00053">StreamStatus</a>.</p>

<p>Referenced by <a class="el" href="_control_connection_8cpp_source.html#l00251">ControlConnection::onReadyRead()</a>.</p>

</div>
</div>
<a class="anchor" id="a2289790fffbb6b224a135359d337a8dc"></a><!-- doxytag: member="TorEvents::handleGeneralStatusEvent" ref="a2289790fffbb6b224a135359d337a8dc" args="(tc::Severity severity, const QString &amp;action, const QHash&lt; QString, QString &gt; &amp;args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleGeneralStatusEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a>&nbsp;</td>
          <td class="paramname"> <em>severity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>action</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QHash&lt; QString, QString &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>args</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Parses and posts a general Tor status event.</p>
<p>Parses and emits a general Tor status event. </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00322">322</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="class_tor_events.html#a90f62a5621b32c182b2a786807392902">bug()</a>, <a class="el" href="class_tor_events.html#a6e7c92749d962b11441563b19d713148">clockSkewed()</a>, <a class="el" href="class_tor_events.html#a79a575fba25756532a78ab48276c3283">dangerousTorVersion()</a>, <a class="el" href="tcglobal_8h_source.html#l00090">tc::NewTorVersion</a>, <a class="el" href="tcglobal_8h_source.html#l00088">tc::ObsoleteTorVersion</a>, and <a class="el" href="tcglobal_8h_source.html#l00089">tc::UnrecommendedTorVersion</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00292">handleStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="ae83a736104b606ccad26daaa657b4ae2"></a><!-- doxytag: member="TorEvents::handleLogMessage" ref="ae83a736104b606ccad26daaa657b4ae2" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleLogMessage </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handle a log message event</p>
<p>Handle a log message event. The format of this message is: The syntax is:</p>
<p>"650" SP Severity SP ReplyText or "650+" Severity CRLF Data Severity = "DEBUG" / "INFO" / "NOTICE" / "WARN"/ "ERR" </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00234">234</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_reply_line_8cpp_source.html#l00079">ReplyLine::getData()</a>, <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>, <a class="el" href="html_8cpp_source.html#l00033">i()</a>, <a class="el" href="class_tor_events.html#a39a5f40a4793ee05e0622dd781a204d3">logMessage()</a>, and <a class="el" href="namespacetc.html#ab895ea051eb9251ab84ade452579b981">tc::severityFromString()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a7ace5ed4fcac504482c18f63b1e21348"></a><!-- doxytag: member="TorEvents::handleNewDescriptor" ref="a7ace5ed4fcac504482c18f63b1e21348" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleNewDescriptor </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handles a new list of descriptors event.</p>
<p>Handles a new descriptor event. The format for event messages of this type is:</p>
<p>"650" SP "NEWDESC" 1*(SP ServerID) </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00251">251</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>, and <a class="el" href="class_tor_events.html#aafd39f6ef97ff4bc0537776148529606">newDescriptors()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="affc963ec10fddf988ead655cc5e15105"></a><!-- doxytag: member="TorEvents::handleOrConnStatus" ref="affc963ec10fddf988ead655cc5e15105" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleOrConnStatus </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handle an OR connection status event. </p>

</div>
</div>
<a class="anchor" id="afbbd10a91a6a7b71a7b40ef4194f35fa"></a><!-- doxytag: member="TorEvents::handleServerStatusEvent" ref="afbbd10a91a6a7b71a7b40ef4194f35fa" args="(tc::Severity severity, const QString &amp;action, const QHash&lt; QString, QString &gt; &amp;args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleServerStatusEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a>&nbsp;</td>
          <td class="paramname"> <em>severity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>action</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QHash&lt; QString, QString &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>args</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Parses and posts a Tor server status event.</p>
<p>Parses and emits a Tor server status event. </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00385">385</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="class_tor_events.html#ad0f0f00e1cdd9cdfcf65029059ac7f15">checkingDirPortReachability()</a>, <a class="el" href="class_tor_events.html#a84d5c8946323cdd327a883958fc549de">checkingOrPortReachability()</a>, <a class="el" href="class_tor_events.html#ae2cb999a7c9fbbb416cbac396ce9877b">dirPortReachabilityFinished()</a>, <a class="el" href="class_tor_events.html#a9598447c031fa8886b71b6d860f098d5">dnsHijacked()</a>, <a class="el" href="class_tor_events.html#ac911333c453887fdffd74e2a074864ca">dnsUseless()</a>, <a class="el" href="class_tor_events.html#a4a7eb62b180f3706301d201fa5f18de4">externalAddressChanged()</a>, <a class="el" href="class_tor_events.html#a32a9aaa46971b5f301ad76a68a96803d">orPortReachabilityFinished()</a>, <a class="el" href="class_tor_events.html#a72175cc254e18a1cedb2e0231749645f">serverDescriptorAccepted()</a>, <a class="el" href="class_tor_events.html#a0a0344391536bd8757d2a4f3a81a4ab5">serverDescriptorRejected()</a>, and <a class="el" href="_tor_events_8cpp_source.html#l00444">splitAddress()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00292">handleStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="aef7e7863cf6d8ce36018bbdccca3a1f8"></a><!-- doxytag: member="TorEvents::handleStatusEvent" ref="aef7e7863cf6d8ce36018bbdccca3a1f8" args="(Event type, const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleStatusEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>&nbsp;</td>
          <td class="paramname"> <em>e</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handles a Tor status event.</p>
<p>Handles a Tor status event. The format for event messages of this type is:</p>
<p>"650" SP StatusType SP StatusSeverity SP StatusAction [SP StatusArguments] CRLF</p>
<p>StatusType = "STATUS_GENERAL" / "STATUS_CLIENT" / "STATUS_SERVER" StatusSeverity = "NOTICE" / "WARN" / "ERR" StatusAction = 1*ALPHA StatusArguments = StatusArgument *(SP StatusArgument) StatusArgument = StatusKeyword '=' StatusValue StatusKeyword = 1*(ALNUM / "_") StatusValue = 1*(ALNUM / '_') / QuotedString </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00292">292</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_tor_events_8h_source.html#l00058">ClientStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00057">GeneralStatus</a>, <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00354">handleClientStatusEvent()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00322">handleGeneralStatusEvent()</a>, <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>, <a class="el" href="_tor_events_8h_source.html#l00059">ServerStatus</a>, <a class="el" href="namespacetc.html#ab895ea051eb9251ab84ade452579b981">tc::severityFromString()</a>, and <a class="el" href="stringutil_8cpp_source.html#l00170">string_parse_keyvals()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a94672855e722c561fff41d25b2fcddfe"></a><!-- doxytag: member="TorEvents::handleStreamStatus" ref="a94672855e722c561fff41d25b2fcddfe" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::handleStreamStatus </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handle a stream status event</p>
<p>Handle a stream status event. The format of this message is:</p>
<p>"650" SP "STREAM" SP StreamID SP StreamStatus SP CircID SP Target SP StreamStatus = "NEW" / ; New request to connect "NEWRESOLVE" / ; New request to resolve an address "SENTCONNECT" / ; Sent a connect cell along a circuit "SENTRESOLVE" / ; Sent a resolve cell along a circuit "SUCCEEDED" / ; Received a reply; stream established "FAILED" / ; <a class="el" href="class_stream.html">Stream</a> failed and not retriable. "CLOSED" / ; <a class="el" href="class_stream.html">Stream</a> closed "DETACHED" ; Detached from circuit; still retriable. Target = Address ":" Port</p>
<p>If the circuit ID is 0, then the stream is unattached. </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00214">214</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_stream_8cpp_source.html#l00064">Stream::fromString()</a>, <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>, <a class="el" href="html_8cpp_source.html#l00033">i()</a>, <a class="el" href="_stream_8cpp_source.html#l00147">Stream::isValid()</a>, and <a class="el" href="class_tor_events.html#a1249b178f2b514979ce5407659cfdd24">streamStatusChanged()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a39a5f40a4793ee05e0622dd781a204d3"></a><!-- doxytag: member="TorEvents::logMessage" ref="a39a5f40a4793ee05e0622dd781a204d3" args="(tc::Severity level, const QString &amp;msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::logMessage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacetc.html#abb893107129c283d2eb0238e46eb3d4c">tc::Severity</a>&nbsp;</td>
          <td class="paramname"> <em>level</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>msg</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor writes the message <b>msg</b> to the control port with message severity <b>level</b>. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00234">handleLogMessage()</a>.</p>

</div>
</div>
<a class="anchor" id="aafd39f6ef97ff4bc0537776148529606"></a><!-- doxytag: member="TorEvents::newDescriptors" ref="aafd39f6ef97ff4bc0537776148529606" args="(const QStringList &amp;ids)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::newDescriptors </td>
          <td>(</td>
          <td class="paramtype">const QStringList &amp;&nbsp;</td>
          <td class="paramname"> <em>ids</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor has received one or more new router descriptors. <b>ids</b> contains a list of digests of the new descriptors. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00251">handleNewDescriptor()</a>.</p>

</div>
</div>
<a class="anchor" id="a32a9aaa46971b5f301ad76a68a96803d"></a><!-- doxytag: member="TorEvents::orPortReachabilityFinished" ref="a32a9aaa46971b5f301ad76a68a96803d" args="(const QHostAddress &amp;ip, quint16 port, bool reachable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::orPortReachabilityFinished </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>reachable</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Tor has completed testing the reachability of its OR port using the IP address <b>ip</b> and port <b>port</b>. If the user's OR port was reachable, <b>reachable</b> will be set to true. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a6f2415a207877518622e3a4c3259b571"></a><!-- doxytag: member="TorEvents::parseEventType" ref="a6f2415a207877518622e3a4c3259b571" args="(const ReplyLine &amp;line)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">TorEvents::Event</a> TorEvents::parseEventType </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_reply_line.html">ReplyLine</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>line</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static, private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Parses the event type from the event message</p>
<p>Parse the event type out of a message line and return the corresponding Event enum value </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00114">114</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_reply_line_8cpp_source.html#l00065">ReplyLine::getMessage()</a>, <a class="el" href="html_8cpp_source.html#l00033">i()</a>, and <a class="el" href="_tor_events_8cpp_source.html#l00076">toTorEvent()</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00125">handleEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="aad6644a66c82bc64e07f1e4c3a7a3810"></a><!-- doxytag: member="TorEvents::Q_DECLARE_FLAGS" ref="aad6644a66c82bc64e07f1e4c3a7a3810" args="(Events, Event)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TorEvents::Q_DECLARE_FLAGS </td>
          <td>(</td>
          <td class="paramtype">Events&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a>&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a72175cc254e18a1cedb2e0231749645f"></a><!-- doxytag: member="TorEvents::serverDescriptorAccepted" ref="a72175cc254e18a1cedb2e0231749645f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::serverDescriptorAccepted </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when at least one directory authority has accepted the user's server descriptor. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a3617c6cc4672f94e11506d4d0fa84db9"></a><!-- doxytag: member="TorEvents::serverDescriptorAccepted" ref="a3617c6cc4672f94e11506d4d0fa84db9" args="(const QHostAddress &amp;ip, quint16 port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::serverDescriptorAccepted </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when the directory authority with IP address <b>ip</b> and port <b>port</b> accepted the user's server descriptor. </p>

</div>
</div>
<a class="anchor" id="a0a0344391536bd8757d2a4f3a81a4ab5"></a><!-- doxytag: member="TorEvents::serverDescriptorRejected" ref="a0a0344391536bd8757d2a4f3a81a4ab5" args="(const QHostAddress &amp;ip, quint16 port, const QString &amp;reason)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::serverDescriptorRejected </td>
          <td>(</td>
          <td class="paramtype">const QHostAddress &amp;&nbsp;</td>
          <td class="paramname"> <em>ip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">quint16&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>reason</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when the directory authority with IP address <b>ip</b> and port <b>port</b> rejected the user's server descriptor. <b>reason</b> describes why the descriptor was rejected (e.g., malformed, skewed clock, etc.). </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a79fded852c2c70fa0c8539b2e9441fc0"></a><!-- doxytag: member="TorEvents::socksError" ref="a79fded852c2c70fa0c8539b2e9441fc0" args="(tc::SocksError error, const QString &amp;destination)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::socksError </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacetc.html#ab29556af3a71a9c8768ab9ae1e822191">tc::SocksError</a>&nbsp;</td>
          <td class="paramname"> <em>error</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>destination</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when Tor detects a problem with a SOCKS connection from the user, such as a bad hostname, dangerous SOCKS protocol type, or a bad hostname. <b>type</b> indicates the type of error encountered and <b>destination</b> (if non-empty) specifies the attempted connection destination address or hostname. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00354">handleClientStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a50b675f00d56916ed7997191ca3d06cb"></a><!-- doxytag: member="TorEvents::splitAddress" ref="a50b675f00d56916ed7997191ca3d06cb" args="(const QString &amp;address)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QPair&lt; QHostAddress, quint16 &gt; TorEvents::splitAddress </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>address</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static, private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Splits a string in the form "IP:PORT" into a QHostAddress and quint16 pair. If either portion is invalid, a default-constructed QPair() is returned. </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00444">444</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00385">handleServerStatusEvent()</a>.</p>

</div>
</div>
<a class="anchor" id="a1249b178f2b514979ce5407659cfdd24"></a><!-- doxytag: member="TorEvents::streamStatusChanged" ref="a1249b178f2b514979ce5407659cfdd24" args="(const Stream &amp;stream)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void TorEvents::streamStatusChanged </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_stream.html">Stream</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>stream</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Emitted when the stream status of <b>stream</b> has changed. </p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00214">handleStreamStatus()</a>.</p>

</div>
</div>
<a class="anchor" id="a8c62c55a950118cdeba5a7de34ac157b"></a><!-- doxytag: member="TorEvents::toString" ref="a8c62c55a950118cdeba5a7de34ac157b" args="(TorEvents::Event e)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QString TorEvents::toString </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">TorEvents::Event</a>&nbsp;</td>
          <td class="paramname"> <em>e</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Converts an Event to a string</p>
<p>Converts an event type to a string Tor understands </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00052">52</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_tor_events_8h_source.html#l00046">Bandwidth</a>, <a class="el" href="_tor_events_8h_source.html#l00052">CircuitStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00058">ClientStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00057">GeneralStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00047">LogDebug</a>, <a class="el" href="_tor_events_8h_source.html#l00051">LogError</a>, <a class="el" href="_tor_events_8h_source.html#l00048">LogInfo</a>, <a class="el" href="_tor_events_8h_source.html#l00049">LogNotice</a>, <a class="el" href="_tor_events_8h_source.html#l00050">LogWarn</a>, <a class="el" href="_tor_events_8h_source.html#l00055">NewDescriptor</a>, <a class="el" href="_tor_events_8h_source.html#l00059">ServerStatus</a>, and <a class="el" href="_tor_events_8h_source.html#l00053">StreamStatus</a>.</p>

<p>Referenced by <a class="el" href="_tor_control_8cpp_source.html#l00648">TorControl::setEvents()</a>.</p>

</div>
</div>
<a class="anchor" id="aab44fb9ba9b80d85b95ebe7ac9bc25f9"></a><!-- doxytag: member="TorEvents::toTorEvent" ref="aab44fb9ba9b80d85b95ebe7ac9bc25f9" args="(const QString &amp;event)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">TorEvents::Event</a> TorEvents::toTorEvent </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&nbsp;</td>
          <td class="paramname"> <em>event</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static, private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Converts a string to an Event</p>
<p>Converts an event in the string form sent by Tor to its enum value </p>

<p>Definition at line <a class="el" href="_tor_events_8cpp_source.html#l00076">76</a> of file <a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a>.</p>

<p>References <a class="el" href="_tor_events_8h_source.html#l00046">Bandwidth</a>, <a class="el" href="_tor_events_8h_source.html#l00052">CircuitStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00058">ClientStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00057">GeneralStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00047">LogDebug</a>, <a class="el" href="_tor_events_8h_source.html#l00051">LogError</a>, <a class="el" href="_tor_events_8h_source.html#l00048">LogInfo</a>, <a class="el" href="_tor_events_8h_source.html#l00049">LogNotice</a>, <a class="el" href="_tor_events_8h_source.html#l00050">LogWarn</a>, <a class="el" href="_tor_events_8h_source.html#l00055">NewDescriptor</a>, <a class="el" href="_tor_events_8h_source.html#l00059">ServerStatus</a>, <a class="el" href="_tor_events_8h_source.html#l00053">StreamStatus</a>, and <a class="el" href="_tor_events_8h_source.html#l00045">Unknown</a>.</p>

<p>Referenced by <a class="el" href="_tor_events_8cpp_source.html#l00114">parseEventType()</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a49369e2a61ceae0feffd8987c40d8d84"></a><!-- doxytag: member="TorEvents::EVENT_MAX" ref="a49369e2a61ceae0feffd8987c40d8d84" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a> <a class="el" href="class_tor_events.html#a49369e2a61ceae0feffd8987c40d8d84">TorEvents::EVENT_MAX</a> = TorEvents::ServerStatus<code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_tor_events_8h_source.html#l00062">62</a> of file <a class="el" href="_tor_events_8h_source.html">TorEvents.h</a>.</p>

<p>Referenced by <a class="el" href="_tor_control_8cpp_source.html#l00648">TorControl::setEvents()</a>.</p>

</div>
</div>
<a class="anchor" id="a7153bf04e68d4f74e16efe2c9dcb1787"></a><!-- doxytag: member="TorEvents::EVENT_MIN" ref="a7153bf04e68d4f74e16efe2c9dcb1787" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_tor_events.html#a08aed30fd27832e89f96114617da72bf">Event</a> <a class="el" href="class_tor_events.html#a7153bf04e68d4f74e16efe2c9dcb1787">TorEvents::EVENT_MIN</a> = TorEvents::Bandwidth<code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_tor_events_8h_source.html#l00061">61</a> of file <a class="el" href="_tor_events_8h_source.html">TorEvents.h</a>.</p>

<p>Referenced by <a class="el" href="_tor_control_8cpp_source.html#l00648">TorControl::setEvents()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="_tor_events_8h_source.html">TorEvents.h</a></li>
<li><a class="el" href="_tor_events_8cpp_source.html">TorEvents.cpp</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Mon Aug 30 22:58:57 2010 for Vidalia by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>