Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/class_c_secure_server.html
changeset 1 25a17d01db0c
child 6 43e37759235e
equal deleted inserted replaced
0:89d6a7a84779 1:25a17d01db0c
       
     1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
       
     2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
       
     3 <title>TB10.1 Example Applications: CSecureServer Class Reference</title>
       
     4 <link href="doxygen.css" rel="stylesheet" type="text/css">
       
     5 <link href="tabs.css" rel="stylesheet" type="text/css">
       
     6 </head><body>
       
     7 <!-- Generated by Doxygen 1.5.3 -->
       
     8 <h1>CSecureServer Class Reference</h1><!-- doxytag: class="CSecureServer" -->
       
     9 <p>
       
    10 <a href="class_c_secure_server-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
       
    11 <tr><td></td></tr>
       
    12 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
       
    13 <tr><td class="memItemLeft" nowrap align="right" valign="top">CSession2 *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#1f53e7eb732c048d41f7a74069c971bf">NewSessionL</a> (const TVersion &amp;aVersion, const RMessage2 &amp;aMessage) const </td></tr>
       
    14 
       
    15 <tr><td class="memItemLeft" nowrap align="right" valign="top">CPolicyServer::TCustomResult&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#cf179b4c14ae84701779f659c9e4488f">CustomSecurityCheckL</a> (const RMessage2 &amp;aMsg, TInt &amp;aAction, TSecurityInfo &amp;aMissing)</td></tr>
       
    16 
       
    17 <tr><td class="memItemLeft" nowrap align="right" valign="top">CObjectCon *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#65a88f3753c16940867d3b277608bdac">NewContainerL</a> ()</td></tr>
       
    18 
       
    19 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#e6b5aba2bd5e4b8bffaa4febbe874e37">RemoveContainer</a> (CObjectCon *aCon)</td></tr>
       
    20 
       
    21 <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#42202b0478075c59aa39dca27b1cb48d">~CSecureServer</a> ()</td></tr>
       
    22 
       
    23 <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
       
    24 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="class_c_secure_server.html">CSecureServer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#3d4524a4e4accf80a32364780ae43e91">NewL</a> (CActive::TPriority aActiveObjectPriority)</td></tr>
       
    25 
       
    26 <tr><td class="memItemLeft" nowrap align="right" valign="top">static TInt&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#97b0ca5c5966bba8c0cee269d1909b75">ThreadFunction</a> (TAny *aStarted)</td></tr>
       
    27 
       
    28 <tr><td class="memItemLeft" nowrap align="right" valign="top">static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_secure_server.html#c8c14996a41c6d897efaee0fa7d12cd2">PanicServer</a> (<a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef">TSecureServerPanic</a> aPanic)</td></tr>
       
    29 
       
    30 </table>
       
    31 <hr><a name="_details"></a><h2>Detailed Description</h2>
       
    32 The class that represents the secure server.<p>
       
    33 The server starts when the first client connects. When the server starts, it prepares:<ul>
       
    34 <li>the active scheduler</li><li>the server active object</li><li>the object container index which produces object containers for each session.</li></ul>
       
    35 <p>
       
    36 <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="class_c_secure_server.html">CSecureServer</a> </dd></dl>
       
    37 
       
    38 <p>Definition at line <a class="el" href="secureserver_8h-source.html#l00190">190</a> of file <a class="el" href="secureserver_8h-source.html">secureserver.h</a>.</p>
       
    39 <hr><h2>Constructor &amp; Destructor Documentation</h2>
       
    40 <a class="anchor" name="42202b0478075c59aa39dca27b1cb48d"></a><!-- doxytag: member="CSecureServer::~CSecureServer" ref="42202b0478075c59aa39dca27b1cb48d" args="()" -->
       
    41 <div class="memitem">
       
    42 <div class="memproto">
       
    43       <table class="memname">
       
    44         <tr>
       
    45           <td class="memname">CSecureServer::~CSecureServer           </td>
       
    46           <td>(</td>
       
    47           <td class="paramname">          </td>
       
    48           <td>&nbsp;)&nbsp;</td>
       
    49           <td width="100%"></td>
       
    50         </tr>
       
    51       </table>
       
    52 </div>
       
    53 <div class="memdoc">
       
    54 
       
    55 <p>
       
    56 Destructor. 
       
    57 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00098">98</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
    58 
       
    59 </div>
       
    60 </div><p>
       
    61 <hr><h2>Member Function Documentation</h2>
       
    62 <a class="anchor" name="1f53e7eb732c048d41f7a74069c971bf"></a><!-- doxytag: member="CSecureServer::NewSessionL" ref="1f53e7eb732c048d41f7a74069c971bf" args="(const TVersion &amp;aVersion, const RMessage2 &amp;aMessage) const " -->
       
    63 <div class="memitem">
       
    64 <div class="memproto">
       
    65       <table class="memname">
       
    66         <tr>
       
    67           <td class="memname">CSession2 * CSecureServer::NewSessionL           </td>
       
    68           <td>(</td>
       
    69           <td class="paramtype">const TVersion &amp;&nbsp;</td>
       
    70           <td class="paramname"> <em>aVersion</em>, </td>
       
    71         </tr>
       
    72         <tr>
       
    73           <td class="paramkey"></td>
       
    74           <td></td>
       
    75           <td class="paramtype">const RMessage2 &amp;&nbsp;</td>
       
    76           <td class="paramname"> <em>aMessage</em></td><td>&nbsp;</td>
       
    77         </tr>
       
    78         <tr>
       
    79           <td></td>
       
    80           <td>)</td>
       
    81           <td></td><td></td><td width="100%"> const</td>
       
    82         </tr>
       
    83       </table>
       
    84 </div>
       
    85 <div class="memdoc">
       
    86 
       
    87 <p>
       
    88 Creates a server-side session object. <dl compact><dt><b>Parameters:</b></dt><dd>
       
    89   <table border="0" cellspacing="2" cellpadding="0">
       
    90     <tr><td valign="top"></td><td valign="top"><em>aVersion</em>&nbsp;</td><td>The version information supplied by the client. </td></tr>
       
    91     <tr><td valign="top"></td><td valign="top"><em>aMessage</em>&nbsp;</td><td>Represents the details of the client request that is requesting the creation of the session. </td></tr>
       
    92   </table>
       
    93 </dl>
       
    94 
       
    95 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00108">108</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
    96 
       
    97 </div>
       
    98 </div><p>
       
    99 <a class="anchor" name="3d4524a4e4accf80a32364780ae43e91"></a><!-- doxytag: member="CSecureServer::NewL" ref="3d4524a4e4accf80a32364780ae43e91" args="(CActive::TPriority aActiveObjectPriority)" -->
       
   100 <div class="memitem">
       
   101 <div class="memproto">
       
   102       <table class="memname">
       
   103         <tr>
       
   104           <td class="memname"><a class="el" href="class_c_secure_server.html">CSecureServer</a> * CSecureServer::NewL           </td>
       
   105           <td>(</td>
       
   106           <td class="paramtype">CActive::TPriority&nbsp;</td>
       
   107           <td class="paramname"> <em>aActiveObjectPriority</em>          </td>
       
   108           <td>&nbsp;)&nbsp;</td>
       
   109           <td width="100%"><code> [static]</code></td>
       
   110         </tr>
       
   111       </table>
       
   112 </div>
       
   113 <div class="memdoc">
       
   114 
       
   115 <p>
       
   116 Creates a new server object and returns the handle to it. <dl compact><dt><b>Parameters:</b></dt><dd>
       
   117   <table border="0" cellspacing="2" cellpadding="0">
       
   118     <tr><td valign="top"></td><td valign="top"><em>aActiveObjectPriority</em>&nbsp;</td><td>The priority of the secure server. The secure server is an active object. It is derived from CActive and the priority value is the priority of the active object. </td></tr>
       
   119   </table>
       
   120 </dl>
       
   121 <dl class="see" compact><dt><b>See also:</b></dt><dd>CActive </dd></dl>
       
   122 
       
   123 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00040">40</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
   124 
       
   125 </div>
       
   126 </div><p>
       
   127 <a class="anchor" name="97b0ca5c5966bba8c0cee269d1909b75"></a><!-- doxytag: member="CSecureServer::ThreadFunction" ref="97b0ca5c5966bba8c0cee269d1909b75" args="(TAny *aStarted)" -->
       
   128 <div class="memitem">
       
   129 <div class="memproto">
       
   130       <table class="memname">
       
   131         <tr>
       
   132           <td class="memname">TInt CSecureServer::ThreadFunction           </td>
       
   133           <td>(</td>
       
   134           <td class="paramtype">TAny *&nbsp;</td>
       
   135           <td class="paramname"> <em>aStarted</em>          </td>
       
   136           <td>&nbsp;)&nbsp;</td>
       
   137           <td width="100%"><code> [static]</code></td>
       
   138         </tr>
       
   139       </table>
       
   140 </div>
       
   141 <div class="memdoc">
       
   142 
       
   143 <p>
       
   144 The thread function that makes the server ready for use. Symbian platform calls the function when the server thread starts to run. This is a static function, and:<ul>
       
   145 <li>creates the server object</li><li>creates the server’s active scheduler</li><li>starts the server’s active scheduler <dl class="return" compact><dt><b>Returns:</b></dt><dd>KErrNone. </dd></dl>
       
   146 </li></ul>
       
   147 <dl compact><dt><b>Parameters: </b></dt><dd>
       
   148 <table border="0" cellspacing="2" cellpadding="0">
       
   149 <tr><td valign="top"><em>aStarted</em>&nbsp;</td><td>
       
   150 aStarted </td></tr>
       
   151 </table>
       
   152 </dl>
       
   153 <p>Definition at line <a class="el" href="secureserver_8cpp-source.html#l00034">34</a> of file <a class="el" href="secureserver_8cpp-source.html">secureserver.cpp</a>.</p>
       
   154 
       
   155 </div>
       
   156 </div><p>
       
   157 <a class="anchor" name="c8c14996a41c6d897efaee0fa7d12cd2"></a><!-- doxytag: member="CSecureServer::PanicServer" ref="c8c14996a41c6d897efaee0fa7d12cd2" args="(TSecureServerPanic aPanic)" -->
       
   158 <div class="memitem">
       
   159 <div class="memproto">
       
   160       <table class="memname">
       
   161         <tr>
       
   162           <td class="memname">void CSecureServer::PanicServer           </td>
       
   163           <td>(</td>
       
   164           <td class="paramtype"><a class="el" href="secureserver_8h.html#091a5ad2956fb84c4470a59010a0d4ef">TSecureServerPanic</a>&nbsp;</td>
       
   165           <td class="paramname"> <em>aPanic</em>          </td>
       
   166           <td>&nbsp;)&nbsp;</td>
       
   167           <td width="100%"><code> [static]</code></td>
       
   168         </tr>
       
   169       </table>
       
   170 </div>
       
   171 <div class="memdoc">
       
   172 
       
   173 <p>
       
   174 Panics the server. <dl compact><dt><b>Parameters:</b></dt><dd>
       
   175   <table border="0" cellspacing="2" cellpadding="0">
       
   176     <tr><td valign="top"></td><td valign="top"><em>aPanic</em>&nbsp;</td><td>The reason for the panic. </td></tr>
       
   177   </table>
       
   178 </dl>
       
   179 
       
   180 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00029">29</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
   181 
       
   182 </div>
       
   183 </div><p>
       
   184 <a class="anchor" name="cf179b4c14ae84701779f659c9e4488f"></a><!-- doxytag: member="CSecureServer::CustomSecurityCheckL" ref="cf179b4c14ae84701779f659c9e4488f" args="(const RMessage2 &amp;aMsg, TInt &amp;aAction, TSecurityInfo &amp;aMissing)" -->
       
   185 <div class="memitem">
       
   186 <div class="memproto">
       
   187       <table class="memname">
       
   188         <tr>
       
   189           <td class="memname">CPolicyServer::TCustomResult CSecureServer::CustomSecurityCheckL           </td>
       
   190           <td>(</td>
       
   191           <td class="paramtype">const RMessage2 &amp;&nbsp;</td>
       
   192           <td class="paramname"> <em>aMsg</em>, </td>
       
   193         </tr>
       
   194         <tr>
       
   195           <td class="paramkey"></td>
       
   196           <td></td>
       
   197           <td class="paramtype">TInt &amp;&nbsp;</td>
       
   198           <td class="paramname"> <em>aAction</em>, </td>
       
   199         </tr>
       
   200         <tr>
       
   201           <td class="paramkey"></td>
       
   202           <td></td>
       
   203           <td class="paramtype">TSecurityInfo &amp;&nbsp;</td>
       
   204           <td class="paramname"> <em>aMissing</em></td><td>&nbsp;</td>
       
   205         </tr>
       
   206         <tr>
       
   207           <td></td>
       
   208           <td>)</td>
       
   209           <td></td><td></td><td width="100%"></td>
       
   210         </tr>
       
   211       </table>
       
   212 </div>
       
   213 <div class="memdoc">
       
   214 
       
   215 <p>
       
   216 Performs a custom security check.<p>
       
   217 The policy server framework calls this function when a client sends requests to the server that are identified by the five enum values <a class="el" href="secureclientandserver_8h.html#19a3f57ac2d7b8518f6682573ac637c21b3935c0f5f79f45a27de1fa32654e17">TSecureServerRequest::ESecureServerIncrease</a> to <a class="el" href="secureclientandserver_8h.html#19a3f57ac2d7b8518f6682573ac637c2a9d1e980d9ed0a23782b98761d7e57d7">TSecureServerRequest::ESecureServerReset</a>. The request numbers match the client-side requests identified by the functions:<ul>
       
   218 <li><a class="el" href="class_r_secure_sub_session.html#a33648763c953202fb21f037b2d413e9">RSecureSubSession::Increase()</a>;</li><li><a class="el" href="class_r_secure_sub_session.html#398e6146ebf438ee1f0b24c77b5b767c">RSecureSubSession::Decrease()</a>;</li><li>RSecureSubSession::IncreaseBy(TInt anInt);</li><li>RSecureSubSession::DecreaseBy(TInt anInt);</li><li><a class="el" href="class_r_secure_sub_session.html#9ce8394ea263eaba7f462bc2fdc62127">RSecureSubSession::Reset()</a>;</li></ul>
       
   219 <p>
       
   220 See the const arrays defined in <a class="el" href="secureserver_8h.html">secureserver.h</a>. See the use of CPolicyServer::ECustomCheck in the third element in the array KSecureServerElementsIndex in <a class="el" href="secureserver_8h.html">secureserver.h</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
       
   221   <table border="0" cellspacing="2" cellpadding="0">
       
   222     <tr><td valign="top"></td><td valign="top"><em>aMsg</em>&nbsp;</td><td>The message to check. </td></tr>
       
   223     <tr><td valign="top"></td><td valign="top"><em>aAction</em>&nbsp;</td><td>A reference to the action to take if the security check fails. </td></tr>
       
   224     <tr><td valign="top"></td><td valign="top"><em>aMissing</em>&nbsp;</td><td>A reference to the list of security attributes missing from the checked process. </td></tr>
       
   225   </table>
       
   226 </dl>
       
   227 <dl class="return" compact><dt><b>Returns:</b></dt><dd>A value from TCustomResult. </dd></dl>
       
   228 
       
   229 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00136">136</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
   230 
       
   231 </div>
       
   232 </div><p>
       
   233 <a class="anchor" name="65a88f3753c16940867d3b277608bdac"></a><!-- doxytag: member="CSecureServer::NewContainerL" ref="65a88f3753c16940867d3b277608bdac" args="()" -->
       
   234 <div class="memitem">
       
   235 <div class="memproto">
       
   236       <table class="memname">
       
   237         <tr>
       
   238           <td class="memname">CObjectCon * CSecureServer::NewContainerL           </td>
       
   239           <td>(</td>
       
   240           <td class="paramname">          </td>
       
   241           <td>&nbsp;)&nbsp;</td>
       
   242           <td width="100%"></td>
       
   243         </tr>
       
   244       </table>
       
   245 </div>
       
   246 <div class="memdoc">
       
   247 
       
   248 <p>
       
   249 Creates a new object container when creating sub sessions. <dl class="return" compact><dt><b>Returns:</b></dt><dd>An object container. </dd></dl>
       
   250 
       
   251 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00053">53</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
   252 
       
   253 </div>
       
   254 </div><p>
       
   255 <a class="anchor" name="e6b5aba2bd5e4b8bffaa4febbe874e37"></a><!-- doxytag: member="CSecureServer::RemoveContainer" ref="e6b5aba2bd5e4b8bffaa4febbe874e37" args="(CObjectCon *aCon)" -->
       
   256 <div class="memitem">
       
   257 <div class="memproto">
       
   258       <table class="memname">
       
   259         <tr>
       
   260           <td class="memname">void CSecureServer::RemoveContainer           </td>
       
   261           <td>(</td>
       
   262           <td class="paramtype">CObjectCon *&nbsp;</td>
       
   263           <td class="paramname"> <em>aCon</em>          </td>
       
   264           <td>&nbsp;)&nbsp;</td>
       
   265           <td width="100%"></td>
       
   266         </tr>
       
   267       </table>
       
   268 </div>
       
   269 <div class="memdoc">
       
   270 
       
   271 <p>
       
   272 Removes an object from the object container. <dl compact><dt><b>Parameters:</b></dt><dd>
       
   273   <table border="0" cellspacing="2" cellpadding="0">
       
   274     <tr><td valign="top"></td><td valign="top"><em>aCon</em>&nbsp;</td><td>A pointer to the object to be removed from the container. </td></tr>
       
   275   </table>
       
   276 </dl>
       
   277 
       
   278 <p>Definition at line <a class="el" href="secureserverccountserver_8cpp-source.html#l00062">62</a> of file <a class="el" href="secureserverccountserver_8cpp-source.html">secureserverccountserver.cpp</a>.</p>
       
   279 
       
   280 </div>
       
   281 </div><p>
       
   282 <hr size="1"><address style="text-align: right;"><small>Generated on Thu Jan 21 10:33:07 2010 for TB10.1 Example Applications by&nbsp;
       
   283 <a href="http://www.doxygen.org/index.html">
       
   284 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
       
   285 </body>
       
   286 </html>