Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/secureserver_8h.html
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Fri, 22 Jan 2010 18:26:19 +0000
changeset 1 25a17d01db0c
child 6 43e37759235e
permissions -rw-r--r--
Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>TB10.1 Example Applications: examples/Base/IPC/secureserver/secureserver.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.3 -->
<h1>examples/Base/IPC/secureserver/secureserver.h File Reference</h1>
<p>
<a href="secureserver_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html">CSecureServer</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server_session.html">CSecureServerSession</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server_sub_session.html">CSecureServerSubSession</a></td></tr>

<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef">TSecureServerPanic</a> { <br>
&nbsp;&nbsp;<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4efeef6b7f2a8413e6863e2136b93228c3a">EBadRequest</a> =  1, 
<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef59f7e1b1a0e300077050b023b97ebcfb">EDescriptorNonNumeric</a>, 
<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef4dc32eda4a06b69469187275e825d99f">EMainSchedulerError</a>, 
<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef9b127171258d0cdb2748e608aaa757cb">EServerCreateServer</a>, 
<br>
&nbsp;&nbsp;<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4efd2d8074b4ac1ba9f45dbb70e6aec4144">EServerStartServer</a>, 
<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef36f3ebda4e94aedb5817599162216e69">ECreateTrapCleanup</a>, 
<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4efeebad163989c978b8edd91b6893411c0">EBadSubsessionHandle</a>, 
<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef58c52029fd13028de726c112eedc638a">ESecureServerSecurityPolicy</a>
<br>
 }</td></tr>

<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const TUint&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#bccd7aceb4760cddd96866248e305f29">KDefaultHeapSize</a> = 0x10000</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">const TInt&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a> = 5</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">const TInt&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#374f11258957fe4902b11706c8d378bf">KSecureServerRanges</a> [<a class="el" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a>]</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">const <br>
CPolicyServer::TPolicyElement&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#96a8dd34c3e8faf09bc5ef7050b5d0ce">KSecureServerElements</a> []</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">const TUint8&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#1c5ad63aafc1be2736f3a8177f4d7fd9">KSecureServerElementsIndex</a> [<a class="el" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a>]</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">const <br>
CPolicyServer::TPolicy&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="secureserver_8h.html#35e41e8fbb27c5be7ed4ce6c6cd28d2a">KSecureServerPolicy</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition in file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>
<hr><h2>Enumeration Type Documentation</h2>
<a class="anchor" name="091a5ad2956fb84c4470a59010a0d4ef"></a><!-- doxytag: member="secureserver.h::TSecureServerPanic" ref="091a5ad2956fb84c4470a59010a0d4ef" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef">TSecureServerPanic</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A set of panic numbers used when the example raises panics in response to programming errors. All panics raised by the example have the category SecureServer. <dl class="see" compact><dt><b>See also:</b></dt><dd>KTxtServer </dd></dl>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4efeef6b7f2a8413e6863e2136b93228c3a"></a><!-- doxytag: member="EBadRequest" ref="091a5ad2956fb84c4470a59010a0d4efeef6b7f2a8413e6863e2136b93228c3a" args="" -->EBadRequest</em>&nbsp;</td><td>
An undefined op code. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4ef59f7e1b1a0e300077050b023b97ebcfb"></a><!-- doxytag: member="EDescriptorNonNumeric" ref="091a5ad2956fb84c4470a59010a0d4ef59f7e1b1a0e300077050b023b97ebcfb" args="" -->EDescriptorNonNumeric</em>&nbsp;</td><td>
A descriptor containing non-numeric characters. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4ef4dc32eda4a06b69469187275e825d99f"></a><!-- doxytag: member="EMainSchedulerError" ref="091a5ad2956fb84c4470a59010a0d4ef4dc32eda4a06b69469187275e825d99f" args="" -->EMainSchedulerError</em>&nbsp;</td><td>
The Active Scheduler can not be instantiated. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4ef9b127171258d0cdb2748e608aaa757cb"></a><!-- doxytag: member="EServerCreateServer" ref="091a5ad2956fb84c4470a59010a0d4ef9b127171258d0cdb2748e608aaa757cb" args="" -->EServerCreateServer</em>&nbsp;</td><td>
The server can not be created. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4efd2d8074b4ac1ba9f45dbb70e6aec4144"></a><!-- doxytag: member="EServerStartServer" ref="091a5ad2956fb84c4470a59010a0d4efd2d8074b4ac1ba9f45dbb70e6aec4144" args="" -->EServerStartServer</em>&nbsp;</td><td>
The server can not be added to the active scheduler to receive requests. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4ef36f3ebda4e94aedb5817599162216e69"></a><!-- doxytag: member="ECreateTrapCleanup" ref="091a5ad2956fb84c4470a59010a0d4ef36f3ebda4e94aedb5817599162216e69" args="" -->ECreateTrapCleanup</em>&nbsp;</td><td>
The cleanup stack can not be created. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4efeebad163989c978b8edd91b6893411c0"></a><!-- doxytag: member="EBadSubsessionHandle" ref="091a5ad2956fb84c4470a59010a0d4efeebad163989c978b8edd91b6893411c0" args="" -->EBadSubsessionHandle</em>&nbsp;</td><td>
The object index of the sub session returns an error. </td></tr>
<tr><td valign="top"><em><a class="anchor" name="091a5ad2956fb84c4470a59010a0d4ef58c52029fd13028de726c112eedc638a"></a><!-- doxytag: member="ESecureServerSecurityPolicy" ref="091a5ad2956fb84c4470a59010a0d4ef58c52029fd13028de726c112eedc638a" args="" -->ESecureServerSecurityPolicy</em>&nbsp;</td><td>
A custom security policy violation. </td></tr>
</table>
</dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00043">43</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="bccd7aceb4760cddd96866248e305f29"></a><!-- doxytag: member="secureserver.h::KDefaultHeapSize" ref="bccd7aceb4760cddd96866248e305f29" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const TUint <a class="el" href="secureserver_8h.html#bccd7aceb4760cddd96866248e305f29">KDefaultHeapSize</a> = 0x10000          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The size of the heap to be allocated for the thread that runs the server. The constant is passed to the <a class="el" href="secureclientandserver_8h.html#f110d475e98114c0f2a42b7313af8e67">StartThread()</a> function defined in <a class="el" href="secureclientandserver_8h.html">secureclientandserver.h</a> and implemented in <a class="el" href="secureserver_8cpp.html">secureserver.cpp</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd>RThread::Create() </dd></dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00036">36</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="58c74f3d388b4e34764cddd3d0d24c92"></a><!-- doxytag: member="secureserver.h::KSecureServerRangeCount" ref="58c74f3d388b4e34764cddd3d0d24c92" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const TInt <a class="el" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a> = 5          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The server specifies 5 ranges of security policy. Each range undergoes a different security check. <dl class="see" compact><dt><b>See also:</b></dt><dd>CpolicyServer::TPolicy::iRangeCount </dd></dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00083">83</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="374f11258957fe4902b11706c8d378bf"></a><!-- doxytag: member="secureserver.h::KSecureServerRanges" ref="374f11258957fe4902b11706c8d378bf" args="[KSecureServerRangeCount]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const TInt <a class="el" href="secureserver_8h.html#374f11258957fe4902b11706c8d378bf">KSecureServerRanges</a>[<a class="el" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a>]          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Initial value:</b><div class="fragment"><pre class="fragment">
        {
        
        0,
        
        5,
        
        6,
        
        11,
        
        13
        }
