Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1f9eb832ba1e4b88d9a5c2b384813bb4 > files > 1907

kdelibs3-apidocs-3.5.10-31.fc15.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!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" lang="en_US" xml:lang="en_US">

<head>
  <title>kdecore: KNetwork::KResolver Class Reference (kdecore)</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <meta http-equiv="Content-Style-Type" content="text/css" />

  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />

  <meta name="trademark" content="KDE e.V." />
  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
  <meta name="MSSmartTagsPreventParsing" content="true" />
  <meta name="robots" content="all" />

  <link rel="shortcut icon" href="../../favicon.ico" />

<link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" />



</head>

<body>

<div id="nav_header_top" align="right">
  <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a>

  <a href="../.."><img id="nav_header_logo" alt="Home" align="left" src="../../kde_gear_64.png" border="0" /></a>
  <span class="doNotDisplay">::</span>

  <div id="nav_header_title" align="left">KDE API Reference</div>


</div>

<div id="nav_header_bottom" align="right">
  <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span>
  <div id="nav_header_bottom_right" style="text-align: left;">
/ <a href="../..">API Reference</a>
 / <a href=".">kdecore</a>
  </div>
</div>


<table id="main" border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
      <td valign="top" class="menuheader" height="0"></td>

  <td id="contentcolumn" valign="top" rowspan="2" >
    <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;">
    <a name="content"></a>


<!-- Generated by Doxygen 1.7.4 -->
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespaceKNetwork.html">KNetwork</a>      </li>
      <li class="navelem"><a class="el" href="classKNetwork_1_1KResolver.html">KResolver</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#signals">Signals</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">KNetwork::KResolver Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KNetwork::KResolver" --><!-- doxytag: inherits="QObject" -->
<p>Name and service resolution class.  
 <a href="classKNetwork_1_1KResolver.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="kresolver_8h_source.html">kresolver.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KNetwork::KResolver:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKNetwork_1_1KResolver.png" usemap="#KNetwork::KResolver_map" alt=""/>
  <map id="KNetwork::KResolver_map" name="KNetwork::KResolver_map">
<area href="qobject.html" alt="QObject" shape="rect" coords="0,0,130,24"/>
</map>
 </div></div>

<p><a href="classKNetwork_1_1KResolver-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a5a180366e460b4e1b3ea69e057b9a32b">SocketFamilies</a> { <br/>
&#160;&#160;<b>UnknownFamily</b> =  0x0001, 
<b>UnixFamily</b> =  0x0002, 
<b>LocalFamily</b> =  UnixFamily, 
<b>IPv4Family</b> =  0x0004, 
<br/>
&#160;&#160;<b>IPv6Family</b> =  0x0008, 
<b>InternetFamily</b> =  IPv4Family | IPv6Family, 
<b>InetFamily</b> =  InternetFamily, 
<b>KnownFamily</b> =  ~UnknownFamily, 
<br/>
&#160;&#160;<b>AnyFamily</b> =  KnownFamily | UnknownFamily
<br/>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a8f11f7f685caede19e71b3a7357f05ba">Flags</a> { <br/>
&#160;&#160;<b>Passive</b> =  0x01, 
<b>CanonName</b> =  0x02, 
<b>NoResolve</b> =  0x04, 
<b>NoSrv</b> =  0x08, 
<br/>
&#160;&#160;<b>Multiport</b> =  0x10, 
<b>UseSrv</b> =  0x20
<br/>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a9cbdc37053d0c3996f6aa0800b21f955">ErrorCodes</a> { <br/>
&#160;&#160;<b>NoError</b> =  0, 
<b>AddrFamily</b> =  -1, 
<b>TryAgain</b> =  -2, 
<b>NonRecoverable</b> =  -3, 
<br/>
&#160;&#160;<b>BadFlags</b> =  -4, 
<b>Memory</b> =  -5, 
<b>NoName</b> =  -6, 
<b>UnsupportedFamily</b> =  -7, 
<br/>
&#160;&#160;<b>UnsupportedService</b> =  -8, 
<b>UnsupportedSocketType</b> =  -9, 
<b>UnknownError</b> =  -10, 
<b>SystemError</b> =  -11, 
<br/>
&#160;&#160;<b>Canceled</b> =  -100
<br/>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#ac4f27baf233aa9891d135af4d4fac409">StatusCodes</a> { <br/>
&#160;&#160;<b>Idle</b> =  0, 
<b>Queued</b> =  1, 
<b>InProgress</b> =  5, 
<b>PostProcessing</b> =  6, 
<br/>
&#160;&#160;<b>Success</b> =  10, 
<b>Failed</b> =  -101
<br/>
 }</td></tr>
