<!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.3.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</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 id="nav-sync" class="sync"></div> </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__gram__client__attr.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#define-members">Macros</a> | <a href="#typedef-members">Typedefs</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">GRAM Client Attribute Functions</div> </div> </div><!--header--> <div class="contents"> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:gabd78ad96b0bf2f28d89293e143ae2c9d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#gabd78ad96b0bf2f28d89293e143ae2c9d">GLOBUS_GRAM_CLIENT_NO_ATTR</a></td></tr> <tr class="separator:gabd78ad96b0bf2f28d89293e143ae2c9d"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> Typedefs</h2></td></tr> <tr class="memitem:gab906c3d70b18b429bac1b0ae8a7304da"><td class="memItemLeft" align="right" valign="top">typedef void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a></td></tr> <tr class="separator:gab906c3d70b18b429bac1b0ae8a7304da"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:ga36f5df0da2ae30f011315118e2be181e"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#ga36f5df0da2ae30f011315118e2be181e">globus_gram_client_attr_init</a> (<a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> *attr)</td></tr> <tr class="separator:ga36f5df0da2ae30f011315118e2be181e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab38a626d41d870f726fd16567fde1a88"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#gab38a626d41d870f726fd16567fde1a88">globus_gram_client_attr_destroy</a> (<a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> *attr)</td></tr> <tr class="separator:gab38a626d41d870f726fd16567fde1a88"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2c0667fe7d50dfc2330ed4e545820508"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#ga2c0667fe7d50dfc2330ed4e545820508">globus_gram_client_attr_set_credential</a> (<a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> attr, gss_cred_id_t credential)</td></tr> <tr class="separator:ga2c0667fe7d50dfc2330ed4e545820508"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga50f09c9a35cdb030cce3d21e82d3b2cc"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#ga50f09c9a35cdb030cce3d21e82d3b2cc">globus_gram_client_attr_get_credential</a> (<a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> attr, gss_cred_id_t *credential)</td></tr> <tr class="separator:ga50f09c9a35cdb030cce3d21e82d3b2cc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga085f1b69523a16ec367cd6d842f7abb5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#ga085f1b69523a16ec367cd6d842f7abb5">globus_gram_client_attr_set_delegation_mode</a> (<a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> attr, globus_io_secure_delegation_mode_t mode)</td></tr> <tr class="separator:ga085f1b69523a16ec367cd6d842f7abb5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6a2f0830046774d8d80df37be4ad48a1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__globus__gram__client__attr.html#ga6a2f0830046774d8d80df37be4ad48a1">globus_gram_client_attr_get_delegation_mode</a> (<a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> attr, globus_io_secure_delegation_mode_t *mode)</td></tr> <tr class="separator:ga6a2f0830046774d8d80df37be4ad48a1"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <h2 class="groupheader">Macro Definition Documentation</h2> <a class="anchor" id="gabd78ad96b0bf2f28d89293e143ae2c9d"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define GLOBUS_GRAM_CLIENT_NO_ATTR</td> </tr> </table> </div><div class="memdoc"> <p>Default GRAM client operation attribute. </p> <p>The GLOBUS_GRAM_CLIENT_NO_ATTR macro defines a constant for use when a user of the GRAM client API does not want to specify any non-default GRAM attributes. </p> </div> </div> <h2 class="groupheader">Typedef Documentation</h2> <a class="anchor" id="gab906c3d70b18b429bac1b0ae8a7304da"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void* <a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a></td> </tr> </table> </div><div class="memdoc"> <p>GRAM client operation attribute. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da" title="GRAM client operation attribute.">globus_gram_client_attr_t</a> type is an opaque type describing GRAM attributes. It can be accessed or modified by functions in the <a class="el" href="group__globus__gram__client__attr.html">GRAM Client Attribute Functions</a> documentation. </p> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="ga36f5df0da2ae30f011315118e2be181e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int globus_gram_client_attr_init </td> <td>(</td> <td class="paramtype"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> * </td> <td class="paramname"><em>attr</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Initialize a GRAM client attribute. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#ga36f5df0da2ae30f011315118e2be181e" title="Initialize a GRAM client attribute.">globus_gram_client_attr_init()</a> function creates a new opaque structure that can be used to specify custom attributes for performing GRAM client operations.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">attr</td><td>An output parameter which will be set to the newly initialized attribute.</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__gram__client__attr.html#ga36f5df0da2ae30f011315118e2be181e" title="Initialize a GRAM client attribute.">globus_gram_client_attr_init()</a> modifies the <em>attr</em> parameter to point to a new GRAM client attribute and returns <em>GLOBUS_SUCCESS</em>. If an error occurs, <a class="el" href="group__globus__gram__client__attr.html#ga36f5df0da2ae30f011315118e2be181e" title="Initialize a GRAM client attribute.">globus_gram_client_attr_init()</a> returns an integer error code and value of <em>attr</em> is undefined.</dd></dl> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">GLOBUS_SUCCESS</td><td>Success </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</td><td>Invalid attribute </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_MALLOC_FAILED</td><td>Out of memory</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__globus__gram__client__attr.html#gab38a626d41d870f726fd16567fde1a88" title="Destroy a GRAM client attribute.">globus_gram_client_attr_destroy()</a> </dd></dl> <p>References <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfadac86d02a9c32b4beafc9ae145cc51a62b">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</a>, and <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfada26e43b670dda06be33dd271ec456299c">GLOBUS_GRAM_PROTOCOL_ERROR_MALLOC_FAILED</a>.</p> </div> </div> <a class="anchor" id="gab38a626d41d870f726fd16567fde1a88"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int globus_gram_client_attr_destroy </td> <td>(</td> <td class="paramtype"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> * </td> <td class="paramname"><em>attr</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Destroy a GRAM client attribute. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#gab38a626d41d870f726fd16567fde1a88" title="Destroy a GRAM client attribute.">globus_gram_client_attr_destroy()</a> function destroys and frees a GRAM client attribute. After this function returns, the value pointed to by <em>attr</em> is no longer valid and must not be used.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">attr</td><td>A pointer to the attribute to destroy. All data associated with the attribute will be freed and it will be an invalid attribute.</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__gram__client__attr.html#gab38a626d41d870f726fd16567fde1a88" title="Destroy a GRAM client attribute.">globus_gram_client_attr_destroy()</a> destroys the attribute pointed to by the <em>attr</em> parameter and sets it to an invalid state. If an error occurs, <a class="el" href="group__globus__gram__client__attr.html#gab38a626d41d870f726fd16567fde1a88" title="Destroy a GRAM client attribute.">globus_gram_client_attr_destroy()</a> returns an integer error code and value of <em>attr</em> is unchanged.</dd></dl> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">GLOBUS_SUCCESS</td><td>Success </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</td><td>Invalid attribute</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__globus__gram__client__attr.html#ga36f5df0da2ae30f011315118e2be181e" title="Initialize a GRAM client attribute.">globus_gram_client_attr_init()</a> </dd></dl> <p>References <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfadac86d02a9c32b4beafc9ae145cc51a62b">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</a>.</p> </div> </div> <a class="anchor" id="ga2c0667fe7d50dfc2330ed4e545820508"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int globus_gram_client_attr_set_credential </td> <td>(</td> <td class="paramtype"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> </td> <td class="paramname"><em>attr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">gss_cred_id_t </td> <td class="paramname"><em>credential</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set a GRAM client attribute's security credential. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#ga2c0667fe7d50dfc2330ed4e545820508" title="Set a GRAM client attribute's security credential.">globus_gram_client_attr_set_credential()</a> function sets the value of the <b>credential</b> in an attribute to the GSSAPI credential named by the <em>credential</em> parameter. This is done as a shallow copy, so the value of <em>credential</em> must not be freed until the attribute will no longer be used.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">attr</td><td>The attribute set to modify to use the credential named by the <em>credential</em> parameter. </td></tr> <tr><td class="paramname">credential</td><td>The GSSAPI credential to use with the attribute named by the <em>attr</em> parameter. This may be <em>GSS_C_NO_CREDENTIAL</em> to set the attribute to use the default security credential.</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__gram__client__attr.html#ga2c0667fe7d50dfc2330ed4e545820508" title="Set a GRAM client attribute's security credential.">globus_gram_client_attr_set_credential()</a> modifies the the attribute pointed to by the <em>attr</em> parameter to use the credential specified by the <em>credential</em> parameter and returns <em>GLOBUS_SUCCESS</em>. If an error occurs, <a class="el" href="group__globus__gram__client__attr.html#ga2c0667fe7d50dfc2330ed4e545820508" title="Set a GRAM client attribute's security credential.">globus_gram_client_attr_set_credential()</a> returns an integer error code and the attribute named by <em>attr</em> is unchanged.</dd></dl> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</td><td>An invalid attribute set was passed to this function.</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__globus__gram__client__attr.html#ga50f09c9a35cdb030cce3d21e82d3b2cc" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_credential()</a> </dd></dl> <p>References <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfadac86d02a9c32b4beafc9ae145cc51a62b">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</a>.</p> </div> </div> <a class="anchor" id="ga50f09c9a35cdb030cce3d21e82d3b2cc"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int globus_gram_client_attr_get_credential </td> <td>(</td> <td class="paramtype"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> </td> <td class="paramname"><em>attr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">gss_cred_id_t * </td> <td class="paramname"><em>credential</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get a GRAM client attribute's security credential. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#ga50f09c9a35cdb030cce3d21e82d3b2cc" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_credential()</a> function gets the value of the <b>credential</b> in an attribute and modifies the <em>credential</em> parameter to point to it. This is a shallow copy.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">attr</td><td>The attribute set to query for its <em>credential</em>. </td></tr> <tr><td class="paramname">credential</td><td>An output parameter that will be initialized to point to the GSSAPI credential which the <em>attr</em> is currently using.</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__gram__client__attr.html#ga50f09c9a35cdb030cce3d21e82d3b2cc" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_credential()</a> modifies the the value pointed to by the <em>credential</em> parameter to be the same credential as that being used by the attribute named by the <em>attr</em> parameter and returns <em>GLOBUS_SUCCESS</em>. If an error occurs, <a class="el" href="group__globus__gram__client__attr.html#ga50f09c9a35cdb030cce3d21e82d3b2cc" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_credential()</a> returns an integer error code and the value pointed to by the <em>credential</em> parameter is undefined.</dd></dl> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">GLOBUS_SUCCESS</td><td>Success </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</td><td>Invalid attribute </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETER</td><td>Null parameter</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__globus__gram__client__attr.html#ga2c0667fe7d50dfc2330ed4e545820508" title="Set a GRAM client attribute's security credential.">globus_gram_client_attr_set_credential()</a> </dd></dl> <p>References <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfadac86d02a9c32b4beafc9ae145cc51a62b">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</a>, and <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfada886cdedbde30e16f277df62da20c58b3">GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETER</a>.</p> </div> </div> <a class="anchor" id="ga085f1b69523a16ec367cd6d842f7abb5"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int globus_gram_client_attr_set_delegation_mode </td> <td>(</td> <td class="paramtype"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> </td> <td class="paramname"><em>attr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">globus_io_secure_delegation_mode_t </td> <td class="paramname"><em>mode</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set a GRAM client attribute's delegation mode. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#ga085f1b69523a16ec367cd6d842f7abb5" title="Set a GRAM client attribute's delegation mode.">globus_gram_client_attr_set_delegation_mode()</a> function sets the value of the <b>delegation_mode</b> in an attribute to the delegation mode in the <em>mode</em> parameter.</p> <p>The GRAM client supports the following delegation modes:</p> <ul> <li><b>GLOBUS_IO_SECURE_DELEGATION_MODE_LIMITED_PROXY</b> </li> <li><b>GLOBUS_IO_SECURE_DELEGATION_MODE_FULL_PROXY</b> </li> </ul> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">attr</td><td>The attribute set to modify to use the delegation mode in the <em>mode</em> parameter. </td></tr> <tr><td class="paramname">mode</td><td>The new value of the delegation mode.</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__gram__client__attr.html#ga085f1b69523a16ec367cd6d842f7abb5" title="Set a GRAM client attribute's delegation mode.">globus_gram_client_attr_set_delegation_mode()</a> modifies the the attribute named by the <em>attr</em> parameter to use the delegation mode in the <em>mode</em> parameter and returns GLOBUS_SUCCESS. If an error occurs, <a class="el" href="group__globus__gram__client__attr.html#ga085f1b69523a16ec367cd6d842f7abb5" title="Set a GRAM client attribute's delegation mode.">globus_gram_client_attr_set_delegation_mode()</a> returns an integer error code and the <em>delegation_mode</em> attribute value is unchanged.</dd></dl> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">GLOBUS_SUCCESS</td><td>Success </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</td><td>Invalid attribute</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__globus__gram__client__attr.html#ga6a2f0830046774d8d80df37be4ad48a1" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_delegation_mode()</a> </dd></dl> <p>References <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfadac86d02a9c32b4beafc9ae145cc51a62b">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</a>.</p> </div> </div> <a class="anchor" id="ga6a2f0830046774d8d80df37be4ad48a1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int globus_gram_client_attr_get_delegation_mode </td> <td>(</td> <td class="paramtype"><a class="el" href="group__globus__gram__client__attr.html#gab906c3d70b18b429bac1b0ae8a7304da">globus_gram_client_attr_t</a> </td> <td class="paramname"><em>attr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">globus_io_secure_delegation_mode_t * </td> <td class="paramname"><em>mode</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get a GRAM client attribute's security credential. </p> <p>The <a class="el" href="group__globus__gram__client__attr.html#ga6a2f0830046774d8d80df37be4ad48a1" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_delegation_mode()</a> function gets the value of the <b>delegation_mode</b> in an attribute and modifies the <em>mode</em> parameter to point to its value.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">attr</td><td>The attribute set to query for its <em>delegation_mode</em>. </td></tr> <tr><td class="paramname">mode</td><td>An output parameter that will be set to point to the delegation mode which the <em>attr</em> is currently using.</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Upon success, <a class="el" href="group__globus__gram__client__attr.html#ga6a2f0830046774d8d80df37be4ad48a1" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_delegation_mode()</a> modifies the the value pointed to by the <em>mode</em> parameter as described above and returns <em>GLOBUS_SUCCESS</em>. If an error occurs, <a class="el" href="group__globus__gram__client__attr.html#ga6a2f0830046774d8d80df37be4ad48a1" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_delegation_mode()</a> returns an integer error code and the value pointed to by the <em>mode</em> parameter is undefined.</dd></dl> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">GLOBUS_SUCCESS</td><td>Success </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</td><td>Invalid attribute </td></tr> <tr><td class="paramname">GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETER</td><td>Null parameter</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__globus__gram__client__attr.html#ga6a2f0830046774d8d80df37be4ad48a1" title="Get a GRAM client attribute's security credential.">globus_gram_client_attr_get_delegation_mode()</a> </dd></dl> <p>References <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfadac86d02a9c32b4beafc9ae145cc51a62b">GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR</a>, and <a class="elRef" href="group__globus__gram__protocol__error.html#gga863534740ac3b78cff476a36d197bfada886cdedbde30e16f277df62da20c58b3">GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETER</a>.</p> </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>