</pre></div>Ordered ranges of request numbers. <dl class="see" compact><dt><b>See also:</b></dt><dd>CpolicyServer::TPolicy::iRanges </dd></dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00089">89</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="96a8dd34c3e8faf09bc5ef7050b5d0ce"></a><!-- doxytag: member="secureserver.h::KSecureServerElements" ref="96a8dd34c3e8faf09bc5ef7050b5d0ce" args="[]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const CPolicyServer::TPolicyElement <a class="el" href="secureserver_8h.html#96a8dd34c3e8faf09bc5ef7050b5d0ce">KSecureServerElements</a>[]          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Initial value:</b><div class="fragment"><pre class="fragment">
        {
        
        _INIT_SECURITY_POLICY_S0(0x70fffff0),
        
        {_INIT_SECURITY_POLICY_C1(ECapabilityReadDeviceData | ECapabilityWriteDeviceData), CPolicyServer::EFailClient}
        }
</pre></div>An array containing the unique set of policies used in this example. <dl class="see" compact><dt><b>See also:</b></dt><dd>CpolicyServer::TPolicy::iElements </dd></dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00117">117</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="1c5ad63aafc1be2736f3a8177f4d7fd9"></a><!-- doxytag: member="secureserver.h::KSecureServerElementsIndex" ref="1c5ad63aafc1be2736f3a8177f4d7fd9" args="[KSecureServerRangeCount]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const TUint8 <a class="el" href="secureserver_8h.html#1c5ad63aafc1be2736f3a8177f4d7fd9">KSecureServerElementsIndex</a>[<a class="el" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a>]          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Initial value:</b><div class="fragment"><pre class="fragment">
                {
                
                CPolicyServer::EAlwaysPass,
                
                0,
                
                CPolicyServer::ECustomCheck,
                
                1,
                
                CPolicyServer::ENotSupported
                }
</pre></div>An array of TUint8 values that specify the action to take for each range in KSecureServerRanges array. <dl class="see" compact><dt><b>See also:</b></dt><dd>CpolicyServer::TPolicy::iElementsIndex </dd></dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00133">133</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="35e41e8fbb27c5be7ed4ce6c6cd28d2a"></a><!-- doxytag: member="secureserver.h::KSecureServerPolicy" ref="35e41e8fbb27c5be7ed4ce6c6cd28d2a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const CPolicyServer::TPolicy <a class="el" href="secureserver_8h.html#35e41e8fbb27c5be7ed4ce6c6cd28d2a">KSecureServerPolicy</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Initial value:</b><div class="fragment"><pre class="fragment">
        {
        
        CPolicyServer::EAlwaysPass,
        <a class="code" href="secureserver_8h.html#58c74f3d388b4e34764cddd3d0d24c92">KSecureServerRangeCount</a>,
        <a class="code" href="secureserver_8h.html#374f11258957fe4902b11706c8d378bf">KSecureServerRanges</a>,
        <a class="code" href="secureserver_8h.html#1c5ad63aafc1be2736f3a8177f4d7fd9">KSecureServerElementsIndex</a>,
        <a class="code" href="secureserver_8h.html#96a8dd34c3e8faf09bc5ef7050b5d0ce">KSecureServerElements</a>
        }
</pre></div>The security policy of the server. This is passed to the constructor of the policy server. In this example, this is the constructor of the <a class="el" href="class_c_secure_server.html">CSecureServer</a> class. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="class_c_secure_server.html">CSecureServer</a> </dd></dl>

<p>Definition at line <a class="el" href="secureserver_8h-source.html#l00167">167</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>

</div>
</div><p>
<hr size="1"><address style="text-align: right;"><small>Generated on Thu Jan 21 10:33:02 2010 for TB10.1 Example Applications by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
</body>
</html>