Sophie

Sophie

distrib > Fedora > 17 > i386 > media > updates > by-pkgid > d20dea4b6e145c914db1f168dac29ec7 > files > 38

globus-gsi-sysconfig-doc-5.3-1.fc17.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.8.1.1 -->
  <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><!-- top -->
<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">
$(document).ready(function(){initNavTree('group__globus__gsi__sysconfig__unix.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">Functions for UNIX platforms</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Set Key Permissions</h2></td></tr>
<tr class="memitem:ga68dbb6809ea444570923f62758349885"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga68dbb6809ea444570923f62758349885">globus_gsi_sysconfig_set_key_permissions_unix</a> (char *filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get User ID</h2></td></tr>
<tr class="memitem:ga049143f68c460b35ed1deb654b016190"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga049143f68c460b35ed1deb654b016190">globus_gsi_sysconfig_get_user_id_string_unix</a> (char **user_id_string)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Username</h2></td></tr>
<tr class="memitem:ga4437fe774cec517729a55c956caa7265"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga4437fe774cec517729a55c956caa7265">globus_gsi_sysconfig_get_username_unix</a> (char **username)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Process ID</h2></td></tr>
<tr class="memitem:gaafd972dc7e0b033ffddd1767ddb27d15"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#gaafd972dc7e0b033ffddd1767ddb27d15">globus_gsi_sysconfig_get_proc_id_string_unix</a> (char **proc_id_string)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Make Absolute Path</h2></td></tr>
<tr class="memitem:ga114a0f2294e95722a6b0ca197c0afbcd"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga114a0f2294e95722a6b0ca197c0afbcd">globus_gsi_sysconfig_make_absolute_path_for_filename_unix</a> (char *filename, char **absolute_path)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Split Directory and Filename</h2></td></tr>
<tr class="memitem:gac1279acc773ecac33f7eddac342c2316"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#gac1279acc773ecac33f7eddac342c2316">globus_gsi_sysconfig_split_dir_and_filename_unix</a> (char *full_filename, char **dir_string, char **filename_string)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Current Working Directory</h2></td></tr>
<tr class="memitem:gaa5be7bd3f788fd72fda375ea742afde1"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#gaa5be7bd3f788fd72fda375ea742afde1">globus_gsi_sysconfig_get_current_working_dir_unix</a> (char **working_dir)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get HOME Directory</h2></td></tr>
<tr class="memitem:ga3180287e26f8c91ac9a4334cfea178ba"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga3180287e26f8c91ac9a4334cfea178ba">globus_gsi_sysconfig_get_home_dir_unix</a> (char **home_dir)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - File Exists</h2></td></tr>
<tr class="memitem:ga5f618425aa28630c22affaaf23637b45"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga5f618425aa28630c22affaaf23637b45">globus_gsi_sysconfig_file_exists_unix</a> (const char *filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Directory Exists</h2></td></tr>
<tr class="memitem:ga18312d5f483be4277fa94ed4bbdb610f"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga18312d5f483be4277fa94ed4bbdb610f">globus_gsi_sysconfig_dir_exists_unix</a> (const char *filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Check File Status for Key</h2></td></tr>
<tr class="memitem:ga4ca3d7b04071e46b3f258231a8caf336"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga4ca3d7b04071e46b3f258231a8caf336">globus_gsi_sysconfig_check_keyfile_unix</a> (const char *filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Check File Status for Cert</h2></td></tr>
<tr class="memitem:ga822081d59cac24a8b8b89b9ce4acf184"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga822081d59cac24a8b8b89b9ce4acf184">globus_gsi_sysconfig_check_certfile_unix</a> (const char *filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Trusted CA Cert Dir</h2></td></tr>
<tr class="memitem:ga5c14de6905c42bd166ad99e361b1fe0f"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga5c14de6905c42bd166ad99e361b1fe0f">globus_gsi_sysconfig_get_cert_dir_unix</a> (char **cert_dir)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get User Certificate and Key Filenames</h2></td></tr>
<tr class="memitem:ga873710a18e1ce2a7907b303e00f41642"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga873710a18e1ce2a7907b303e00f41642">globus_gsi_sysconfig_get_user_cert_filename_unix</a> (char **user_cert, char **user_key)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Host Certificate and Key Filenames</h2></td></tr>
<tr class="memitem:ga1329cac95757925245f60bc2da23990f"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga1329cac95757925245f60bc2da23990f">globus_gsi_sysconfig_get_host_cert_filename_unix</a> (char **host_cert, char **host_key)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Service Certificate and Key Filenames</h2></td></tr>
<tr class="memitem:gab188637848f590b1ed673aabcf66987b"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#gab188637848f590b1ed673aabcf66987b">globus_gsi_sysconfig_get_service_cert_filename_unix</a> (char *service_name, char **service_cert, char **service_key)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Proxy Filename</h2></td></tr>
<tr class="memitem:ga2d7aed4cc5e0b4bbd1008706fef1435f"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga2d7aed4cc5e0b4bbd1008706fef1435f">globus_gsi_sysconfig_get_proxy_filename_unix</a> (char **user_proxy, <a class="el" href="group__globus__gsi__sysconfig__datatypes.html#ga94d70620ea9adb2fb5b11b4e38244f30">globus_gsi_proxy_file_type_t</a> proxy_file_type)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get Signing Policy Filename</h2></td></tr>
<tr class="memitem:ga5466ddcbe11e298b2503c0b69189e869"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga5466ddcbe11e298b2503c0b69189e869">globus_gsi_sysconfig_get_signing_policy_filename_unix</a> (X509_NAME *ca_name, char *cert_dir, char **signing_policy_filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get CA Cert Filenames</h2></td></tr>
<tr class="memitem:ga7ddbda4f3e23755e1d9ea6256ec9a736"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga7ddbda4f3e23755e1d9ea6256ec9a736">globus_gsi_sysconfig_get_ca_cert_files_unix</a> (char *ca_cert_dir, globus_fifo_t *ca_cert_list)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Remove all proxies owned by current uid</h2></td></tr>
<tr class="memitem:ga277aae033d957658fbf93bc487c95a1d"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga277aae033d957658fbf93bc487c95a1d">globus_gsi_sysconfig_remove_all_owned_files_unix</a> (char *default_filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Check if the current user is root</h2></td></tr>
<tr class="memitem:ga6c92ba9cff1529788755694955dfd046"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga6c92ba9cff1529788755694955dfd046">globus_gsi_sysconfig_is_superuser_unix</a> (int *is_superuser)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get the path and file name of the grid map file</h2></td></tr>
<tr class="memitem:gad17eb0a6f42d2dc6f9eacffd49bf2478"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#gad17eb0a6f42d2dc6f9eacffd49bf2478">globus_gsi_sysconfig_get_gridmap_filename_unix</a> (char **filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get the path and file name of the authorization callback configuration file</h2></td></tr>
<tr class="memitem:ga738e8049333019c95a803f3c995f37d1"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga738e8049333019c95a803f3c995f37d1">globus_gsi_sysconfig_get_authz_conf_filename_unix</a> (char **filename)</td></tr>
<tr class="memitem:ga347186018c4a9b59912b60166c4fa0e0"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga347186018c4a9b59912b60166c4fa0e0">globus_gsi_sysconfig_get_authz_lib_conf_filename_unix</a> (char **filename)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
UNIX - Get the path and file name of the gaa configuration file</h2></td></tr>
<tr class="memitem:ga06009cb1401e476f08e3b47fc08fe522"><td class="memItemLeft" align="right" valign="top">globus_result_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gsi__sysconfig__unix.html#ga06009cb1401e476f08e3b47fc08fe522">globus_gsi_sysconfig_get_gaa_conf_filename_unix</a> (char **filename)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>These functions implement the UNIX version of the Globus GSI System Configuration API. </p>
<p><b>They should never be called directly, please use the provided platform independent defines.</b> </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga68dbb6809ea444570923f62758349885"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_set_key_permissions_unix </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the file permissions of a file to read-write only by the user which are the permissions that should be set for all private keys. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS or an error object id </dd></dl>

</div>
</div>
<a class="anchor" id="ga049143f68c460b35ed1deb654b016190"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_user_id_string_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>user_id_string</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a unique string representing the current user. </p>
<p>This is just the uid converted to a string.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">user_id_string</td><td>A unique string representing the user</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS unless an error occurred </dd></dl>

</div>
</div>
<a class="anchor" id="ga4437fe774cec517729a55c956caa7265"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_username_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>username</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the username of the current user. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">username</td><td>This parameter will contain the current user name upon a successful return. It is the users responsibility to free memory allocated for this return value. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS unless an error occurred </dd></dl>

</div>
</div>
<a class="anchor" id="gaafd972dc7e0b033ffddd1767ddb27d15"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_proc_id_string_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>proc_id_string</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a unique string representing the current process. </p>
<p>This is just the pid converted to a string.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">proc_id_string</td><td>A unique string representing the process</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS unless an error occurred </dd></dl>

</div>
</div>
<a class="anchor" id="ga114a0f2294e95722a6b0ca197c0afbcd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_make_absolute_path_for_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>absolute_path</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Make the filename into an absolute path string based on the current working directory. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>the filename to get the absolute path of. </td></tr>
    <tr><td class="paramname">absolute_path</td><td>The resulting absolute path. This needs to be freed when no longer needed. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="gac1279acc773ecac33f7eddac342c2316"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_split_dir_and_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>full_filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>dir_string</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>filename_string</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Split the directory and filename portions of a filename string into two separate strings. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">full_filename</td><td>The filename to split. Splits on the last occurrance of '/' where the directory is everything before the last '/', and the filename is everything after. </td></tr>
    <tr><td class="paramname">dir_string</td><td>The directory portion of the filename string. If no '/' is found throughout the string, this variable points to NULL. This needs to be freed when no longer needed. </td></tr>
    <tr><td class="paramname">filename_string</td><td>The filename portion of the filename string. If no '/' is found throughout, this variable is a duplicate of the full_filename parameter. This needs to be freed when no longer needed.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred. Otherwise an error object ID is returned. </dd></dl>

</div>
</div>
<a class="anchor" id="gaa5be7bd3f788fd72fda375ea742afde1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_current_working_dir_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>working_dir</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the current working directory on the system. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">working_dir</td><td>The current working directory </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS or an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="ga3180287e26f8c91ac9a4334cfea178ba"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_home_dir_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>home_dir</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the HOME Directory of the current user. </p>
<p>Should be the $HOME environment variable.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">home_dir</td><td>The home directory of the current user </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occured, otherwise an error object is returned. </dd></dl>

</div>
</div>
<a class="anchor" id="ga5f618425aa28630c22affaaf23637b45"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_file_exists_unix </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if the file exists. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>The filename of the file to check for</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the file exists and is readable, otherwise an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="ga18312d5f483be4277fa94ed4bbdb610f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_dir_exists_unix </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if the directory exists. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>The filename of the directory to check for</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the directory exists, otherwise an error object identifier. </dd></dl>

</div>
</div>
<a class="anchor" id="ga4ca3d7b04071e46b3f258231a8caf336"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_check_keyfile_unix </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This is a convenience function used to check the status of a private key file. </p>
<p>The desired status is only the current user has ownership and read permissions, everyone else should not be able to access it.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>The name of the file to check the status of</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the status of the file was able to be determined. Otherwise, an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="ga822081d59cac24a8b8b89b9ce4acf184"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_check_certfile_unix </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This is a convenience function used to check the status of a certificate file. </p>
<p>The desired status is the current user has ownership and read/write permissions, while group and others only have read permissions.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>The name of the file to check the status of</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the status of the file was able to be determined. Otherwise, an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="ga5c14de6905c42bd166ad99e361b1fe0f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_cert_dir_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>cert_dir</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Trusted Certificate Directory containing the trusted Certificate Authority certificates. </p>
<p>This directory is determined in the order shown below. Failure in one method results in attempting the next.</p>
<ol>
<li>
<b>X509_CERT_DIR environment variable</b> - if this is set, the trusted certificates will be searched for in that directory. This variable allows the end user to specify the location of trusted certificates. </li>
<li>
<b>$HOME/.globus/certificates</b> - If this directory exists, and the previous methods of determining the trusted certs directory failed, this directory will be used. </li>
<li>
<b>/etc/grid-security/certificates</b> - This location is intended to be independent of the globus installation ($GLOBUS_LOCATION), and is generally only writeable by the host system administrator. </li>
<li>
<b>$GLOBUS_LOCATION/share/certificates</b> </li>
</ol>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">cert_dir</td><td>The trusted certificates directory </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, and a sufficient trusted certificates directory was found. Otherwise, an error object identifier returned. </dd></dl>

</div>
</div>
<a class="anchor" id="ga873710a18e1ce2a7907b303e00f41642"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_user_cert_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>user_cert</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>user_key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the User Certificate Filename based on the current user's environment. </p>
<p>The following locations are searched for cert and key files in order:</p>
<ol>
<li>
environment variables X509_USER_CERT and X509_USER_KEY </li>
<li>
$HOME/.globus/usercert.pem and $HOME/.globus/userkey.pem </li>
<li>
$HOME/.globus/usercred.p12 - this is a PKCS12 credential </li>
</ol>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">user_cert</td><td>pointer the filename of the user certificate </td></tr>
    <tr><td class="paramname">user_key</td><td>pointer to the filename of the user key </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the cert and key files were found in one of the possible locations, otherwise an error object identifier is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga1329cac95757925245f60bc2da23990f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_host_cert_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>host_cert</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>host_key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Host Certificate and Key Filenames based on the current user's environment. </p>
<p>The host cert and key are searched for in the following locations (in order):</p>
<ol>
<li>
X509_USER_CERT and X509_USER_KEY environment variables </li>
<li>
registry keys x509_user_cert and x509_user_key in software\Globus\GSI </li>
<li>
\&lt;GLOBUS_LOCATION\&gt;\etc\host[cert|key].pem </li>
<li>
\&lt;users home directory\&gt;globus\host[cert|key].pem </li>
</ol>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">host_cert</td><td>pointer to the host certificate filename </td></tr>
    <tr><td class="paramname">host_key</td><td>pointer to the host key filename</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the host cert and key were found, otherwise an error object identifier is returned </dd></dl>

</div>
</div>
<a class="anchor" id="gab188637848f590b1ed673aabcf66987b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_service_cert_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>service_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>service_cert</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>service_key</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Service Certificate Filename based on the current user's environment. </p>
<p>The host cert and key are searched for in the following locations (in order):</p>
<ol>
<li>
X509_USER_CERT and X509_USER_KEY environment variables </li>
<li>
\/etc\/grid-security\/{service_name}\/{service_name}[cert|key].pem </li>
<li>
GLOBUS_LOCATION\/etc\/{service_name}\/{service_name}[cert|key].pem So for example, if my service was named: myservice, the location of the certificate would be: GLOBUS_LOCATION\/etc\/myservice\/myservicecert.pem </li>
<li>
\&lt;users home\&gt;\/.globus\/{service_name}\/{service_name}[cert|key].pem </li>
</ol>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">service_name</td><td>The name of the service which allows us to determine the locations of cert and key files to look for </td></tr>
    <tr><td class="paramname">service_cert</td><td>pointer to the host certificate filename </td></tr>
    <tr><td class="paramname">service_key</td><td>pointer to the host key filename</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if the service cert and key were found, otherwise an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="ga2d7aed4cc5e0b4bbd1008706fef1435f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_proxy_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>user_proxy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__globus__gsi__sysconfig__datatypes.html#ga94d70620ea9adb2fb5b11b4e38244f30">globus_gsi_proxy_file_type_t</a>&#160;</td>
          <td class="paramname"><em>proxy_file_type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the proxy cert filename based on the following search order: </p>
<ol>
<li>
<p class="startli">X509_USER_PROXY environment variable - This environment variable is set by the at run time for the specific application. If the proxy_file_type variable is set to GLOBUS_PROXY_OUTPUT (a proxy filename for writing is requested), and the X509_USER_PROXY is set, this will be the resulting value of the user_proxy filename string passed in. If the proxy_file_type is set to GLOBUS_PROXY_INPUT and X509_USER_PROXY is set, but the file it points to does not exist, or has some other readability issues, the function will continue checking using the other methods available.</p>
<p class="endli"></p>
</li>
<li>
Check the default location for the proxy file of \/tmp\/x509_u\&lt;user_id\&gt; where \&lt;user id\&gt; is some unique string for that user on the host </li>
</ol>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">user_proxy</td><td>the proxy filename of the user </td></tr>
    <tr><td class="paramname">proxy_file_type</td><td>Switch for determining whether to return a existing proxy filename or if a filename suitable for creating a proxy should be returned</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS or an error object identifier </dd></dl>

</div>
</div>
<a class="anchor" id="ga5466ddcbe11e298b2503c0b69189e869"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_signing_policy_filename_unix </td>
          <td>(</td>
          <td class="paramtype">X509_NAME *&#160;</td>
          <td class="paramname"><em>ca_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>cert_dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>signing_policy_filename</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Signing Policy Filename on the current system, based on the CA's subject name, and the trusted certificates directory. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">ca_name</td><td>The X509 subject name of the CA to get the signing policy of. The hash of the CA is generated from this</td></tr>
    <tr><td class="paramname">cert_dir</td><td>The trusted CA certificates directory, containing the singing_policy files of the trusted CA's.</td></tr>
    <tr><td class="paramname">signing_policy_filename</td><td>The resulting singing_policy filename </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID </dd></dl>

</div>
</div>
<a class="anchor" id="ga7ddbda4f3e23755e1d9ea6256ec9a736"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_ca_cert_files_unix </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>ca_cert_dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">globus_fifo_t *&#160;</td>
          <td class="paramname"><em>ca_cert_list</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets a list of trusted CA certificate filenames in a trusted CA certificate directory. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">ca_cert_dir</td><td>The trusted CA certificate directory to get the filenames from </td></tr>
    <tr><td class="paramname">ca_cert_list</td><td>The resulting list of CA certificate filenames. This is a a globus list structure. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also:</dt><dd>globus_fifo_t </dd></dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga277aae033d957658fbf93bc487c95a1d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_remove_all_owned_files_unix </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>default_filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Removes all proxies (ie. </p>
<p>all delegated and grid-proxy-init generated proxies) found in the secure tmp directory that are owned by the current user.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">default_filename</td><td>The filename of the default proxy </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga6c92ba9cff1529788755694955dfd046"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_is_superuser_unix </td>
          <td>(</td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>is_superuser</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Checks whether the current user is root. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">is_superuser</td><td>1 if the user is the superuser 0 if not </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="gad17eb0a6f42d2dc6f9eacffd49bf2478"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_gridmap_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the path and file name of the grid map file. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>Contains the location of the grid map file upon successful return </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga738e8049333019c95a803f3c995f37d1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_authz_conf_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the path and file name of the authorization callback configuration file. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>Contains the location of the authorization callback configuration file upon successful return </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga347186018c4a9b59912b60166c4fa0e0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_authz_lib_conf_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the path and file name of the authorization callback configuration file. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>Contains the location of the authorization callback configuration file upon successful return </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
<a class="anchor" id="ga06009cb1401e476f08e3b47fc08fe522"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">globus_result_t globus_gsi_sysconfig_get_gaa_conf_filename_unix </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the path and file name of the GAA configuration file. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>Contains the location of the GAA callback configuration file upon successful return </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>GLOBUS_SUCCESS if no error occurred, otherwise an error object ID is returned </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<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>