<tr><td colspan="2"><h2><a name="signals"></a>
Signals</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a71ce24bf41e88e50d03888ec0c6dd1e5">finished</a> (<a class="el" href="classKNetwork_1_1KResolverResults.html">KResolverResults</a> results)</td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#ab99a50d471e85b75affa710d5ed7329d">KResolver</a> (<a class="elRef" href="qobject.html">QObject</a> *=0L, const char *=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a540a8b26351b229572f67acb36351bff">KResolver</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;nodename, const <a class="elRef" href="qstring.html">QString</a> &amp;servicename=QString::null, <a class="elRef" href="qobject.html">QObject</a> *=0L, const char *=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#aa9b08f633e96dd9f468b6ba2f3047ab4">~KResolver</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a1d28d8c10cc72cabfb0e19395faf9201">status</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#ae45c38a4817296931375acf26212804b">error</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a1792b923b0bf8e80b90d2e90ee8676db">systemError</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#aa300245f4dcc47877fc2de77fd319355">errorString</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a590a33f3865ad443f3d62cb636fa2bb1">isRunning</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#ab4d87b97e1159f1bb67333872f0faa5d">nodeName</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#ae75fef4dcbf12c023346812e7ff7821d">serviceName</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#af6f7c25d3f58dd45b7818f362efc1a4c">setNodeName</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;nodename)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#aaf0ba4af063a6bbad2350683e3268409">setServiceName</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;service)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a08c2742f479938ab098ce7fa3003be8e">setAddress</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;node, const <a class="elRef" href="qstring.html">QString</a> &amp;service)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a886688631bd48820a644451186d034ae">flags</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#acca68d8e9f31df3c727823f143856463">setFlags</a> (int flags)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a81f3599004c766550d6c9140ff210967">setFamily</a> (int families)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#acf71d9a9b9fb6eebfabceae86ef9d2b6">setSocketType</a> (int type)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a3b3a780d25c3a65058c42620d16bc9e4">setProtocol</a> (int protonum, const char *<a class="elRef" href="qobject.html#name">name</a>=0L)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#aee83e662c31da191a16d65de1353d822">start</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#aab7fc98d80952d60f645685d9079eb17">wait</a> (int msec=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a04766724a0966bf6dd995a20d0004d5f">cancel</a> (bool emitSignal=true)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKNetwork_1_1KResolverResults.html">KResolverResults</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a4880c80c3f77c517fb1ec01ee023e5a2">results</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a54d41e206333244ab02d6867cefeec07">event</a> (<a class="elRef" href="qevent.html">QEvent</a> *)</td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a8891f973d375b64cf495cc8400051dd6">errorString</a> (int errorcode, int syserror=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classKNetwork_1_1KResolverResults.html">KResolverResults</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a9fbea887d48aa0f35f1e19f54cac1d76">resolve</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;host, const <a class="elRef" href="qstring.html">QString</a> &amp;service, int flags=0, int families=KResolver::InternetFamily)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a887b6abc03f7f77a100c8ed8ec592972">resolveAsync</a> (<a class="elRef" href="qobject.html">QObject</a> *userObj, const char *userSlot, const <a class="elRef" href="qstring.html">QString</a> &amp;host, const <a class="elRef" href="qstring.html">QString</a> &amp;service, int flags=0, int families=KResolver::InternetFamily)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qcstring.html">QCString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a8de1a9a6918210abd6f8a4e85e1a7bfc">domainToAscii</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;unicodeDomain)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a59f177f5e4b7e1a9c0f7254fdd55ad50">domainToUnicode</a> (const <a class="elRef" href="qcstring.html">QCString</a> &amp;asciiDomain)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#aa98c432499098a39fb71cd92ffab356e">domainToUnicode</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;asciiDomain)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#af4daf38608522a1e2249b8a777be3782">normalizeDomain</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;domain)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstrlist.html">QStrList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a4cae4afebbfce049c1f8226c7a55a85f">protocolName</a> (int protonum)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstrlist.html">QStrList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a888584694b81da1dd85c6a070f8ed2ef">protocolName</a> (const char *protoname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a95226da3ccc1151ebe6f5d797cc1d7df">protocolNumber</a> (const char *protoname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a838ae4aa59ab33e8ea549431d17e71ba">servicePort</a> (const char *servname, const char *protoname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstrlist.html">QStrList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a575c45d2ce224bde5a10e1756e0a30f5">serviceName</a> (const char *servname, const char *protoname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstrlist.html">QStrList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#ae269fa9e174792e4bf806cab131e0481">serviceName</a> (int port, const char *protoname)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a9c8ac8b15b875e665271a12f7ad245f0">localHostName</a> ()</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKNetwork_1_1KResolver.html#a3dccbe190ce6b79863c38e6ac4a29783">setError</a> (int errorcode, int systemerror=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afef147635da41d13abebfbedb10eef01"></a><!-- doxytag: member="KNetwork::KResolver::virtual_hook" ref="afef147635da41d13abebfbedb10eef01" args="(int id, void *data)" -->
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>virtual_hook</b> (int id, void *data)</td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ab7c4ad1d4fe99e96a5bfc2bb47cfe4"></a><!-- doxytag: member="KNetwork::KResolver::KResolverResults" ref="a5ab7c4ad1d4fe99e96a5bfc2bb47cfe4" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>KResolverResults</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed8d9c3b310c710c7c4458527c75f0cb"></a><!-- doxytag: member="KNetwork::KResolver::::KNetwork::Internal::KResolverManager" ref="aed8d9c3b310c710c7c4458527c75f0cb" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><b>::KNetwork::Internal::KResolverManager</b></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Name and service resolution class. </p>
<p>This class provides support for doing name-to-binary resolution for nodenames and service ports. You should use this class if you need specific resolution techniques when creating a socket or if you want to inspect the results before calling the socket functions.</p>
<p>You can either create an object and set the options you want in it or you can simply call the static member functions, which will create standard Resolver objects and dispatch the resolution for you. Normally, the static functions will be used, except in cases where specific options must be set.</p>
<p>A Resolver object defaults to the following: </p>
<ul>
<li>address family: any address family </li>
<li>socket type: streaming socket </li>
<li>protocol: implementation-defined. Generally, TCP </li>
<li>host and service: unset</li>
</ul>
<dl class="author"><dt><b>Author:</b></dt><dd>Thiago Macieira &lt;<a href="mailto:thiago.macieira@kdemail.net">thiago.macieira@kdemail.net</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8h_source.html#l00295">295</a> of file <a class="el" href="kresolver_8h_source.html">kresolver.h</a>.</p>
</div><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a9cbdc37053d0c3996f6aa0800b21f955"></a><!-- doxytag: member="KNetwork::KResolver::ErrorCodes" ref="a9cbdc37053d0c3996f6aa0800b21f955" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKNetwork_1_1KResolver.html#a9cbdc37053d0c3996f6aa0800b21f955">KNetwork::KResolver::ErrorCodes</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Error codes. </p>
<p>These are the possible error values that objects of this class may return. See <a class="el" href="classKNetwork_1_1KResolver.html#aa300245f4dcc47877fc2de77fd319355">errorString()</a> for getting a string representation for these errors.</p>
<ul>
<li>AddrFamily: Address family for the given nodename is not supported. </li>
<li>TryAgain: Temporary failure in name resolution. You should try again. </li>
<li>NonRecoverable: Non-recoverable failure in name resolution. </li>
<li>BadFlags: Invalid flags were given. </li>
<li>Memory: Memory allocation failure. </li>
<li>NoName: The specified name or service doesn't exist. </li>
<li>UnsupportedFamily: The requested socket family is not supported. </li>
<li>UnsupportedService: The requested service is not supported for this socket type (i.e., a datagram service in a streaming socket). </li>
<li>UnsupportedSocketType: The requested socket type is not supported. </li>
<li>UnknownError: An unknown, unexpected error occurred. </li>
<li>SystemError: A system error occurred. See <a class="el" href="classKNetwork_1_1KResolver.html#a1792b923b0bf8e80b90d2e90ee8676db">systemError</a>. </li>
<li>Canceled: This request was cancelled by the user. </li>
</ul>

<p>Definition at line <a class="el" href="kresolver_8h_source.html#l00382">382</a> of file <a class="el" href="kresolver_8h_source.html">kresolver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8f11f7f685caede19e71b3a7357f05ba"></a><!-- doxytag: member="KNetwork::KResolver::Flags" ref="a8f11f7f685caede19e71b3a7357f05ba" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKNetwork_1_1KResolver.html#a8f11f7f685caede19e71b3a7357f05ba">KNetwork::KResolver::Flags</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Flags for the resolution. </p>
<p>These flags are used for setting the resolution behaviour for this object: </p>
<ul>
<li>Passive: resolve to a passive socket (i.e., one that can be used for binding to a local interface) </li>
<li>CanonName: request that the canonical name for the given nodename be found and recorded </li>
<li>NoResolve: request that no external resolution be performed. The given nodename and servicename will be resolved locally only. </li>
<li>NoSrv: don't try to use SRV-based name-resolution. (deprecated) </li>
<li>UseSrv: use SRV-based name resolution. </li>
<li>Multiport: the port/service argument is a list of port numbers and ranges. (future extension)</li>
</ul>
<dl class="note"><dt><b>Note:</b></dt><dd>SRV-based lookup and Multiport are not implemented yet. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8h_source.html#l00351">351</a> of file <a class="el" href="kresolver_8h_source.html">kresolver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5a180366e460b4e1b3ea69e057b9a32b"></a><!-- doxytag: member="KNetwork::KResolver::SocketFamilies" ref="a5a180366e460b4e1b3ea69e057b9a32b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKNetwork_1_1KResolver.html#a5a180366e460b4e1b3ea69e057b9a32b">KNetwork::KResolver::SocketFamilies</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Address family selection types. </p>
<p>These values can be OR-ed together to form a composite family selection.</p>
<ul>
<li>UnknownFamily: a family that is unknown to the current implementation </li>
<li>KnownFamily: a family that is known to the implementation (the exact opposite of UnknownFamily) </li>
<li>AnyFamilies: any address family is acceptable </li>
<li>InternetFamily: an address for connecting to the Internet </li>
<li>InetFamily: alias for InternetFamily </li>
<li>IPv6Family: an IPv6 address only </li>
<li>IPv4Family: an IPv4 address only </li>
<li>UnixFamily: an address for the local Unix namespace (i.e., Unix sockets) </li>
<li>LocalFamily: alias for UnixFamily </li>
</ul>

<p>Definition at line <a class="el" href="kresolver_8h_source.html#l00317">317</a> of file <a class="el" href="kresolver_8h_source.html">kresolver.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac4f27baf233aa9891d135af4d4fac409"></a><!-- doxytag: member="KNetwork::KResolver::StatusCodes" ref="ac4f27baf233aa9891d135af4d4fac409" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKNetwork_1_1KResolver.html#ac4f27baf233aa9891d135af4d4fac409">KNetwork::KResolver::StatusCodes</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Status codes. </p>
<p>These are the possible status for a Resolver object. A value greater than zero indicates normal behaviour, while negative values either indicate failure or error.</p>
<ul>
<li>Idle: resolution has not yet been started. </li>
<li>Queued: resolution is queued but not yet in progress. </li>
<li>InProgress: resolution is in progress. </li>
<li>PostProcessing: resolution is in progress. </li>
<li>Success: resolution is done; you can retrieve the results. </li>
<li>Canceled: request cancelled by the user. </li>
<li>Failed: resolution is done, but failed.</li>
</ul>
<p>Note: the status Canceled and the error code Canceled are the same.</p>
<p>Note 2: the status Queued and InProgress might not be distinguishable. Some implementations might not differentiate one from the other. </p>

<p>Definition at line <a class="el" href="kresolver_8h_source.html#l00420">420</a> of file <a class="el" href="kresolver_8h_source.html">kresolver.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab99a50d471e85b75affa710d5ed7329d"></a><!-- doxytag: member="KNetwork::KResolver::KResolver" ref="ab99a50d471e85b75affa710d5ed7329d" args="(QObject *=0L, const char *=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KResolver::KResolver </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qobject.html">QObject</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0L</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor. </p>
<p>Creates an empty Resolver object. You should set the wanted names and flags using the member functions before starting the name resolution. </p>

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

</div>
</div>
<a class="anchor" id="a540a8b26351b229572f67acb36351bff"></a><!-- doxytag: member="KNetwork::KResolver::KResolver" ref="a540a8b26351b229572f67acb36351bff" args="(const QString &amp;nodename, const QString &amp;servicename=QString::null, QObject *=0L, const char *=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KResolver::KResolver </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>nodename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>servicename</em> = <code>QString::null</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="elRef" href="qobject.html">QObject</a> *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>0L</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor with host and service names. </p>
<p>Creates a Resolver object with the given host and service names. Flags are initialised to 0 and any address family will be accepted.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">nodename</td><td>The host name we want resolved. </td></tr>
    <tr><td class="paramname">servicename</td><td>The service name associated, like "http". </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00298">298</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa9b08f633e96dd9f468b6ba2f3047ab4"></a><!-- doxytag: member="KNetwork::KResolver::~KResolver" ref="aa9b08f633e96dd9f468b6ba2f3047ab4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KResolver::~KResolver </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>
<p>When this object is deleted, it'll destroy all associated resources. If the resolution is still in progress, it will be cancelled and the signal will <b>not</b> be emitted. </p>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00305">305</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a04766724a0966bf6dd995a20d0004d5f"></a><!-- doxytag: member="KNetwork::KResolver::cancel" ref="a04766724a0966bf6dd995a20d0004d5f" args="(bool emitSignal=true)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::cancel </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>emitSignal</em> = <code>true</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Cancels a running request. </p>
<p>This function will cancel a running request. If the request is not currently running or queued, this function does nothing.</p>
<p>Note: if you tell the signal to be emitted, be aware that it might or might not be emitted before this function returns.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">emitSignal</td><td>whether to emit the <a class="el" href="classKNetwork_1_1KResolver.html#a71ce24bf41e88e50d03888ec0c6dd1e5">finished</a> signal or not </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00508">508</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a8de1a9a6918210abd6f8a4e85e1a7bfc"></a><!-- doxytag: member="KNetwork::KResolver::domainToAscii" ref="a8de1a9a6918210abd6f8a4e85e1a7bfc" args="(const QString &amp;unicodeDomain)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qcstring.html">QCString</a> KResolver::domainToAscii </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>unicodeDomain</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the domain name in an ASCII Compatible Encoding form, suitable for DNS lookups. </p>
<p>This is the base for International Domain Name support over the Internet.</p>
<p>Note this function may fail, in which case it'll return a null <a class="elRef" href="qcstring.html">QCString</a>. Reasons for failure include use of unknown code points (Unicode characters).</p>
<p>Note that the encoding is illegible and, thus, should not be presented to the user, except if requested.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">unicodeDomain</td><td>the domain name to be encoded </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the ACE-encoded suitable for DNS queries if successful, a null <a class="elRef" href="qcstring.html">QCString</a> if failure. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00950">950</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a59f177f5e4b7e1a9c0f7254fdd55ad50"></a><!-- doxytag: member="KNetwork::KResolver::domainToUnicode" ref="a59f177f5e4b7e1a9c0f7254fdd55ad50" args="(const QCString &amp;asciiDomain)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::domainToUnicode </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qcstring.html">QCString</a> &amp;&#160;</td>
          <td class="paramname"><em>asciiDomain</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Does the inverse of <a class="el" href="classKNetwork_1_1KResolver.html#a8de1a9a6918210abd6f8a4e85e1a7bfc">domainToAscii</a> and return an Unicode domain name from the given ACE-encoded domain. </p>
<p>This function may fail if the given domain cannot be successfully converted back to Unicode. Reasons for failure include a malformed domain name or good ones whose reencoding back to ACE don't match the form given here (e.g., ACE-encoding of an already ASCII-compatible domain).</p>
<p>It is, however, guaranteed that domains returned by <a class="el" href="classKNetwork_1_1KResolver.html#a8de1a9a6918210abd6f8a4e85e1a7bfc">domainToAscii</a> will work.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">asciiDomain</td><td>the ACE-encoded domain name to be decoded </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the Unicode representation of the given domain name if successful, the original string if not </dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>ACE = ASCII-Compatible Encoding, i.e., 7-bit </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00988">988</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa98c432499098a39fb71cd92ffab356e"></a><!-- doxytag: member="KNetwork::KResolver::domainToUnicode" ref="aa98c432499098a39fb71cd92ffab356e" args="(const QString &amp;asciiDomain)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::domainToUnicode </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>asciiDomain</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The same as above, but taking a <a class="elRef" href="qstring.html">QString</a> argument. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">asciiDomain</td><td>the ACE-encoded domain name to be decoded </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the Unicode representation of the given domain name if successful, QString::null if not. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00994">994</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae45c38a4817296931375acf26212804b"></a><!-- doxytag: member="KNetwork::KResolver::error" ref="ae45c38a4817296931375acf26212804b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::error </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the error code in this object. </p>
<p>This function will return NoError if we are not in an error condition. See <a class="el" href="classKNetwork_1_1KResolver.html#a1d28d8c10cc72cabfb0e19395faf9201">status</a> and <a class="el" href="classKNetwork_1_1KResolver.html#ac4f27baf233aa9891d135af4d4fac409">StatusCodes</a> to find out what the current status is.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#aa300245f4dcc47877fc2de77fd319355" title="Returns the textual representation of the error in this object.">errorString</a> for getting a textual representation of this <a class="el" href="classKNetwork_1_1KResolver.html#ae45c38a4817296931375acf26212804b" title="Retrieve the error code in this object.">error</a> </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00318">318</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa300245f4dcc47877fc2de77fd319355"></a><!-- doxytag: member="KNetwork::KResolver::errorString" ref="aa300245f4dcc47877fc2de77fd319355" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KNetwork::KResolver::errorString </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the textual representation of the error in this object. </p>

<p>Definition at line <a class="el" href="kresolver_8h_source.html#l00493">493</a> of file <a class="el" href="kresolver_8h_source.html">kresolver.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8891f973d375b64cf495cc8400051dd6"></a><!-- doxytag: member="KNetwork::KResolver::errorString" ref="a8891f973d375b64cf495cc8400051dd6" args="(int errorcode, int syserror=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::errorString </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>errorcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>syserror</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the string representation of this error code. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">errorcode</td><td>the error code. See <a class="el" href="classKNetwork_1_1KResolver.html#a9cbdc37053d0c3996f6aa0800b21f955">ErrorCodes</a>. </td></tr>
    <tr><td class="paramname">syserror</td><td>the system error code associated. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the string representation. This is already i18n'ed. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00552">552</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a54d41e206333244ab02d6867cefeec07"></a><!-- doxytag: member="KNetwork::KResolver::event" ref="a54d41e206333244ab02d6867cefeec07" args="(QEvent *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KResolver::event </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qevent.html">QEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Handles events. </p>
<p>Reimplemented from <a class="elRef" href="qobject.html">QObject</a>.</p>
<p>This function handles the events generated by the manager indicating that this object has finished processing.</p>
<p>Do not post events to this object. </p>

<p>Reimplemented from <a class="elRef" href="qobject.html#event">QObject</a>.</p>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00528">528</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a71ce24bf41e88e50d03888ec0c6dd1e5"></a><!-- doxytag: member="KNetwork::KResolver::finished" ref="a71ce24bf41e88e50d03888ec0c6dd1e5" args="(KResolverResults results)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KNetwork::KResolver::finished </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKNetwork_1_1KResolverResults.html">KResolverResults</a>&#160;</td>
          <td class="paramname"><em>results</em></td><td>)</td>
          <td><code> [signal]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This signal is emitted whenever the resolution is finished, one way or another (success or failure). </p>
<p>The <code>results</code> parameter will contain the resolved data.</p>
<p>Note: if you are doing multiple resolutions, you can use the <a class="elRef" href="qobject.html#sender">QObject::sender()</a> function to distinguish one Resolver object from another.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">results</td><td>the resolved data; might be empty if the resolution failed </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#a4880c80c3f77c517fb1ec01ee023e5a2" title="Retrieves the results of this resolution.">results</a> for information on what the <a class="el" href="classKNetwork_1_1KResolver.html#a4880c80c3f77c517fb1ec01ee023e5a2" title="Retrieves the results of this resolution.">results</a> are</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This signal is <b>always</b> delivered in the GUI event thread, even for resolutions that were started in secondary threads. </dd></dl>

</div>
</div>
<a class="anchor" id="a886688631bd48820a644451186d034ae"></a><!-- doxytag: member="KNetwork::KResolver::flags" ref="a886688631bd48820a644451186d034ae" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::flags </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves the flags set for the resolution. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#a8f11f7f685caede19e71b3a7357f05ba" title="Flags for the resolution.">Flags</a> for an explanation on what <a class="el" href="classKNetwork_1_1KResolver.html#a886688631bd48820a644451186d034ae" title="Retrieves the flags set for the resolution.">flags</a> are possible </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00379">379</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a590a33f3865ad443f3d62cb636fa2bb1"></a><!-- doxytag: member="KNetwork::KResolver::isRunning" ref="a590a33f3865ad443f3d62cb636fa2bb1" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KResolver::isRunning </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if this object is currently running. </p>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00330">330</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a9c8ac8b15b875e665271a12f7ad245f0"></a><!-- doxytag: member="KNetwork::KResolver::localHostName" ref="a9c8ac8b15b875e665271a12f7ad245f0" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::localHostName </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns this machine's local hostname. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>this machine's local hostname </dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.5 </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00884">884</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ab4d87b97e1159f1bb67333872f0faa5d"></a><!-- doxytag: member="KNetwork::KResolver::nodeName" ref="ab4d87b97e1159f1bb67333872f0faa5d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::nodeName </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The nodename to which the resolution was/is to be performed. </p>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00336">336</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="af4daf38608522a1e2249b8a777be3782"></a><!-- doxytag: member="KNetwork::KResolver::normalizeDomain" ref="af4daf38608522a1e2249b8a777be3782" args="(const QString &amp;domain)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::normalizeDomain </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>domain</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Normalise a domain name. </p>
<p>In order to prevent simple mistakes in International Domain Names (IDN), it has been decided that certain code points (characters in Unicode) would be instead converted to others. This includes turning them all to lower case, as well certain other specific operations, as specified in the documents.</p>
<p>For instance, the German 'ß' will be changed into 'ss', while the micro symbol 'µ' will be changed to the Greek mu 'μ'.</p>
<p>Two equivalent domains have the same normalised form. And the normalised form of a normalised domain is itself (i.e., if d is normalised, the following is true: d == normalizeDomain(d) )</p>
<p>This operation is equivalent to encoding and the decoding a Unicode hostname.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">domain</td><td>a domain to be normalised </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the normalised domain, or QString::null if the domain is invalid. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l01034">1034</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4cae4afebbfce049c1f8226c7a55a85f"></a><!-- doxytag: member="KNetwork::KResolver::protocolName" ref="a4cae4afebbfce049c1f8226c7a55a85f" args="(int protonum)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstrlist.html">QStrList</a> KResolver::protocolName </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>protonum</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolves a protocol number to its names. </p>
<p>Note: the returned <a class="elRef" href="qstrlist.html">QStrList</a> operates on deep-copies.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">protonum</td><td>the protocol number to be looked for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>all the protocol names in a list. The first is the "proper" name. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00610">610</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a888584694b81da1dd85c6a070f8ed2ef"></a><!-- doxytag: member="KNetwork::KResolver::protocolName" ref="a888584694b81da1dd85c6a070f8ed2ef" args="(const char *protoname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstrlist.html">QStrList</a> KResolver::protocolName </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>protoname</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finds all aliases for a given protocol name. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">protoname</td><td>the protocol name to be looked for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>all the protocol names in a list. The first is the "proper" name. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00657">657</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a95226da3ccc1151ebe6f5d797cc1d7df"></a><!-- doxytag: member="KNetwork::KResolver::protocolNumber" ref="a95226da3ccc1151ebe6f5d797cc1d7df" args="(const char *protoname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::protocolNumber </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>protoname</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolves a protocol name to its number. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">protoname</td><td>the protocol name to be looked for </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the protocol number or -1 if we couldn't locate it </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00704">704</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a9fbea887d48aa0f35f1e19f54cac1d76"></a><!-- doxytag: member="KNetwork::KResolver::resolve" ref="a9fbea887d48aa0f35f1e19f54cac1d76" args="(const QString &amp;host, const QString &amp;service, int flags=0, int families=KResolver::InternetFamily)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KResolverResults.html">KResolverResults</a> KResolver::resolve </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>host</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>service</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>flags</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>families</em> = <code>KResolver::InternetFamily</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolve the nodename and service name synchronously. </p>
<p>This static function is provided as convenience for simplifying name resolution. It resolves the given host and service names synchronously and returns the results it found. It is equivalent to the following code:</p>
<div class="fragment"><pre class="fragment">   <a class="code" href="classKNetwork_1_1KResolver.html#ab99a50d471e85b75affa710d5ed7329d" title="Default constructor.">KResolver</a> qres(host, service);
   qres.setFlags(<a class="code" href="classKNetwork_1_1KResolver.html#a886688631bd48820a644451186d034ae" title="Retrieves the flags set for the resolution.">flags</a>);
   qres.setFamily(families)
   qres.start();
   qres.wait();
   <span class="keywordflow">return</span> qres.results();
</pre></div><dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">host</td><td>the nodename to resolve </td></tr>
    <tr><td class="paramname">service</td><td>the service to resolve </td></tr>
    <tr><td class="paramname">flags</td><td>flags to be used </td></tr>
    <tr><td class="paramname">families</td><td>the families to be searched </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a <a class="el" href="classKNetwork_1_1KResolverResults.html" title="Name and service resolution results.">KResolverResults</a> object containing the results </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolverResults.html" title="Name and service resolution results.">KResolverResults</a> for information on how to obtain the <a class="el" href="classKNetwork_1_1KResolver.html#ae45c38a4817296931375acf26212804b" title="Retrieve the error code in this object.">error</a> code </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00587">587</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a887b6abc03f7f77a100c8ed8ec592972"></a><!-- doxytag: member="KNetwork::KResolver::resolveAsync" ref="a887b6abc03f7f77a100c8ed8ec592972" args="(QObject *userObj, const char *userSlot, const QString &amp;host, const QString &amp;service, int flags=0, int families=KResolver::InternetFamily)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KResolver::resolveAsync </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qobject.html">QObject</a> *&#160;</td>
          <td class="paramname"><em>userObj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>userSlot</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>host</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>service</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>flags</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>families</em> = <code>KResolver::InternetFamily</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Start an asynchronous name resolution. </p>
<p>This function is provided as a convenience to simplify the resolution process. It creates an internal <a class="el" href="classKNetwork_1_1KResolver.html" title="Name and service resolution class.">KResolver</a> object, connects the <a class="el" href="classKNetwork_1_1KResolver.html#a71ce24bf41e88e50d03888ec0c6dd1e5">finished</a> signal to the given slot and starts the resolution asynchronously. It is more or less equivalent to the following code:</p>
<p><b>Note:</b> this function may trigger the signal before it returns, so your code must be prepared for this situation.</p>
<div class="fragment"><pre class="fragment">   <a class="code" href="classKNetwork_1_1KResolver.html#ab99a50d471e85b75affa710d5ed7329d" title="Default constructor.">KResolver</a>* qres = <span class="keyword">new</span> <a class="code" href="classKNetwork_1_1KResolver.html#ab99a50d471e85b75affa710d5ed7329d" title="Default constructor.">KResolver</a>(host, service);
   <a class="codeRef" href="qobject.html#connect">QObject::connect</a>(qres, SIGNAL(<a class="code" href="classKNetwork_1_1KResolver.html#a71ce24bf41e88e50d03888ec0c6dd1e5" title="This signal is emitted whenever the resolution is finished, one way or another (success or failure)...">finished</a>(KResolverResults)),
              userObj, userSlot);
   qres-&gt;setFlags(<a class="code" href="classKNetwork_1_1KResolver.html#a886688631bd48820a644451186d034ae" title="Retrieves the flags set for the resolution.">flags</a>);
   qres-&gt;setFamily(families);
   <span class="keywordflow">return</span> qres-&gt;start();
</pre></div><p>You should use it like this in your code: </p>
<div class="fragment"><pre class="fragment">   <a class="code" href="classKNetwork_1_1KResolver.html#a887b6abc03f7f77a100c8ed8ec592972" title="Start an asynchronous name resolution.">KResolver::resolveAsync</a>(myObj, SLOT(mySlot(KResolverResults)), host, service);
</pre></div><dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">userObj</td><td>the object whose slot <code>userSlot</code> we will connect </td></tr>
    <tr><td class="paramname">userSlot</td><td>the slot to which we'll connect </td></tr>
    <tr><td class="paramname">host</td><td>the nodename to resolve </td></tr>
    <tr><td class="paramname">service</td><td>the service to resolve </td></tr>
    <tr><td class="paramname">flags</td><td>flags to be used </td></tr>
    <tr><td class="paramname">families</td><td>families to be searcheed </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the queueing was successful, false if not </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolverResults.html" title="Name and service resolution results.">KResolverResults</a> for information on how to obtain the <a class="el" href="classKNetwork_1_1KResolver.html#ae45c38a4817296931375acf26212804b" title="Retrieve the error code in this object.">error</a> code </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00598">598</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4880c80c3f77c517fb1ec01ee023e5a2"></a><!-- doxytag: member="KNetwork::KResolver::results" ref="a4880c80c3f77c517fb1ec01ee023e5a2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKNetwork_1_1KResolverResults.html">KResolverResults</a> KResolver::results </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves the results of this resolution. </p>
<p>Use this function to retrieve the results of the resolution. If no data was resolved (yet) or if we failed, this function will return an empty object.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the resolved data </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#a1d28d8c10cc72cabfb0e19395faf9201" title="Retrieve the current status of this object.">status</a> for information on finding out if the resolution was successful </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00516">516</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a575c45d2ce224bde5a10e1756e0a30f5"></a><!-- doxytag: member="KNetwork::KResolver::serviceName" ref="a575c45d2ce224bde5a10e1756e0a30f5" args="(const char *servname, const char *protoname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstrlist.html">QStrList</a> KResolver::serviceName </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>servname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>protoname</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finds all the aliases for a given service name. </p>
<p>Note: the returned <a class="elRef" href="qstrlist.html">QStrList</a> operates on deep-copies.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">servname</td><td>the service alias to be looked for </td></tr>
    <tr><td class="paramname">protoname</td><td>the protocol it is associated with </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>all the service names in a list. The first is the "proper" name. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00790">790</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae75fef4dcbf12c023346812e7ff7821d"></a><!-- doxytag: member="KNetwork::KResolver::serviceName" ref="ae75fef4dcbf12c023346812e7ff7821d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KResolver::serviceName </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The service name to which the resolution was/is to be performed. </p>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00342">342</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae269fa9e174792e4bf806cab131e0481"></a><!-- doxytag: member="KNetwork::KResolver::serviceName" ref="ae269fa9e174792e4bf806cab131e0481" args="(int port, const char *protoname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstrlist.html">QStrList</a> KResolver::serviceName </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>protoname</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolves a port number to its names. </p>
<p>Note: the returned <a class="elRef" href="qstrlist.html">QStrList</a> operates on deep copies.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">port</td><td>the port number, in host byte-order </td></tr>
    <tr><td class="paramname">protoname</td><td>the protocol it is associated with </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>all the service names in a list. The first is the "proper" name. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00837">837</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a838ae4aa59ab33e8ea549431d17e71ba"></a><!-- doxytag: member="KNetwork::KResolver::servicePort" ref="a838ae4aa59ab33e8ea549431d17e71ba" args="(const char *servname, const char *protoname)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::servicePort </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>servname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>protoname</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Resolves a service name to its port number. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">servname</td><td>the service name to be looked for </td></tr>
    <tr><td class="paramname">protoname</td><td>the protocol it is associated with </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the port number in host byte-order or -1 in case of error </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00747">747</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a08c2742f479938ab098ce7fa3003be8e"></a><!-- doxytag: member="KNetwork::KResolver::setAddress" ref="a08c2742f479938ab098ce7fa3003be8e" args="(const QString &amp;node, const QString &amp;service)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::setAddress </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>node</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>service</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets both the host and the service names. </p>
<p>Setting either value to QString::null will unset them. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">node</td><td>The nodename </td></tr>
    <tr><td class="paramname">service</td><td>The service name </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00372">372</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3dccbe190ce6b79863c38e6ac4a29783"></a><!-- doxytag: member="KNetwork::KResolver::setError" ref="a3dccbe190ce6b79863c38e6ac4a29783" args="(int errorcode, int systemerror=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KNetwork::KResolver::setError </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>errorcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>systemerror</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the error codes. </p>

</div>
</div>
<a class="anchor" id="a81f3599004c766550d6c9140ff210967"></a><!-- doxytag: member="KNetwork::KResolver::setFamily" ref="a81f3599004c766550d6c9140ff210967" args="(int families)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::setFamily </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>families</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the allowed socket families. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">families</td><td>the families that we want/accept </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#a5a180366e460b4e1b3ea69e057b9a32b" title="Address family selection types.">SocketFamilies</a> for possible values </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00397">397</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="acca68d8e9f31df3c727823f143856463"></a><!-- doxytag: member="KNetwork::KResolver::setFlags" ref="acca68d8e9f31df3c727823f143856463" args="(int flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::setFlags </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>flags</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the flags. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">flags</td><td>the new flags </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the old flags </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#a8f11f7f685caede19e71b3a7357f05ba" title="Flags for the resolution.">Flags</a> for an explanation on the <a class="el" href="classKNetwork_1_1KResolver.html#a886688631bd48820a644451186d034ae" title="Retrieves the flags set for the resolution.">flags</a> </dd></dl>

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

</div>
</div>
<a class="anchor" id="af6f7c25d3f58dd45b7818f362efc1a4c"></a><!-- doxytag: member="KNetwork::KResolver::setNodeName" ref="af6f7c25d3f58dd45b7818f362efc1a4c" args="(const QString &amp;nodename)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::setNodeName </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>nodename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the nodename for the resolution. </p>
<p>Set the nodename to QString::null to unset it. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">nodename</td><td>The nodename to be resolved. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00348">348</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3b3a780d25c3a65058c42620d16bc9e4"></a><!-- doxytag: member="KNetwork::KResolver::setProtocol" ref="a3b3a780d25c3a65058c42620d16bc9e4" args="(int protonum, const char *name=0L)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::setProtocol </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>protonum</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em> = <code>0L</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the protocol we want. </p>
<p>Protocols are dependant on the selected address family, so you should know what you are doing if you use this function. Besides, protocols generally are either stream-based or datagram-based, so the value of the socket type is also important. The resolution will fail if these values don't match.</p>
<p>When using an Internet socket, the values for the protocol are the IPPROTO_* constants, defined in &lt;netinet/in.h&gt;.</p>
<p>You may choose to set the protocol either by its number or by its name, or by both. If you set: </p>
<ul>
<li>the number and the name: both values will be stored internally; you may set the name to an empty value, if wanted </li>
<li>the number only (name = NULL): the name will be searched in the protocols database </li>
<li>the name only (number = 0): the number will be searched in the database </li>
<li>neither name nor number: reset to default behaviour</li>
</ul>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">protonum</td><td>the protocol number we want </td></tr>
    <tr><td class="paramname">name</td><td>the protocol name </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00417">417</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aaf0ba4af063a6bbad2350683e3268409"></a><!-- doxytag: member="KNetwork::KResolver::setServiceName" ref="aaf0ba4af063a6bbad2350683e3268409" args="(const QString &amp;service)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::setServiceName </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>service</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the service name to be resolved. </p>
<p>Set it to QString::null to unset it. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">service</td><td>The service to be resolved. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00360">360</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="acf71d9a9b9fb6eebfabceae86ef9d2b6"></a><!-- doxytag: member="KNetwork::KResolver::setSocketType" ref="acf71d9a9b9fb6eebfabceae86ef9d2b6" args="(int type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KResolver::setSocketType </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>type</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the socket type we want. </p>
<p>The values for the <code>type</code> parameter are the SOCK_* constants, defined in &lt;sys/socket.h&gt;. The most common values are: </p>
<ul>
<li>SOCK_STREAM streaming socket (= reliable, sequenced, connection-based) </li>
<li>SOCK_DGRAM datagram socket (= unreliable, connectionless) </li>
<li>SOCK_RAW raw socket, with direct access to the container protocol (such as IP)</li>
</ul>
<p>These three are the only values to which it is guaranteed that resolution will work. Some systems may define other constants (such as SOCK_RDM for reliable datagrams), but support is implementation-defined.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">type</td><td>the wanted socket type (SOCK_* constants). Set 0 to use the default. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00407">407</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aee83e662c31da191a16d65de1353d822"></a><!-- doxytag: member="KNetwork::KResolver::start" ref="aee83e662c31da191a16d65de1353d822" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KResolver::start </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Starts the name resolution asynchronously. </p>
<p>This function will queue this object for resolution and will return immediately. The status upon exit will either be Queued or InProgress or Failed.</p>
<p>This function does nothing if the object is already queued. But if it had already succeeded or failed, this function will re-start it.</p>
<p>Note: if both the nodename and the servicename are unset, this function will not queue, but will set a success state and emit the signal. Also note that in this case and maybe others, the signal <a class="el" href="classKNetwork_1_1KResolver.html#a71ce24bf41e88e50d03888ec0c6dd1e5">finished</a> might be emitted before this function returns.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if this request was successfully queued for asynchronous resolution </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00438">438</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a1d28d8c10cc72cabfb0e19395faf9201"></a><!-- doxytag: member="KNetwork::KResolver::status" ref="a1d28d8c10cc72cabfb0e19395faf9201" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::status </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the current status of this object. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKNetwork_1_1KResolver.html#ac4f27baf233aa9891d135af4d4fac409" title="Status codes.">StatusCodes</a> for the possible <a class="el" href="classKNetwork_1_1KResolver.html#a1d28d8c10cc72cabfb0e19395faf9201" title="Retrieve the current status of this object.">status</a> codes. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00312">312</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a1792b923b0bf8e80b90d2e90ee8676db"></a><!-- doxytag: member="KNetwork::KResolver::systemError" ref="a1792b923b0bf8e80b90d2e90ee8676db" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KResolver::systemError </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the associated system error code in this object. </p>
<p>Many resolution operations may generate an extra error code as given by the C errno variable. That value is stored in the object and can be retrieved by this function. </p>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00324">324</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aab7fc98d80952d60f645685d9079eb17"></a><!-- doxytag: member="KNetwork::KResolver::wait" ref="aab7fc98d80952d60f645685d9079eb17" args="(int msec=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KResolver::wait </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>msec</em> = <code>0</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Waits for a request to finish resolving. </p>
<p>This function will wait on a running request for its termination. The status upon exit will either be Success or Failed or Canceled.</p>
<p>This function may be called from any thread, even one that is not the GUI thread or the one that started the resolution process. But note this function is not thread-safe nor reentrant: i.e., only one thread can be waiting on one given object.</p>
<p>Also note that this function ensures that the <a class="el" href="classKNetwork_1_1KResolver.html#a71ce24bf41e88e50d03888ec0c6dd1e5">finished</a> signal is emitted before it returns. That means that, as a side-effect, whenever <a class="el" href="classKNetwork_1_1KResolver.html#aab7fc98d80952d60f645685d9079eb17" title="Waits for a request to finish resolving.">wait()</a> is called, the signal is emitted on the thread calling <a class="el" href="classKNetwork_1_1KResolver.html#aab7fc98d80952d60f645685d9079eb17" title="Waits for a request to finish resolving.">wait()</a>.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">msec</td><td>the time to wait, in milliseconds or 0 to wait forever </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the resolution has finished processing, even when it failed or was canceled. False means the wait timed out and the resolution is still running. </dd></dl>

<p>Definition at line <a class="el" href="kresolver_8cpp_source.html#l00457">457</a> of file <a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="kresolver_8h_source.html">kresolver.h</a></li>
<li><a class="el" href="kresolver_8cpp_source.html">kresolver.cpp</a></li>
</ul>
</div>
    </div></div>


      </td>
  </tr>
  <tr>
    <td valign="top" id="leftmenu" width="25%">
      <a name="navigation"></a>
      <div class="menu_box"><h2>kdecore</h2>
<div class="nav_list">
<ul><li><a href="index.html">Main Page</a></li><li><a href="modules.html">Modules</a></li><li><a href="namespaces.html">Namespace List</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="namespacemembers.html">Namespace Members</a></li><li><a href="functions.html">Class Members</a></li><li><a href="pages.html">Related Pages</a></li></ul>
<!--
<h2>Class Picker</h2>
<div style="text-align: center;">
<form name="guideform">
<select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value">
<option value="annotated.html">-- Choose --</option>
  <option value="classKAboutData.html">kaboutdata</option>,  <option value="classKAboutPerson.html">kaboutperson</option>,  <option value="classKAboutTranslator.html">kabouttranslator</option>,  <option value="classKAccel.html">kaccel</option>,  <option value="classKAcceleratorManager.html">kacceleratormanager</option>,  <option value="classKAccelManagerAlgorithm.html">kaccelmanageralgorithm</option>,  <option value="classKAccelShortcutList.html">kaccelshortcutlist</option>,  <option value="classKAccelString.html">kaccelstring</option>,  <option value="classKAddressInfo.html">kaddressinfo</option>,  <option value="classKAppDCOPInterface.html">kappdcopinterface</option>,  <option value="classKApplication.html">kapplication</option>,  <option value="classKAsyncIO.html">kasyncio</option>,  <option value="classKAudioPlayer.html">kaudioplayer</option>,  <option value="classKBufferedIO.html">kbufferedio</option>,  <option value="classKCalendarSystem.html">kcalendarsystem</option>,  <option value="classKCalendarSystemFactory.html">kcalendarsystemfactory</option>,  <option value="classKCalendarSystemJalali.html">kcalendarsystemjalali</option>,  <option value="classKCatalogue.html">kcatalogue</option>,  <option value="classKCharMacroExpander.html">kcharmacroexpander</option>,  <option value="classKCharsets.html">kcharsets</option>,  <option value="classKClipboardSynchronizer.html">kclipboardsynchronizer</option>,  <option value="classKCmdLineArgs.html">kcmdlineargs</option>,  <option value="classKCodecs.html">kcodecs</option>,  <option value="classKCompletion.html">kcompletion</option>,  <option value="classKCompletionBase.html">kcompletionbase</option>,  <option value="classKCompletionMatches.html">kcompletionmatches</option>,  <option value="classKCompTreeNode.html">kcomptreenode</option>,  <option value="classKConfig.html">kconfig</option>,  <option value="classKConfigBackEnd.html">kconfigbackend</option>,  <option value="classKConfigBase.html">kconfigbase</option>,  <option value="classKConfigDialogManager.html">kconfigdialogmanager</option>,  <option value="classKConfigGroup.html">kconfiggroup</option>,  <option value="classKConfigGroupSaver.html">kconfiggroupsaver</option>,  <option value="classKConfigINIBackEnd.html">kconfiginibackend</option>,  <option value="classKConfigSkeleton.html">kconfigskeleton</option>,  <option value="classKConfigSkeleton_1_1ItemBool.html">kconfigskeleton::itembool</option>,  <option value="classKConfigSkeleton_1_1ItemColor.html">kconfigskeleton::itemcolor</option>,  <option value="classKConfigSkeleton_1_1ItemDateTime.html">kconfigskeleton::itemdatetime</option>,  <option value="classKConfigSkeleton_1_1ItemDouble.html">kconfigskeleton::itemdouble</option>,  <option value="classKConfigSkeleton_1_1ItemEnum.html">kconfigskeleton::itemenum</option>,  <option value="classKConfigSkeleton_1_1ItemFont.html">kconfigskeleton::itemfont</option>,  <option value="classKConfigSkeleton_1_1ItemInt.html">kconfigskeleton::itemint</option>,  <option value="classKConfigSkeleton_1_1ItemInt64.html">kconfigskeleton::itemint64</option>,  <option value="classKConfigSkeleton_1_1ItemIntList.html">kconfigskeleton::itemintlist</option>,  <option value="classKConfigSkeleton_1_1ItemLong.html">kconfigskeleton::itemlong</option>,  <option value="classKConfigSkeleton_1_1ItemPassword.html">kconfigskeleton::itempassword</option>,  <option value="classKConfigSkeleton_1_1ItemPath.html">kconfigskeleton::itempath</option>,  <option value="classKConfigSkeleton_1_1ItemPathList.html">kconfigskeleton::itempathlist</option>,  <option value="classKConfigSkeleton_1_1ItemPoint.html">kconfigskeleton::itempoint</option>,  <option value="classKConfigSkeleton_1_1ItemProperty.html">kconfigskeleton::itemproperty</option>,  <option value="classKConfigSkeleton_1_1ItemRect.html">kconfigskeleton::itemrect</option>,  <option value="classKConfigSkeleton_1_1ItemSize.html">kconfigskeleton::itemsize</option>,  <option value="classKConfigSkeleton_1_1ItemString.html">kconfigskeleton::itemstring</option>,  <option value="classKConfigSkeleton_1_1ItemStringList.html">kconfigskeleton::itemstringlist</option>,  <option value="classKConfigSkeleton_1_1ItemUInt.html">kconfigskeleton::itemuint</option>,  <option value="classKConfigSkeleton_1_1ItemUInt64.html">kconfigskeleton::itemuint64</option>,  <option value="classKConfigSkeleton_1_1ItemULong.html">kconfigskeleton::itemulong</option>,  <option value="classKConfigSkeletonItem.html">kconfigskeletonitem</option>,  <option value="classKCrash.html">kcrash</option>,  <option value="classKDCOPPropertyProxy.html">kdcoppropertyproxy</option>,  <option value="classKDebugDCOPIface.html">kdebugdcopiface</option>,  <option value="classKDesktopFile.html">kdesktopfile</option>,  <option value="classKExtendedSocket.html">kextendedsocket</option>,  <option value="classKGenericFactory.html">kgenericfactory</option>,  <option value="classKGenericFactory_3_01KTypeList_3_01Product_00_01ProductListTail_01_4_00_01KTypeList_3_01Pare1ed8d1e5a9847c99711cad3b12c7e96c.html">kgenericfactory< ktypelist< product, productlisttail >, ktypelist< pare1ed8d1e5a9847c99711cad3b12c7e96c</option>,  <option value="classKGenericFactory_3_01KTypeList_3_01Product_00_01ProductListTail_01_4_00_01KTypeList_3_01Paref6a00f76851e0daa2cb662bb8a41fc7f.html">kgenericfactory< ktypelist< product, productlisttail >, ktypelist< paref6a00f76851e0daa2cb662bb8a41fc7f</option>,  <option value="classKGenericFactory_3_01KTypeList_3_01Product_00_01ProductListTail_01_4_00_01QObject_01_4.html">kgenericfactory< ktypelist< product, productlisttail >, qobject ></option>,  <option value="classKGlobal.html">kglobal</option>,  <option value="classKGlobalAccel.html">kglobalaccel</option>,  <option value="classKGlobalSettings.html">kglobalsettings</option>,  <option value="classKIcon.html">kicon</option>,  <option value="classKIconEffect.html">kiconeffect</option>,  <option value="classKIconLoader.html">kiconloader</option>,  <option value="classKIconTheme.html">kicontheme</option>,  <option value="classKInetSocketAddress.html">kinetsocketaddress</option>,  <option value="classKInstance.html">kinstance</option>,  <option value="classKIOBufferBase.html">kiobufferbase</option>,  <option value="classKIPC.html">kipc</option>,  <option value="classKKey.html">kkey</option>,  <option value="classKKeyNative.html">kkeynative</option>,  <option value="classKKeySequence.html">kkeysequence</option>,  <option value="classKLibFactory.html">klibfactory</option>,  <option value="classKLibLoader.html">klibloader</option>,  <option value="classKLibrary.html">klibrary</option>,  <option value="classKLocale.html">klocale</option>,  <option value="classKLockFile.html">klockfile</option>,  <option value="classKMacroExpanderBase.html">kmacroexpanderbase</option>,  <option value="classKMD4.html">kmd4</option>,  <option value="classKMD5.html">kmd5</option>,  <option value="classKMimeSourceFactory.html">kmimesourcefactory</option>,  <option value="classKMountPoint.html">kmountpoint</option>,  <option value="classKMultipleDrag.html">kmultipledrag</option>,  <option value="classKNetwork_1_1KActiveSocketBase.html">knetwork::kactivesocketbase</option>,  <option value="classKNetwork_1_1KBufferedSocket.html">knetwork::kbufferedsocket</option>,  <option value="classKNetwork_1_1KClientSocketBase.html">knetwork::kclientsocketbase</option>,  <option value="classKNetwork_1_1KDatagramPacket.html">knetwork::kdatagrampacket</option>,  <option value="classKNetwork_1_1KDatagramSocket.html">knetwork::kdatagramsocket</option>,  <option value="classKNetwork_1_1KHttpProxySocketDevice.html">knetwork::khttpproxysocketdevice</option>,  <option value="classKNetwork_1_1KInetSocketAddress.html">knetwork::kinetsocketaddress</option>,  <option value="classKNetwork_1_1KIpAddress.html">knetwork::kipaddress</option>,  <option value="classKNetwork_1_1KMulticastSocket.html">knetwork::kmulticastsocket</option>,  <option value="classKNetwork_1_1KMulticastSocketImpl.html">knetwork::kmulticastsocketimpl</option>,  <option value="classKNetwork_1_1KNetworkInterface.html">knetwork::knetworkinterface</option>,  <option value="classKNetwork_1_1KPassiveSocketBase.html">knetwork::kpassivesocketbase</option>,  <option value="classKNetwork_1_1KResolver.html">knetwork::kresolver</option>,  <option value="classKNetwork_1_1KResolverEntry.html">knetwork::kresolverentry</option>,  <option value="classKNetwork_1_1KResolverResults.html">knetwork::kresolverresults</option>,  <option value="classKNetwork_1_1KResolverWorkerBase_1_1ResolverLocker.html">knetwork::kresolverworkerbase::resolverlocker</option>,  <option value="classKNetwork_1_1KReverseResolver.html">knetwork::kreverseresolver</option>,  <option value="classKNetwork_1_1KServerSocket.html">knetwork::kserversocket</option>,  <option value="classKNetwork_1_1KSocketAddress.html">knetwork::ksocketaddress</option>,  <option value="classKNetwork_1_1KSocketBase.html">knetwork::ksocketbase</option>,  <option value="classKNetwork_1_1KSocketDevice.html">knetwork::ksocketdevice</option>,  <option value="classKNetwork_1_1KSocketDeviceFactory.html">knetwork::ksocketdevicefactory</option>,  <option value="classKNetwork_1_1KSocksSocketDevice.html">knetwork::ksockssocketdevice</option>,  <option value="classKNetwork_1_1KStreamSocket.html">knetwork::kstreamsocket</option>,  <option value="classKNetwork_1_1KUnixSocketAddress.html">knetwork::kunixsocketaddress</option>,  <option value="classKNotifyClient_1_1Instance.html">knotifyclient::instance</option>,  <option value="classKPalette.html">kpalette</option>,  <option value="classKPixmapProvider.html">kpixmapprovider</option>,  <option value="classKPopupAccelManager.html">kpopupaccelmanager</option>,  <option value="classKProcess.html">kprocess</option>,  <option value="classKProcessController.html">kprocesscontroller</option>,  <option value="classKProcIO.html">kprocio</option>,  <option value="classKProtocolInfoFactory.html">kprotocolinfofactory</option>,  <option value="classKPty.html">kpty</option>,  <option value="classKRandomSequence.html">krandomsequence</option>,  <option value="classKRegExp.html">kregexp</option>,  <option value="classKRegExpPrivate.html">kregexpprivate</option>,  <option value="classKRFCDate.html">krfcdate</option>,  <option value="classKRootProp.html">krootprop</option>,  <option value="classKSaveFile.html">ksavefile</option>,  <option value="classKServerSocket.html">kserversocket</option>,  <option value="classKSessionManaged.html">ksessionmanaged</option>,  <option value="classKShared.html">kshared</option>,  <option value="classKSharedConfig.html">ksharedconfig</option>,  <option value="classKSharedPtr.html">ksharedptr</option>,  <option value="classKShellProcess.html">kshellprocess</option>,  <option value="classKShortcut.html">kshortcut</option>,  <option value="classKShortcutList.html">kshortcutlist</option>,  <option value="classKSimpleConfig.html">ksimpleconfig</option>,  <option value="classKSocket.html">ksocket</option>,  <option value="classKSocketAddress.html">ksocketaddress</option>,  <option value="classKSocks.html">ksocks</option>,  <option value="classKSortableItem.html">ksortableitem</option>,  <option value="classKSortableValueList.html">ksortablevaluelist</option>,  <option value="classKStandardDirs.html">kstandarddirs</option>,  <option value="classKStaticDeleter.html">kstaticdeleter</option>,  <option value="classKStaticDeleterBase.html">kstaticdeleterbase</option>,  <option value="classKStdAccel_1_1ShortcutList.html">kstdaccel::shortcutlist</option>,  <option value="classKStringHandler.html">kstringhandler</option>,  <option value="classKSycocaEntry.html">ksycocaentry</option>,  <option value="classKSycocaFactoryList.html">ksycocafactorylist</option>,  <option value="classKTempDir.html">ktempdir</option>,  <option value="classKTempFile.html">ktempfile</option>,  <option value="classKTimezone.html">ktimezone</option>,  <option value="classKTimezoneDetails.html">ktimezonedetails</option>,  <option value="classKTimezones.html">ktimezones</option>,  <option value="classKTimezoneSource.html">ktimezonesource</option>,  <option value="classKUniqueApplication.html">kuniqueapplication</option>,  <option value="classKUnixSocketAddress.html">kunixsocketaddress</option>,  <option value="classKURL.html">kurl</option>,  <option value="classKURL_1_1List.html">kurl::list</option>,  <option value="classKURLDrag.html">kurldrag</option>,  <option value="classKUser.html">kuser</option>,  <option value="classKUserGroup.html">kusergroup</option>,  <option value="classKVMAllocator.html">kvmallocator</option>,  <option value="classKWin.html">kwin</option>,  <option value="classKWin_1_1WindowInfo.html">kwin::windowinfo</option>,  <option value="classKWinModule.html">kwinmodule</option>,  <option value="classKWordMacroExpander.html">kwordmacroexpander</option>,  <option value="classKXErrorHandler.html">kxerrorhandler</option>,  <option value="classKZoneAllocator.html">kzoneallocator</option>,  <option value="classNET.html">net</option>,
</select>
</form>
</div>
-->
</div></div>
<div class="menu_box"><h2>API Dox</h2>
<div class="nav_list">
<ul>
<li><a href="../../arts/html/index.html">arts</a></li><li><a href="../../dcop/html/index.html">dcop</a></li><li><a href="../../dnssd/html/index.html">dnssd</a></li><li><a href="../../interfaces/html/index.html">interfaces</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../interfaces/kimproxy/interface/html/index.html">interface</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../interfaces/kimproxy/library/html/index.html">library</a></li><li>&nbsp;&nbsp;<a href="../../interfaces/kspeech/html/index.html">kspeech</a></li><li>&nbsp;&nbsp;<a href="../../interfaces/ktexteditor/html/index.html">ktexteditor</a></li><li><a href="../../kabc/html/index.html">kabc</a></li><li><a href="../../kate/html/index.html">kate</a></li><li><a href="../../kcmshell/html/index.html">kcmshell</a></li><li><a href="../../kdecore/html/index.html">kdecore</a></li><li><a href="../../kded/html/index.html">kded</a></li><li><a href="../../kdefx/html/index.html">kdefx</a></li><li><a href="../../kdeprint/html/index.html">kdeprint</a></li><li><a href="../../kdesu/html/index.html">kdesu</a></li><li><a href="../../kdeui/html/index.html">kdeui</a></li><li><a href="../../kdoctools/html/index.html">kdoctools</a></li><li><a href="../../khtml/html/index.html">khtml</a></li><li><a href="../../kimgio/html/index.html">kimgio</a></li><li><a href="../../kinit/html/index.html">kinit</a></li><li><a href="../../kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../kio/bookmarks/html/index.html">bookmarks</a></li><li>&nbsp;&nbsp;<a href="../../kio/httpfilter/html/index.html">httpfilter</a></li><li>&nbsp;&nbsp;<a href="../../kio/kfile/html/index.html">kfile</a></li><li>&nbsp;&nbsp;<a href="../../kio/kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../kio/kioexec/html/index.html">kioexec</a></li><li>&nbsp;&nbsp;<a href="../../kio/kpasswdserver/html/index.html">kpasswdserver</a></li><li>&nbsp;&nbsp;<a href="../../kio/kssl/html/index.html">kssl</a></li><li><a href="../../kioslave/html/index.html">kioslave</a></li><li>&nbsp;&nbsp;<a href="../../kioslave/http/html/index.html">http</a></li><li><a href="../../kjs/html/index.html">kjs</a></li><li><a href="../../kmdi/html/index.html">kmdi</a></li><li>&nbsp;&nbsp;<a href="../../kmdi/kmdi/html/index.html">kmdi</a></li><li><a href="../../knewstuff/html/index.html">knewstuff</a></li><li><a href="../../kparts/html/index.html">kparts</a></li><li><a href="../../kresources/html/index.html">kresources</a></li><li><a href="../../kspell2/html/index.html">kspell2</a></li><li><a href="../../kunittest/html/index.html">kunittest</a></li><li><a href="../../kutils/html/index.html">kutils</a></li><li><a href="../../kwallet/html/index.html">kwallet</a></li><li><a href="../../libkmid/html/index.html">libkmid</a></li><li><a href="../../libkscreensaver/html/index.html">libkscreensaver</a></li>
</ul></div></div>


        </td>
</tr>
</table>

<span class="doNotDisplay">
  <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
  <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
  <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
</span>


<div style="height: 8px"></div>

<div id="footer">
  <div id="footer_left">
    Maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;groo&#116;&#64;kde&#46;or&#x67;">Adriaan de Groot</a>
and
<a href="&#109;a&#105;&#108;&#116;&#111;&#58;w&#105;nter&#64;kde&#46;or&#x67">Allen Winter</a>.
<br/>
    KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
    <a href="http://www.kde.org/contact/impressum.php">Legal</a>
  </div>
  <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div>
</div>

<!--
WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL
BE BLOCKED INSTANTLY AND PERMANENTLY!
<a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a>
WARNING END
-->

</body>
</html>