Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 408d955294ed7b2b439ee2b2a9e349da > files > 25

globus-gsi-proxy-core-doc-6.2-1.fc15.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<!-- THIS FILE IS AUTOMATICALLY GENERATED FROM THE GLOBUS SOURCE CODE
     DO NOT MODIFY.
-->
<title>Globus Reference Manual</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.7.4 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('group__globus__gsi__proxy__handle.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#typedef-members">Typedefs</a>  </div>
  <div class="headertitle">
<div class="title">Handle Management</div>  </div>
</div>
<div class="contents">

<p>Create/Destroy/Modify a GSI Proxy Handle.  
<a href="#details">More...</a></p>
<h2><a name="typedef-members"></a>
Typedefs</h2>
<ul>
<li>typedef struct <br class="typebreak"/>
globus_l_gsi_proxy_handle_s * <a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>
</ul>
<h2><a name="member-group"></a>
Initialize and Destroy</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga20f041b5edcdc912cea8b8778c9d9d65">globus_gsi_proxy_handle_init</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> *handle, <a class="el" href="group__globus__gsi__proxy__handle__attrs.html#ga66b2fcd0c7df2737bef97c2011895cc3">globus_gsi_proxy_handle_attrs_t</a> handle_attrs)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga7110db829d2d78b7816737e37c8c235d">globus_gsi_proxy_handle_destroy</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle)
</ul>
<h2><a name="member-group"></a>
Get/Set Request</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga12e162ad956b97695f4d431bb4e1355e">globus_gsi_proxy_handle_get_req</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, X509_REQ **req)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga502ec2d547d160a6fe0d4e35257c6cbf">globus_gsi_proxy_handle_set_req</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, X509_REQ *req)
</ul>
<h2><a name="member-group"></a>
Get/Set Private Key</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gac535894fd1ca15f2686175c78d747e2d">globus_gsi_proxy_handle_get_private_key</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, EVP_PKEY **proxy_key)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga0d69e87c64cc178a62594a200b5b256d">globus_gsi_proxy_handle_set_private_key</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, EVP_PKEY *proxy_key)
</ul>
<h2><a name="member-group"></a>
Get/Set Proxy Type</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga96f03d4fd38bc9490e78b520b7380542">globus_gsi_proxy_handle_get_type</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, globus_gsi_cert_utils_cert_type_t *type)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gaa693cadbca682e1ffbf2a4b5611b0f4c">globus_gsi_proxy_handle_set_type</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, globus_gsi_cert_utils_cert_type_t type)
</ul>
<h2><a name="member-group"></a>
Get/Set Policy</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gac5b1c834029c438c62a478901e3120df">globus_gsi_proxy_handle_set_policy</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, unsigned char *policy_data, int policy_length, int policy_language_NID)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga03799761f86684f073e8598a65ec9dd1">globus_gsi_proxy_handle_get_policy</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, unsigned char **policy_data, int *policy_length, int *policy_NID)
</ul>
<h2><a name="member-group"></a>
Get/Set Path Length</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga462c7fdb33a7ac5444af37f8871af1a6">globus_gsi_proxy_handle_set_pathlen</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, long pathlen)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga6bd430b066f5ab742569fb6d90f50308">globus_gsi_proxy_handle_get_pathlen</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, int *pathlen)
</ul>
<h2><a name="member-group"></a>
Get/Set Time Valid</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gafa42f86e9c5b7afd6b97e727851941e1">globus_gsi_proxy_handle_get_time_valid</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, int *time_valid)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga63f6f98ae161dbe5b33adeb150b5fa36">globus_gsi_proxy_handle_set_time_valid</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, int time_valid)
</ul>
<h2><a name="member-group"></a>
Clear Cert Info</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga947b3c4394575cadf18206a8fa74f432">globus_gsi_proxy_handle_clear_cert_info</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle)
</ul>
<h2><a name="member-group"></a>
Get/Set Cert Info</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga0fa8b85d8cb202ede0ddbb893eb967de">globus_gsi_proxy_handle_get_proxy_cert_info</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, PROXYCERTINFO **pci)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gada7ece5bf4abe9d2ead1e2f6d7788033">globus_gsi_proxy_handle_set_proxy_cert_info</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, PROXYCERTINFO *pci)
</ul>
<h2><a name="member-group"></a>
Get Signing Algorithm</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gaf6718804953e68ee27f446e9aa1c4446">globus_gsi_proxy_handle_get_signing_algorithm</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, EVP_MD **signing_algorithm)
</ul>
<h2><a name="member-group"></a>
Get Key Bits</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga25913e0befd4b3f59ca263fe8695e524">globus_gsi_proxy_handle_get_keybits</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, int *key_bits)
</ul>
<h2><a name="member-group"></a>
Get Init Prime</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga6e1b785b0b935188cd4b3c958d716a5f">globus_gsi_proxy_handle_get_init_prime</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, int *init_prime)
</ul>
<h2><a name="member-group"></a>
Get Clock Skew</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga53a918a87d60a2b209a7e750b161978f">globus_gsi_proxy_handle_get_clock_skew_allowable</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, int *skew)
</ul>
<h2><a name="member-group"></a>
Get Callback for Creating Keys</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gaba08a011aae9c648fa8b9633cfcaac43">globus_gsi_proxy_handle_get_key_gen_callback</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, void(**callback)(int, int, void *))
</ul>
<h2><a name="member-group"></a>
Get/Set Proxy Common Name</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#gabe05becc8e65b8a72cde3603a5a279d2">globus_gsi_proxy_handle_get_common_name</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, char **common_name)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga51f81d3db4ee3771627e112ef12e9252">globus_gsi_proxy_handle_set_common_name</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, char *common_name)
</ul>
<h2><a name="member-group"></a>
Set/Check Proxy Is Limited</h2>
<ul>
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga7bda42a421de1a2dbce2dd20fe901ae1">globus_gsi_proxy_handle_set_is_limited</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, globus_bool_t is_limited)
<li>globus_result_t <a class="el" href="group__globus__gsi__proxy__handle.html#ga9fe564e17b059c3cb91059d421169b87">globus_gsi_proxy_is_limited</a> (<a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> handle, globus_bool_t *is_limited)
</ul>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>Create/Destroy/Modify a GSI Proxy Handle. </p>
<p>Within the Globus GSI Proxy Library, all proxy operations require a handle parameter. Currently, only one proxy operation may be in progress at once per proxy handle.</p>
<p>This section defines operations to create, modify and destroy GSI Proxy handles. </p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="ga8aa60a8f880c91bae12994052ceeafc4"></a><!-- doxytag: member="globus_gsi_proxy.h::globus_gsi_proxy_handle_t" ref="ga8aa60a8f880c91bae12994052ceeafc4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct globus_l_gsi_proxy_handle_s* <a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>GSI Proxy Handle. </p>
<p>An GSI Proxy handle is used to associate state with a group of operations. Handles can have immutable <a class="el" href="group__globus__gsi__proxy__handle__attrs.html">attributes</a> associated with them. All proxy <a class="el" href="group__globus__gsi__proxy__operations.html">operations </a> take a handle pointer as a parameter.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga20f041b5edcdc912cea8b8778c9d9d65" title="Initialize a GSI Proxy handle.">globus_gsi_proxy_handle_init()</a>, <a class="el" href="group__globus__gsi__proxy__handle.html#ga7110db829d2d78b7816737e37c8c235d" title="Destroy a GSI Proxy handle.">globus_gsi_proxy_handle_destroy()</a>, <a class="el" href="group__globus__gsi__proxy__handle__attrs.html">Handle Attributes</a> </dd></dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga20f041b5edcdc912cea8b8778c9d9d65"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_init" ref="ga20f041b5edcdc912cea8b8778c9d9d65" args="(globus_gsi_proxy_handle_t *handle, globus_gsi_proxy_handle_attrs_t handle_attrs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a> *&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle__attrs.html#ga66b2fcd0c7df2737bef97c2011895cc3">globus_gsi_proxy_handle_attrs_t</a>&#160;</td>
          <td class="paramname"><em>handle_attrs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Initialize a GSI Proxy handle. </p>
