Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > f2ccf6b0630b8c81810a0107f1c7ff67 > files > 39

eet-devel-1.3.2-1.fc14.i686.rpm

<html>
<head>
    <title>Eet: Cipher, Identity and Protection Mechanisms</title>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8">
    <meta name="author" content="Andres Blanc" >
    
    <link rel="icon" href="img/favicon.png" type="image/x-icon">
    <link rel="shortcut icon" href="img/favicon.png" type="image/x-icon">
    <link rel="icon" href="img/favicon.png" type="image/ico">
    <link rel="shortcut icon" href="img/favicon.png" type="image/ico">

    <link rel="stylesheet" type="text/css" media="screen" href="e.css">
    <link rel="stylesheet" type="text/css" media="screen" href="edoxy.css">
</head>

<body>

<div id="container">

<div id="header">
<div class="layout">
    
    <h1><span>Enlightenment</span></h1>
    <h2><span>Beauty at your fingertips</span></h2>

    <div class="menu-container">
        <div class="menu">
            <ul>
	        <li class="current"><a href="http://web.enlightenment.org/p.php?p=docs">Docs</a></li>
                <li><a href="http://trac.enlightenment.org/e">Tracker</a></li>
                <li><a href="http://www.enlightenment.org/p.php?p=contact">Contact</a></li>
                <li><a href="http://www.enlightenment.org/p.php?p=contribute">Contribute</a></li>
                <li><a href="http://www.enlightenment.org/p.php?p=support">Support</a></li>
                <li><a href="http://www.enlightenment.org/p.php?p=download">Download</a></li>
                <li><a href="http://www.enlightenment.org/p.php?p=about">About</a></li>
                <li><a href="http://www.enlightenment.org/p.php?p=news">News</a></li>
                <li><a href="http://www.enlightenment.org/">Home</a></li>
            </ul>
        </div>
    </div>

    <div class="doxytitle">
        Eet Documentation <small>at 2 Jul 2010</small>
    </div>

    <div class="menu-container">
        <div class="submenu">
            <ul class="current">
                <li><a href="Examples.html">Examples</a></li>
                <li><a href="files.html">Files</a></li>
                <li><a href="modules.html">Modules</a></li>
                <li><a href="globals.html">Globals</a></li>
                <li><a href="pages.html">Related Pages</a></li>
	        <li class="current"><a href="index.html">Main Page</a></li>
            </ul>
        </div>
    </div>


    <div class="clear"></div>
</div>
</div>

