<?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>kio/kssl: KSSL Class Reference (kio/kssl)</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="../../html/index.html">kio</a> / <a href=".">kssl</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.4.7 --> <h1>KSSL Class Reference</h1><!-- doxytag: class="KSSL" --><code>#include <<a class="el" href="kssl_8h-source.html">kssl.h</a>></code> <p> <a href="classKSSL-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> KDE SSL Wrapper ClassKDE SSL Class. <p> This class implements KDE's SSL support by wrapping OpenSSL.<p> <dl compact><dt><b>Author:</b></dt><dd>George Staikos <<a href="mailto:staikos@kde.org">staikos@kde.org</a>> </dd></dl> <dl compact><dt><b>See also:</b></dt><dd>KExtendedSocket, TCPSlaveBase </dd></dl> <p> <p> Definition at line <a class="el" href="kssl_8h-source.html#l00042">42</a> of file <a class="el" href="kssl_8h-source.html">kssl.h</a>.<table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#2be59147b83aa6e8ed03ea5af4c047ff">KSSL</a> (bool init=true)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#cf3c2d40a80e09fc74cc1e6c813fee19">~KSSL</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#ffdde4e60307ba2de41bd7a678db5970">initialize</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#e369b2b9c136b4fc1d7ff5171bdd8ee3">TLSInit</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#231d567c65be69a85c5be58a8cd9d6c3">setSession</a> (const <a class="el" href="classKSSLSession.html">KSSLSession</a> *session)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#139ce67948e3e90c52df03745207091e">close</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#1eacb2b55d699ce158af8c0b09322e8c">reInitialize</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#03ca504bc77b712e27be5ed6e18a1f14">reconfig</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#019c925a4fc9a98ffd699d34b6565fe4">setAutoReconfig</a> (bool ar)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#b0259ce081f4b6b2d7928120bf926e4e">seedWithEGD</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#07d13083665723ac4934eed2e84d0859">setSettings</a> (<a class="el" href="classKSSLSettings.html">KSSLSettings</a> *settings)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKSSLSettings.html">KSSLSettings</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#b9608b92111ea44512ffbb0531cd83e5">settings</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#bccc0e454e09a3511766a4bcb188b5c4">setClientCertificate</a> (<a class="el" href="classKSSLPKCS12.html">KSSLPKCS12</a> *pkcs)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#934c0c2998f0a06e63f3711bbf31ea2a">setProxyUse</a> (bool active, <a class="elRef" doxygen="qt.tag:" href="qstring.html">QString</a> realIP=QString::null, int realPort=0, <a class="elRef" doxygen="qt.tag:" href="qstring.html">QString</a> proxy=QString::null) KDE_DEPRECATED</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#4e8a3fab92cc86d22be2588d6d8e0063">setPeerHost</a> (<a class="elRef" doxygen="qt.tag:" href="qstring.html">QString</a> realHost=QString::null)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#bbc73f2a1ea948fed8adf951de7e3b4b">connect</a> (int sock)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#5137a886ecb0b4880cadaffb668c7506">accept</a> (int sock)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#f965115c5e352f8691e67b48be9e3128">read</a> (void *buf, int len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#cf3b01cdd797e67f1b6e8c1f36e44251">peek</a> (void *buf, int len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#67be598a77dbe4695aa7a4a36aa3d44f">write</a> (const void *buf, int len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#7ab6b430029e629bd97fad4832d806d5">pending</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKSSLConnectionInfo.html">KSSLConnectionInfo</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#a5814d35d0094035c5882e34aa6e0f34">connectionInfo</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKSSLPeerInfo.html">KSSLPeerInfo</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#8b9d0102c7c555782385a7b4cfd68102">peerInfo</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classKSSLSession.html">KSSLSession</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#9f28fb5abee9f1f8e1c9c615eed40fa4">session</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#f520c0c2520d995d1ed8e8a5cab4bf3e">reusingSession</a> () const </td></tr> <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classKSSL.html#0d25088d256aa6dcfbfd050087a74ae1">doesSSLWork</a> ()</td></tr> </table> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="2be59147b83aa6e8ed03ea5af4c047ff"></a><!-- doxytag: member="KSSL::KSSL" ref="2be59147b83aa6e8ed03ea5af4c047ff" args="(bool init=true)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">KSSL::KSSL </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>init</em> = <code>true</code> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Construct a <a class="el" href="classKSSL.html">KSSL</a> object. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>init</em> </td><td>Set this to false if you do not want this class to immediately initialize OpenSSL. </td></tr> </table> </dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00083">83</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="cf3c2d40a80e09fc74cc1e6c813fee19"></a><!-- doxytag: member="KSSL::~KSSL" ref="cf3c2d40a80e09fc74cc1e6c813fee19" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">KSSL::~KSSL </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Destroy this <a class="el" href="classKSSL.html">KSSL</a> object. <p> Does not close any socket. <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00097">97</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="5137a886ecb0b4880cadaffb668c7506"></a><!-- doxytag: member="KSSL::accept" ref="5137a886ecb0b4880cadaffb668c7506" args="(int sock)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::accept </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>sock</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Connect the SSL session to the remote host using the provided socket descriptor. <p> This is for use with an SSL server application.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>sock</em> </td><td>the socket descriptor to connect with. This must be an already connected socket. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>1 on success, 0 on error setting the file descriptor, -1 on other error. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00272">272</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="139ce67948e3e90c52df03745207091e"></a><!-- doxytag: member="KSSL::close" ref="139ce67948e3e90c52df03745207091e" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void KSSL::close </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Close the SSL session. <p> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00227">227</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="bbc73f2a1ea948fed8adf951de7e3b4b"></a><!-- doxytag: member="KSSL::connect" ref="bbc73f2a1ea948fed8adf951de7e3b4b" args="(int sock)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::connect </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>sock</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Connect the SSL session to the remote host using the provided socket descriptor. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>sock</em> </td><td>the socket descriptor to connect with. This must be an already connected socket. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>1 on success, 0 on error setting the file descriptor, -1 on other error. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00358">358</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="a5814d35d0094035c5882e34aa6e0f34"></a><!-- doxytag: member="KSSL::connectionInfo" ref="a5814d35d0094035c5882e34aa6e0f34" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classKSSLConnectionInfo.html">KSSLConnectionInfo</a> & KSSL::connectionInfo </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Obtain a reference to the connection information. <p> <dl compact><dt><b>Returns:</b></dt><dd>a reference to the connection information, valid after connected </dd></dl> <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classKSSLConnectionInfo.html">KSSLConnectionInfo</a> </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00607">607</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="0d25088d256aa6dcfbfd050087a74ae1"></a><!-- doxytag: member="KSSL::doesSSLWork" ref="0d25088d256aa6dcfbfd050087a74ae1" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::doesSSLWork </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Determine if SSL is available and works. <p> <dl compact><dt><b>Returns:</b></dt><dd>true is SSL is available and usable </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00565">565</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="ffdde4e60307ba2de41bd7a678db5970"></a><!-- doxytag: member="KSSL::initialize" ref="ffdde4e60307ba2de41bd7a678db5970" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::initialize </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Initialize OpenSSL. <p> <dl compact><dt><b>Returns:</b></dt><dd>true on success</dd></dl> This will do nothing if it is already initialized. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classKSSL.html#1eacb2b55d699ce158af8c0b09322e8c">reInitialize</a> </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00160">160</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="cf3b01cdd797e67f1b6e8c1f36e44251"></a><!-- doxytag: member="KSSL::peek" ref="cf3b01cdd797e67f1b6e8c1f36e44251" args="(void *buf, int len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::peek </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>len</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Peek at available data from the remote host via SSL. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>the buffer to read the data into. </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>the maximum length of data to read. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>the number of bytes read, 0 on an exception, or -1 on error. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00464">464</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="8b9d0102c7c555782385a7b4cfd68102"></a><!-- doxytag: member="KSSL::peerInfo" ref="8b9d0102c7c555782385a7b4cfd68102" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classKSSLPeerInfo.html">KSSLPeerInfo</a> & KSSL::peerInfo </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Obtain a reference to the information about the peer. <p> <dl compact><dt><b>Returns:</b></dt><dd>a reference to the peer information, valid after connected </dd></dl> <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classKSSLPeerInfo.html">KSSLPeerInfo</a> </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00622">622</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="7ab6b430029e629bd97fad4832d806d5"></a><!-- doxytag: member="KSSL::pending" ref="7ab6b430029e629bd97fad4832d806d5" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::pending </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Determine if data is waiting to be read. <p> <dl compact><dt><b>Returns:</b></dt><dd>-1 on error, 0 if no data is waiting, > 0 if data is waiting. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00453">453</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="f965115c5e352f8691e67b48be9e3128"></a><!-- doxytag: member="KSSL::read" ref="f965115c5e352f8691e67b48be9e3128" args="(void *buf, int len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::read </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>len</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Read data from the remote host via SSL. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>the buffer to read the data into. </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>the maximum length of data to read. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>the number of bytes read, 0 on an exception, or -1 on error. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00476">476</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="03ca504bc77b712e27be5ed6e18a1f14"></a><!-- doxytag: member="KSSL::reconfig" ref="03ca504bc77b712e27be5ed6e18a1f14" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::reconfig </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Trigger a reread of <a class="el" href="classKSSL.html">KSSL</a> configuration and <a class="el" href="classKSSL.html#1eacb2b55d699ce158af8c0b09322e8c">reInitialize()</a> <a class="el" href="classKSSL.html">KSSL</a>. <p> <dl compact><dt><b>Returns:</b></dt><dd>true on successful reinitalizations</dd></dl> If you <a class="el" href="classKSSL.html#019c925a4fc9a98ffd699d34b6565fe4">setAutoReconfig()</a> to false, then this will simply <a class="el" href="classKSSL.html#1eacb2b55d699ce158af8c0b09322e8c">reInitialize()</a> and not read in the new configuration. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classKSSL.html#019c925a4fc9a98ffd699d34b6565fe4">setAutoReconfig</a> </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00542">542</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="1eacb2b55d699ce158af8c0b09322e8c"></a><!-- doxytag: member="KSSL::reInitialize" ref="1eacb2b55d699ce158af8c0b09322e8c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::reInitialize </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Reinitialize OpenSSL. <p> <dl compact><dt><b>Returns:</b></dt><dd>true on success</dd></dl> This is not generally needed unless you are reusing the <a class="el" href="classKSSL.html">KSSL</a> object for a new session. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classKSSL.html#ffdde4e60307ba2de41bd7a678db5970">initialize</a> </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00252">252</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="f520c0c2520d995d1ed8e8a5cab4bf3e"></a><!-- doxytag: member="KSSL::reusingSession" ref="f520c0c2520d995d1ed8e8a5cab4bf3e" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::reusingSession </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Determine if we are currently reusing an SSL session ID. <p> <dl compact><dt><b>Returns:</b></dt><dd>true if we are reusing a session ID. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00665">665</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="b0259ce081f4b6b2d7928120bf926e4e"></a><!-- doxytag: member="KSSL::seedWithEGD" ref="b0259ce081f4b6b2d7928120bf926e4e" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::seedWithEGD </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> This will reseed the pseudo-random number generator with the EGD (entropy gathering daemon) if the EGD is configured and enabled. <p> You don't need to call this yourself normally.<p> <dl compact><dt><b>Returns:</b></dt><dd>0 on success </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00104">104</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="9f28fb5abee9f1f8e1c9c615eed40fa4"></a><!-- doxytag: member="KSSL::session" ref="9f28fb5abee9f1f8e1c9c615eed40fa4" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classKSSLSession.html">KSSLSession</a> * KSSL::session </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Obtain a pointer to the session information. <p> <dl compact><dt><b>Returns:</b></dt><dd>a pointer to the session information. This is valid after connected, while connected. It is deleted by the <a class="el" href="classKSSL.html">KSSL</a> object which returns it. May return 0L if no valid session exists. </dd></dl> <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classKSSLSession.html">KSSLSession</a> </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00661">661</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="019c925a4fc9a98ffd699d34b6565fe4"></a><!-- doxytag: member="KSSL::setAutoReconfig" ref="019c925a4fc9a98ffd699d34b6565fe4" args="(bool ar)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void KSSL::setAutoReconfig </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>ar</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Enable or disable automatic reconfiguration on <a class="el" href="classKSSL.html#ffdde4e60307ba2de41bd7a678db5970">initialize()</a>. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>ar</em> </td><td>Set to false in order to disable auto-reloading of the <a class="el" href="classKSSL.html">KSSL</a> configuration during <a class="el" href="classKSSL.html#ffdde4e60307ba2de41bd7a678db5970">initialize()</a>.</td></tr> </table> </dl> By default, <a class="el" href="classKSSL.html">KSSL</a> will read its configuration on <a class="el" href="classKSSL.html#ffdde4e60307ba2de41bd7a678db5970">initialize()</a>. You might want to disable this for performance reasons. <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00547">547</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="bccc0e454e09a3511766a4bcb188b5c4"></a><!-- doxytag: member="KSSL::setClientCertificate" ref="bccc0e454e09a3511766a4bcb188b5c4" args="(KSSLPKCS12 *pkcs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::setClientCertificate </td> <td>(</td> <td class="paramtype"><a class="el" href="classKSSLPKCS12.html">KSSLPKCS12</a> * </td> <td class="paramname"> <em>pkcs</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Use this to set the certificate to send to the server. <p> Do NOT delete the <a class="el" href="classKSSLPKCS12.html">KSSLPKCS12</a> object until you are done with the session. It is not defined when <a class="el" href="classKSSL.html">KSSL</a> will be done with this.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>pkcs</em> </td><td>the valid PKCS#12 object to send.</td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>true if the certificate was properly set to the session. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00627">627</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="4e8a3fab92cc86d22be2588d6d8e0063"></a><!-- doxytag: member="KSSL::setPeerHost" ref="4e8a3fab92cc86d22be2588d6d8e0063" args="(QString realHost=QString::null)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void KSSL::setPeerHost </td> <td>(</td> <td class="paramtype"><a class="elRef" doxygen="qt.tag:" href="qstring.html">QString</a> </td> <td class="paramname"> <em>realHost</em> = <code>QString::null</code> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set the peer hostname to be used for certificate verification. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>realHost</em> </td><td>the remote hostname as the user believes to be connecting to </td></tr> </table> </dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00613">613</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="934c0c2998f0a06e63f3711bbf31ea2a"></a><!-- doxytag: member="KSSL::setProxyUse" ref="934c0c2998f0a06e63f3711bbf31ea2a" args="(bool active, QString realIP=QString::null, int realPort=0, QString proxy=QString::null) KDE_DEPRECATED" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void KSSL::setProxyUse </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>active</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="elRef" doxygen="qt.tag:" href="qstring.html">QString</a> </td> <td class="paramname"> <em>realIP</em> = <code>QString::null</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>realPort</em> = <code>0</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="elRef" doxygen="qt.tag:" href="qstring.html">QString</a> </td> <td class="paramname"> <em>proxy</em> = <code>QString::null</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set the status of the connection with respect to proxies. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>active</em> </td><td>is not used </td></tr> <tr><td valign="top"></td><td valign="top"><em>realIP</em> </td><td>is the IP address of the host you're connecting to </td></tr> <tr><td valign="top"></td><td valign="top"><em>realPort</em> </td><td>is the port of the host you're connecting to </td></tr> <tr><td valign="top"></td><td valign="top"><em>proxy</em> </td><td>is the IP or hostname of the proxy server </td></tr> </table> </dl> <dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd></dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00618">618</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="231d567c65be69a85c5be58a8cd9d6c3"></a><!-- doxytag: member="KSSL::setSession" ref="231d567c65be69a85c5be58a8cd9d6c3" args="(const KSSLSession *session)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::setSession </td> <td>(</td> <td class="paramtype">const <a class="el" href="classKSSLSession.html">KSSLSession</a> * </td> <td class="paramname"> <em>session</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set an SSL session to use. <p> This deep copies the session so it doesn't have to remain valid. You need to call it after calling initialize or reInitialize. The ID is cleared in <a class="el" href="classKSSL.html#139ce67948e3e90c52df03745207091e">close()</a>.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>session</em> </td><td>A valid session to reuse. If 0L, it will clear the session ID in memory.</td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>true on success </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00206">206</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="07d13083665723ac4934eed2e84d0859"></a><!-- doxytag: member="KSSL::setSettings" ref="07d13083665723ac4934eed2e84d0859" args="(KSSLSettings *settings)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::setSettings </td> <td>(</td> <td class="paramtype"><a class="el" href="classKSSLSettings.html">KSSLSettings</a> * </td> <td class="paramname"> <em>settings</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set a new <a class="el" href="classKSSLSettings.html">KSSLSettings</a> instance as the settings. <p> This deletes the current instance of <a class="el" href="classKSSLSettings.html">KSSLSettings</a>.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>settings</em> </td><td>A new, valid settings object.</td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>true on success </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00552">552</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="b9608b92111ea44512ffbb0531cd83e5"></a><!-- doxytag: member="KSSL::settings" ref="b9608b92111ea44512ffbb0531cd83e5" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classKSSLSettings.html">KSSLSettings</a>* KSSL::settings </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> One is built by the constructor, so this will only return a NULL pointer if you set one with <a class="el" href="classKSSL.html#07d13083665723ac4934eed2e84d0859">setSettings()</a>. <p> <dl compact><dt><b>Returns:</b></dt><dd>the current settings instance </dd></dl> <p> Definition at line <a class="el" href="kssl_8h-source.html#l00159">159</a> of file <a class="el" href="kssl_8h-source.html">kssl.h</a>. </div> </div><p> <a class="anchor" name="e369b2b9c136b4fc1d7ff5171bdd8ee3"></a><!-- doxytag: member="KSSL::TLSInit" ref="e369b2b9c136b4fc1d7ff5171bdd8ee3" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool KSSL::TLSInit </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> This is used for applicationss which do STARTTLS or something similar. <p> It creates a TLS method regardless of the user's settings.<p> <dl compact><dt><b>Returns:</b></dt><dd>true if TLS is successfully initialized </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00125">125</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <a class="anchor" name="67be598a77dbe4695aa7a4a36aa3d44f"></a><!-- doxytag: member="KSSL::write" ref="67be598a77dbe4695aa7a4a36aa3d44f" args="(const void *buf, int len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int KSSL::write </td> <td>(</td> <td class="paramtype">const void * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>len</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Write data to the remote host via SSL. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>the buffer to read the data from. </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>the length of data to send from the buffer. </td></tr> </table> </dl> <dl compact><dt><b>Returns:</b></dt><dd>the number of bytes written, 0 on an exception, or -1 on error. </dd></dl> <p> Definition at line <a class="el" href="kssl_8cc-source.html#l00514">514</a> of file <a class="el" href="kssl_8cc-source.html">kssl.cc</a>. </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="kssl_8h-source.html">kssl.h</a><li><a class="el" href="kssl_8cc-source.html">kssl.cc</a></ul> </div></div> </td> </tr> <tr> <td valign="top" id="leftmenu" width="25%"> <a name="navigation"></a> <div class="menu_box"><h2>kio/kssl</h2> <div class="nav_list"> <ul><li><a href="index.html">Main Page</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="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="classKGWizardPage1.html">kgwizardpage1</option>, <option value="classKGWizardPage2.html">kgwizardpage2</option>, <option value="classKOpenSSLProxy.html">kopensslproxy</option>, <option value="classKSMIMECrypto.html">ksmimecrypto</option>, <option value="classKSSL.html">kssl</option>, <option value="classKSSLCertBox.html">ksslcertbox</option>, <option value="classKSSLCertChain.html">ksslcertchain</option>, <option value="classKSSLCertDlg.html">ksslcertdlg</option>, <option value="classKSSLCertDlgRet.html">ksslcertdlgret</option>, <option value="classKSSLCertificate.html">ksslcertificate</option>, <option value="classKSSLCertificateCache.html">ksslcertificatecache</option>, <option value="classKSSLCertificateFactory.html">ksslcertificatefactory</option>, <option value="classKSSLCertificateHome.html">ksslcertificatehome</option>, <option value="classKSSLConnectionInfo.html">ksslconnectioninfo</option>, <option value="classKSSLCSessionCache.html">ksslcsessioncache</option>, <option value="classKSSLInfoDlg.html">ksslinfodlg</option>, <option value="classKSSLKeyGen.html">ksslkeygen</option>, <option value="classKSSLPeerInfo.html">ksslpeerinfo</option>, <option value="classKSSLPKCS12.html">ksslpkcs12</option>, <option value="classKSSLPKCS7.html">ksslpkcs7</option>, <option value="classKSSLSession.html">ksslsession</option>, <option value="classKSSLSettings.html">ksslsettings</option>, <option value="classKSSLSigners.html">ksslsigners</option>, <option value="classKSSLX509Map.html">ksslx509map</option>, <option value="classKSSLX509V3.html">ksslx509v3</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> <a href="../../../interfaces/kimproxy/interface/html/index.html">interface</a></li><li> <a href="../../../interfaces/kimproxy/library/html/index.html">library</a></li><li> <a href="../../../interfaces/kspeech/html/index.html">kspeech</a></li><li> <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> <a href="../../../kio/bookmarks/html/index.html">bookmarks</a></li><li> <a href="../../../kio/httpfilter/html/index.html">httpfilter</a></li><li> <a href="../../../kio/kfile/html/index.html">kfile</a></li><li> <a href="../../../kio/kio/html/index.html">kio</a></li><li> <a href="../../../kio/kioexec/html/index.html">kioexec</a></li><li> <a href="../../../kio/kpasswdserver/html/index.html">kpasswdserver</a></li><li> <a href="../../../kio/kssl/html/index.html">kssl</a></li><li><a href="../../../kioslave/html/index.html">kioslave</a></li><li> <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> <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="mailto:groot@kde.org">Adriaan de Groot</a> and <a href="mailto:wintert@kde.org">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>