<p>Initialize a proxy handle which can be used in subsequent operations. The handle may only be used in one sequence of operations at a time.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>A pointer to the handle to be initialized. If the handle is originally NULL, space is allocated for it. Otherwise, the current values of the handle are overwritten.</td></tr>
    <tr><td class="paramname">handle_attrs</td><td>Initial attributes to be used to create this handle. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga7110db829d2d78b7816737e37c8c235d" title="Destroy a GSI Proxy handle.">globus_gsi_proxy_handle_destroy()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga12e162ad956b97695f4d431bb4e1355e"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_req" ref="ga12e162ad956b97695f4d431bb4e1355e" args="(globus_gsi_proxy_handle_t handle, X509_REQ **req)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_req </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">X509_REQ **&#160;</td>
          <td class="paramname"><em>req</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the certificate request from a GSI Proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle from which to get the certificate request </td></tr>
    <tr><td class="paramname">req</td><td>Parameter used to return the request. It is the users responsibility to free the returned request. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga502ec2d547d160a6fe0d4e35257c6cbf" title="Set the certificate request in a GSI Proxy handle.">globus_gsi_proxy_handle_set_req()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gac535894fd1ca15f2686175c78d747e2d"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_private_key" ref="gac535894fd1ca15f2686175c78d747e2d" args="(globus_gsi_proxy_handle_t handle, EVP_PKEY **proxy_key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_private_key </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">EVP_PKEY **&#160;</td>
          <td class="paramname"><em>proxy_key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the private key from a GSI Proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle from which to get the private key </td></tr>
    <tr><td class="paramname">proxy_key</td><td>Parameter used to return the key. It is the users responsibility to free the returned key. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga0d69e87c64cc178a62594a200b5b256d" title="Set the private key in a GSI Proxy handle.">globus_gsi_proxy_handle_set_private_key()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga96f03d4fd38bc9490e78b520b7380542"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_type" ref="ga96f03d4fd38bc9490e78b520b7380542" args="(globus_gsi_proxy_handle_t handle, globus_gsi_cert_utils_cert_type_t *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_type </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_gsi_cert_utils_cert_type_t *&#160;</td>
          <td class="paramname"><em>type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine the type of proxy that will be generated when using this handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle from which to get the type </td></tr>
    <tr><td class="paramname">type</td><td>Parameter used to return the type. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#gaa693cadbca682e1ffbf2a4b5611b0f4c" title="Set the type of proxy that will be generated when using this handle.">globus_gsi_proxy_handle_set_type()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gac5b1c834029c438c62a478901e3120df"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_policy" ref="gac5b1c834029c438c62a478901e3120df" args="(globus_gsi_proxy_handle_t handle, unsigned char *policy_data, int policy_length, int policy_language_NID)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_policy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char *&#160;</td>
          <td class="paramname"><em>policy_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>policy_length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>policy_language_NID</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the policy to be used in the GSI Proxy handle. </p>
<p>This function sets the policy to be used in the proxy cert info extension.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to be modified. </td></tr>
    <tr><td class="paramname">policy_data</td><td>The policy data. </td></tr>
    <tr><td class="paramname">policy_length</td><td>The length of the policy data </td></tr>
    <tr><td class="paramname">policy_language_NID</td><td>The NID of the policy language.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS if the handle and its associated fields are valid otherwise an error is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga03799761f86684f073e8598a65ec9dd1" title="Get the policy from the GSI Proxy handle.">globus_gsi_proxy_handle_get_policy()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga462c7fdb33a7ac5444af37f8871af1a6"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_pathlen" ref="ga462c7fdb33a7ac5444af37f8871af1a6" args="(globus_gsi_proxy_handle_t handle, long pathlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_pathlen </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>pathlen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the path length to be used in the GSI Proxy handle. </p>
<p>This function sets the path length to be used in the proxy cert info extension.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to be modified. </td></tr>
    <tr><td class="paramname">pathlen</td><td>The maximum allowable path length </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga6bd430b066f5ab742569fb6d90f50308" title="Get the path length from the GSI Proxy handle.">globus_gsi_proxy_handle_get_pathlen()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gafa42f86e9c5b7afd6b97e727851941e1"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_time_valid" ref="gafa42f86e9c5b7afd6b97e727851941e1" args="(globus_gsi_proxy_handle_t handle, int *time_valid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_time_valid </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>time_valid</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the validity time of the proxy. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The proxy handle to get the expiration date of </td></tr>
    <tr><td class="paramname">time_valid</td><td>expiration date of the proxy handle</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga947b3c4394575cadf18206a8fa74f432"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_clear_cert_info" ref="ga947b3c4394575cadf18206a8fa74f432" args="(globus_gsi_proxy_handle_t handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_clear_cert_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clear the proxy cert info extension stored in the GSI Proxy handle. </p>
<p>This function clears proxy cert info extension related setting in the GSI Proxy handle.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle for which to clear the proxy cert info extension. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga0fa8b85d8cb202ede0ddbb893eb967de"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_proxy_cert_info" ref="ga0fa8b85d8cb202ede0ddbb893eb967de" args="(globus_gsi_proxy_handle_t handle, PROXYCERTINFO **pci)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_proxy_cert_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PROXYCERTINFO **&#160;</td>
          <td class="paramname"><em>pci</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the proxy cert info extension stored in the GSI Proxy handle. </p>
<p>This function retrieves the proxy cert info extension from the GSI Proxy handle.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle from which to get the proxy cert info extension. </td></tr>
    <tr><td class="paramname">pci</td><td>Contains the proxy cert info extension upon successful return. If the handle does not contain a pci extension, this parameter will be NULL upon return. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS upon success GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE if handle is invalid GLOBUS_GSI_PROXY_ERROR_WITH_PROXYCERTINFO if the pci pointer is invalid or if the get failed. </dd></dl>

</div>
</div>
<a class="anchor" id="gaf6718804953e68ee27f446e9aa1c4446"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_signing_algorithm" ref="gaf6718804953e68ee27f446e9aa1c4446" args="(globus_gsi_proxy_handle_t handle, EVP_MD **signing_algorithm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_signing_algorithm </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">EVP_MD **&#160;</td>
          <td class="paramname"><em>signing_algorithm</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the signing algorithm used to sign the proxy cert request. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The proxy handle containing the type of signing algorithm used </td></tr>
    <tr><td class="paramname">signing_algorithm</td><td>signing algorithm of the proxy handle</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned GLOBUS_SUCCESS </dd></dl>

</div>
</div>
<a class="anchor" id="ga25913e0befd4b3f59ca263fe8695e524"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_keybits" ref="ga25913e0befd4b3f59ca263fe8695e524" args="(globus_gsi_proxy_handle_t handle, int *key_bits)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_keybits </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>key_bits</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the key bits used for the pub/private key pair of the proxy. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The proxy handle to get the key bits of </td></tr>
    <tr><td class="paramname">key_bits</td><td>key bits of the proxy handle</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned GLOBUS_SUCCESS </dd></dl>

</div>
</div>
<a class="anchor" id="ga6e1b785b0b935188cd4b3c958d716a5f"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_init_prime" ref="ga6e1b785b0b935188cd4b3c958d716a5f" args="(globus_gsi_proxy_handle_t handle, int *init_prime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_init_prime </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>init_prime</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the init prime of the proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to get the init prime used in generating the key pair </td></tr>
    <tr><td class="paramname">init_prime</td><td>The resulting init prime</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case an error object identifier (in the form of a globus_result_t) is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga53a918a87d60a2b209a7e750b161978f"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_clock_skew_allowable" ref="ga53a918a87d60a2b209a7e750b161978f" args="(globus_gsi_proxy_handle_t handle, int *skew)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_clock_skew_allowable </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>skew</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the clock skew of the proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to get the clock skew of </td></tr>
    <tr><td class="paramname">skew</td><td>The resulting clock skew</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case an error object identifier (in the form of a globus_result_t) is returned </dd></dl>

</div>
</div>
<a class="anchor" id="gaba08a011aae9c648fa8b9633cfcaac43"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_key_gen_callback" ref="gaba08a011aae9c648fa8b9633cfcaac43" args="(globus_gsi_proxy_handle_t handle, void(**callback)(int, int, void *))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_key_gen_callback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void(**)(int, int, void *)&#160;</td>
          <td class="paramname"><em>callback</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the callback for creating the public/private key pair. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The proxy handle to get the callback from </td></tr>
    <tr><td class="paramname">callback</td><td>Parameter used for returning the callback</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS or an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="gabe05becc8e65b8a72cde3603a5a279d2"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_common_name" ref="gabe05becc8e65b8a72cde3603a5a279d2" args="(globus_gsi_proxy_handle_t handle, char **common_name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_common_name </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>common_name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the proxy common name stored in the GSI Proxy handle. </p>
<p>This function retrieves the proxy common name from the GSI Proxy handle. The common name only impacts draft compliant proxies.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle from which to get the proxy common name. </td></tr>
    <tr><td class="paramname">common_name</td><td>Contains the proxy common name upon successful return. If the handle does not contain a common name, this parameter will be NULL upon return. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS upon success GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE if handle is invalid </dd></dl>

</div>
</div>
<a class="anchor" id="ga7bda42a421de1a2dbce2dd20fe901ae1"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_is_limited" ref="ga7bda42a421de1a2dbce2dd20fe901ae1" args="(globus_gsi_proxy_handle_t handle, globus_bool_t is_limited)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_is_limited </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_bool_t&#160;</td>
          <td class="paramname"><em>is_limited</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the limited proxy flag on the proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>the proxy handle </td></tr>
    <tr><td class="paramname">is_limited</td><td>boolean value to set on the proxy handle</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga7110db829d2d78b7816737e37c8c235d"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_destroy" ref="ga7110db829d2d78b7816737e37c8c235d" args="(globus_gsi_proxy_handle_t handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destroy a GSI Proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to be destroyed. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga20f041b5edcdc912cea8b8778c9d9d65" title="Initialize a GSI Proxy handle.">globus_gsi_proxy_handle_init()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga502ec2d547d160a6fe0d4e35257c6cbf"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_req" ref="ga502ec2d547d160a6fe0d4e35257c6cbf" args="(globus_gsi_proxy_handle_t handle, X509_REQ *req)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_req </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">X509_REQ *&#160;</td>
          <td class="paramname"><em>req</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the certificate request in a GSI Proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle for which to set the certificate request </td></tr>
    <tr><td class="paramname">req</td><td>Request to be copied to handle. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga12e162ad956b97695f4d431bb4e1355e" title="Get the certificate request from a GSI Proxy handle.">globus_gsi_proxy_handle_get_req()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga0d69e87c64cc178a62594a200b5b256d"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_private_key" ref="ga0d69e87c64cc178a62594a200b5b256d" args="(globus_gsi_proxy_handle_t handle, EVP_PKEY *proxy_key)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_private_key </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">EVP_PKEY *&#160;</td>
          <td class="paramname"><em>proxy_key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the private key in a GSI Proxy handle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle for which to set the private key </td></tr>
    <tr><td class="paramname">proxy_key</td><td>Parameter used to pass the key </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#gac535894fd1ca15f2686175c78d747e2d" title="Get the private key from a GSI Proxy handle.">globus_gsi_proxy_handle_get_private_key()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaa693cadbca682e1ffbf2a4b5611b0f4c"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_type" ref="gaa693cadbca682e1ffbf2a4b5611b0f4c" args="(globus_gsi_proxy_handle_t handle, globus_gsi_cert_utils_cert_type_t type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_type </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_gsi_cert_utils_cert_type_t&#160;</td>
          <td class="paramname"><em>type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the type of proxy that will be generated when using this handle. </p>
<p>Note that this will have no effect when generating a proxy from a proxy. In that case the generated proxy will inherit the type of the parent.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle for which to set the type </td></tr>
    <tr><td class="paramname">type</td><td>Parameter used to pass the type. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#gaa693cadbca682e1ffbf2a4b5611b0f4c" title="Set the type of proxy that will be generated when using this handle.">globus_gsi_proxy_handle_set_type()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga03799761f86684f073e8598a65ec9dd1"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_policy" ref="ga03799761f86684f073e8598a65ec9dd1" args="(globus_gsi_proxy_handle_t handle, unsigned char **policy_data, int *policy_length, int *policy_NID)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_policy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char **&#160;</td>
          <td class="paramname"><em>policy_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>policy_length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>policy_NID</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the policy from the GSI Proxy handle. </p>
<p>This function gets the policy that is being used in the proxy cert info extension.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to be interrogated. </td></tr>
    <tr><td class="paramname">policy_data</td><td>The policy data. </td></tr>
    <tr><td class="paramname">policy_length</td><td>The length of the returned policy </td></tr>
    <tr><td class="paramname">policy_NID</td><td>The NID of the policy language.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#gac5b1c834029c438c62a478901e3120df" title="Set the policy to be used in the GSI Proxy handle.">globus_gsi_proxy_handle_set_policy()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga6bd430b066f5ab742569fb6d90f50308"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_get_pathlen" ref="ga6bd430b066f5ab742569fb6d90f50308" args="(globus_gsi_proxy_handle_t handle, int *pathlen)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_get_pathlen </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>pathlen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the path length from the GSI Proxy handle. </p>
<p>This function gets the path length that is being used in the proxy cert info extension.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle to be interrogated. </td></tr>
    <tr><td class="paramname">pathlen</td><td>The maximum allowable path length </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__globus__gsi__proxy__handle.html#ga462c7fdb33a7ac5444af37f8871af1a6" title="Set the path length to be used in the GSI Proxy handle.">globus_gsi_proxy_handle_set_pathlen()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga63f6f98ae161dbe5b33adeb150b5fa36"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_time_valid" ref="ga63f6f98ae161dbe5b33adeb150b5fa36" args="(globus_gsi_proxy_handle_t handle, int time_valid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_time_valid </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>time_valid</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the validity time of the proxy. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The proxy handle to set the expiration date for </td></tr>
    <tr><td class="paramname">time_valid</td><td>desired expiration date of the proxy</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned GLOBUS_SUCCESS </dd></dl>

</div>
</div>
<a class="anchor" id="gada7ece5bf4abe9d2ead1e2f6d7788033"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_proxy_cert_info" ref="gada7ece5bf4abe9d2ead1e2f6d7788033" args="(globus_gsi_proxy_handle_t handle, PROXYCERTINFO *pci)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_proxy_cert_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PROXYCERTINFO *&#160;</td>
          <td class="paramname"><em>pci</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the proxy cert info extension stored in the GSI Proxy handle. </p>
<p>This function sets the proxy cert info extension in the GSI Proxy handle.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle for which to set the proxy cert info extension. </td></tr>
    <tr><td class="paramname">pci</td><td>The proxy cert info extension to set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS upon success GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE if handle is invalid GLOBUS_GSI_PROXY_ERROR_WITH_PROXYCERTINFO if the pci pointer is invalid or if the set failed. </dd></dl>

</div>
</div>
<a class="anchor" id="ga51f81d3db4ee3771627e112ef12e9252"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_handle_set_common_name" ref="ga51f81d3db4ee3771627e112ef12e9252" args="(globus_gsi_proxy_handle_t handle, char *common_name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_handle_set_common_name </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>common_name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the proxy common name stored in the GSI Proxy handle. </p>
<p>This function sets the proxy common name in the GSI Proxy handle. Note that the common name is only used for draft compliant proxies.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>The handle for which to set the proxy common name. </td></tr>
    <tr><td class="paramname">common_name</td><td>The proxy common name to set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS upon success GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE if handle is invalid </dd></dl>

</div>
</div>
<a class="anchor" id="ga9fe564e17b059c3cb91059d421169b87"></a><!-- doxytag: member="globus_gsi_proxy_handle.c::globus_gsi_proxy_is_limited" ref="ga9fe564e17b059c3cb91059d421169b87" args="(globus_gsi_proxy_handle_t handle, globus_bool_t *is_limited)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_proxy_is_limited </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__proxy__handle.html#ga8aa60a8f880c91bae12994052ceeafc4">globus_gsi_proxy_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_bool_t *&#160;</td>
          <td class="paramname"><em>is_limited</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check to see if the proxy is a limited proxy. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">handle</td><td>the proxy handle to check </td></tr>
    <tr><td class="paramname">is_limited</td><td>boolean value to set depending on the type of proxy</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned </dd></dl>

</div>
</div>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
<hr>
<p align="center">
<a href="http://www.globus.org/toolkit/about.html" target="_top">about globus</a> |
<a href="http://www.globus.org/toolkit/" target="_top">globus toolkit</a> |
<a href="https://dev.globus.org/wiki/Welcome/" target="_top">dev.globus</a>
<br>
<br>
Comments? <a href="mailto:webmaster@globus.org">webmaster@globus.org</a>

</body>
</html>