<div id="content">
<div class="layout">
<!-- Generated by Doxygen 1.6.2-20100208 -->
<div class="contents">
<h1>Cipher, Identity and Protection Mechanisms</h1>
<p>Eet allows one to protect entries of an <a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7" title="Opaque handle that defines an Eet file (or memory).">Eet_File</a> individually.  
<a href="#_details">More...</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa958627af70e4ee4c54adba8805da30d"></a><!-- doxytag: member="Eet_Cipher_Group::Eet_Key" ref="gaa958627af70e4ee4c54adba8805da30d" args="" -->
typedef struct _Eet_Key&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Opaque handle that defines an identity (also known as key) in Eet's cipher system. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#ga874d97b532dbdc0a14bf12aa9a5202d5">Eet_Key_Password_Callback</a> )(char *buffer, int size, int rwflag, void *data)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Callback used to request if needed the password of a private key.  <a href="#ga874d97b532dbdc0a14bf12aa9a5202d5"></a><br/></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI <a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#gae8be5ad35c585cdf5034309bc97f1af8">eet_identity_open</a> (const char *certificate_file, const char *private_key_file, <a class="el" href="group__Eet__Cipher__Group.html#ga874d97b532dbdc0a14bf12aa9a5202d5">Eet_Key_Password_Callback</a> cb)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create an Eet_Key needed for signing an eet file.  <a href="#gae8be5ad35c585cdf5034309bc97f1af8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#gaa8b2e329d0ecdb55b564e1aa70ba557f">eet_identity_close</a> (<a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *key)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close and release all ressource used by an Eet_Key.  <a href="#gaa8b2e329d0ecdb55b564e1aa70ba557f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI <a class="el" href="group__Eet__Group.html#gab002b16c58e2a62fc7981581647a0092">Eet_Error</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#ga687984e5f508017c01f6d22a203fce16">eet_identity_set</a> (<a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *ef, <a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *key)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a key to sign a file.  <a href="#ga687984e5f508017c01f6d22a203fce16"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#ga846b1e0f0f4a1a9c7ab9a4fc55728534">eet_identity_print</a> (<a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *key, FILE *out)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Display both private and public key of an Eet_Key.  <a href="#ga846b1e0f0f4a1a9c7ab9a4fc55728534"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI const void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#ga6f92a1276ed7e87d5a7ba58b7943df7a">eet_identity_x509</a> (<a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *ef, int *der_length)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the x509 der certificate associated with an Eet_File.  <a href="#ga6f92a1276ed7e87d5a7ba58b7943df7a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI const void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#gacabba4892e4492464fe29309508a8c99">eet_identity_signature</a> (<a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *ef, int *signature_length)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the raw signature associated with an Eet_File.  <a href="#gacabba4892e4492464fe29309508a8c99"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI const void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#gacb54b5441fc049d52b4e3f212087c8a0">eet_identity_sha1</a> (<a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *ef, int *sha1_length)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the SHA1 associated with a file.  <a href="#gacb54b5441fc049d52b4e3f212087c8a0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">EAPI void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Eet__Cipher__Group.html#ga131e4a43a0ae98dc31a9a642ada33357">eet_identity_certificate_print</a> (const unsigned char *certificate, int der_length, FILE *out)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Display the x509 der certificate to out.  <a href="#ga131e4a43a0ae98dc31a9a642ada33357"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Eet allows one to protect entries of an <a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7" title="Opaque handle that defines an Eet file (or memory).">Eet_File</a> individually. </p>
<p>This may be used to ensure data was not tampered or that third party does not read your data.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__Eet__File__Cipher__Group.html">Eet File Ciphered Main Functions</a> </dd>
<dd>
<a class="el" href="group__Eet__File__Image__Cipher__Group.html">Image Store and Load using a Cipher</a> </dd></dl>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="ga874d97b532dbdc0a14bf12aa9a5202d5"></a><!-- doxytag: member="Eet.h::Eet_Key_Password_Callback" ref="ga874d97b532dbdc0a14bf12aa9a5202d5" args=")(char *buffer, int size, int rwflag, void *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int(* <a class="el" href="group__Eet__Cipher__Group.html#ga874d97b532dbdc0a14bf12aa9a5202d5">Eet_Key_Password_Callback</a>)(char *buffer, int size, int rwflag, void *data)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Callback used to request if needed the password of a private key. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>the buffer where to store the password. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>the maximum password size (size of buffer, including '\0'). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>rwflag</em>&nbsp;</td><td>if the buffer is also readable or just writable. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>currently unused, may contain some context in future. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>1 on success and password was set to <code>buffer</code>, 0 on failure.</dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga131e4a43a0ae98dc31a9a642ada33357"></a><!-- doxytag: member="Eet.h::eet_identity_certificate_print" ref="ga131e4a43a0ae98dc31a9a642ada33357" args="(const unsigned char *certificate, int der_length, FILE *out)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI void eet_identity_certificate_print </td>
          <td>(</td>
          <td class="paramtype">const unsigned char *&nbsp;</td>
          <td class="paramname"> <em>certificate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>der_length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&nbsp;</td>
          <td class="paramname"> <em>out</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Display the x509 der certificate to out. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>certificate</em>&nbsp;</td><td>the x509 certificate to print </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>der_length</em>&nbsp;</td><td>The length the certificate. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>where to print.</td></tr>
  </table>
  </dd>
</dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="gaa8b2e329d0ecdb55b564e1aa70ba557f"></a><!-- doxytag: member="Eet.h::eet_identity_close" ref="gaa8b2e329d0ecdb55b564e1aa70ba557f" args="(Eet_Key *key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI void eet_identity_close </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *&nbsp;</td>
          <td class="paramname"> <em>key</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Close and release all ressource used by an Eet_Key. </p>
<p>An reference counter prevent it from being freed until all file using it are also closed.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>the key handle to close and free resources.</td></tr>
  </table>
  </dd>
</dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="gae8be5ad35c585cdf5034309bc97f1af8"></a><!-- doxytag: member="Eet.h::eet_identity_open" ref="gae8be5ad35c585cdf5034309bc97f1af8" args="(const char *certificate_file, const char *private_key_file, Eet_Key_Password_Callback cb)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI <a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a>* eet_identity_open </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>certificate_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>private_key_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Eet__Cipher__Group.html#ga874d97b532dbdc0a14bf12aa9a5202d5">Eet_Key_Password_Callback</a>&nbsp;</td>
          <td class="paramname"> <em>cb</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create an Eet_Key needed for signing an eet file. </p>
<p>The certificate should provide the public that match the private key. No verification is done to ensure that.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>certificate_file</em>&nbsp;</td><td>The file where to find the certificate. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>private_key_file</em>&nbsp;</td><td>The file that contains the private key. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cb</em>&nbsp;</td><td>Function to callback if password is required to unlock private key. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A key handle to use, or <code>NULL</code> on failure.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__Eet__Cipher__Group.html#gaa8b2e329d0ecdb55b564e1aa70ba557f" title="Close and release all ressource used by an Eet_Key.">eet_identity_close()</a></dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ga846b1e0f0f4a1a9c7ab9a4fc55728534"></a><!-- doxytag: member="Eet.h::eet_identity_print" ref="ga846b1e0f0f4a1a9c7ab9a4fc55728534" args="(Eet_Key *key, FILE *out)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI void eet_identity_print </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *&nbsp;</td>
          <td class="paramname"> <em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&nbsp;</td>
          <td class="paramname"> <em>out</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Display both private and public key of an Eet_Key. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>the handle to print. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>where to print.</td></tr>
  </table>
  </dd>
</dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ga687984e5f508017c01f6d22a203fce16"></a><!-- doxytag: member="Eet.h::eet_identity_set" ref="ga687984e5f508017c01f6d22a203fce16" args="(Eet_File *ef, Eet_Key *key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI <a class="el" href="group__Eet__Group.html#gab002b16c58e2a62fc7981581647a0092">Eet_Error</a> eet_identity_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *&nbsp;</td>
          <td class="paramname"> <em>ef</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__Eet__Cipher__Group.html#gaa958627af70e4ee4c54adba8805da30d">Eet_Key</a> *&nbsp;</td>
          <td class="paramname"> <em>key</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set a key to sign a file. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ef</em>&nbsp;</td><td>the file to set the identity. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>the key handle to set as identity. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__Eet__Group.html#ggaa9142d865094701672375485d4a6284da624f64fe9803c1a4229a60214d675fa4" title="Given object or handle is NULL or invalid.">EET_ERROR_BAD_OBJECT</a> if <code>ef</code> is invalid or <a class="el" href="group__Eet__Group.html#ggaa9142d865094701672375485d4a6284da2e3af24c66d0decf7c97fe4e5a7f75d4" title="No error, it&#39;s all fine!">EET_ERROR_NONE</a> on success.</dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

<p>References <a class="el" href="Eet_8h_source.html#l00095">EET_ERROR_BAD_OBJECT</a>, and <a class="el" href="Eet_8h_source.html#l00094">EET_ERROR_NONE</a>.</p>

</div>
</div>
<a class="anchor" id="gacb54b5441fc049d52b4e3f212087c8a0"></a><!-- doxytag: member="Eet.h::eet_identity_sha1" ref="gacb54b5441fc049d52b4e3f212087c8a0" args="(Eet_File *ef, int *sha1_length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI const void* eet_identity_sha1 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *&nbsp;</td>
          <td class="paramname"> <em>ef</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>sha1_length</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the SHA1 associated with a file. </p>
<p>Could be the one used to sign the data or if the data where not signed, it will be the SHA1 of the file.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ef</em>&nbsp;</td><td>The file handle to query. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>sha1_length</em>&nbsp;</td><td>The length of returned data, may be <code>NULL</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the associated SHA1 or <code>NULL</code> on error.</dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="gacabba4892e4492464fe29309508a8c99"></a><!-- doxytag: member="Eet.h::eet_identity_signature" ref="gacabba4892e4492464fe29309508a8c99" args="(Eet_File *ef, int *signature_length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI const void* eet_identity_signature </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *&nbsp;</td>
          <td class="paramname"> <em>ef</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>signature_length</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the raw signature associated with an Eet_File. </p>
<p>Will return NULL if the file is not signed.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ef</em>&nbsp;</td><td>The file handle to query. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>signature_length</em>&nbsp;</td><td>The length of returned data, may be <code>NULL</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the raw signature or <code>NULL</code> on error. </dd></dl>

</div>
</div>
<a class="anchor" id="ga6f92a1276ed7e87d5a7ba58b7943df7a"></a><!-- doxytag: member="Eet.h::eet_identity_x509" ref="ga6f92a1276ed7e87d5a7ba58b7943df7a" args="(Eet_File *ef, int *der_length)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">EAPI const void* eet_identity_x509 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Eet__File__Group.html#ga8d9779184a9870c1a225f1f40c76e8a7">Eet_File</a> *&nbsp;</td>
          <td class="paramname"> <em>ef</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>der_length</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the x509 der certificate associated with an Eet_File. </p>
<p>Will return NULL if the file is not signed.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ef</em>&nbsp;</td><td>The file handle to query. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>der_length</em>&nbsp;</td><td>The length of returned data, may be <code>NULL</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the x509 certificate or <code>NULL</code> on error.</dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>1.2.0 </dd></dl>

</div>
</div>
</div>
 
 <div id="push"></div>
 </div> <!-- #content -->
  </div> <!-- .layout -->
 
 </div> <!-- #container -->
 
 
  <div id="footer">
    <table><tr>
      <td class="poweredby"><img src="doxygen.png"></td>
      <td class="copyright">Copyright &copy;2010 Enlightenment</td>
      <td class="generated">Docs generated Fri Jul 2 11:41:28 2010</td>
    </tr></table>
  </div>


</body>
</html>