<!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.3 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main 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__openssl__error__utility.html',''); </script> <div id="doc-content"> <div class="header"> <div class="headertitle"> <h1>Error Helper Functions</h1> </div> <div class="ingroups"><a class="el" href="group__globus__openssl__error__api.html">Globus OPENSSL Error API</a></div></div> <div class="contents"> <p>Utility functions that deal with Globus OpenSSL Error objects. <a href="#_details">More...</a></p> <div class="dynheader"> Collaboration diagram for Error Helper Functions:</div> <div class="dyncontent"> <center><table><tr><td><img src="group__globus__openssl__error__utility.png" border="0" alt="" usemap="#group____globus____openssl____error____utility"/> <map name="group____globus____openssl____error____utility" id="group____globus____openssl____error____utility"> <area shape="rect" id="node1" href="group__globus__openssl__error__api.html" title="Globus OPENSSL Error API" alt="" coords="7,5,193,35"/></map> </td></tr></table></center> </div> <h2><a name="member-group"></a> OpenSSL Error Match</h2> <ul> <li>globus_bool_t <a class="el" href="group__globus__openssl__error__utility.html#ga944c2c110759c9d3857561beb2a33bc6">globus_error_match_openssl_error</a> (globus_object_t *error, unsigned long library, unsigned long function, unsigned long reason) </ul> <h2><a name="member-group"></a> Wrap OpenSSL Error</h2> <ul> <li>globus_object_t * <a class="el" href="group__globus__openssl__error__utility.html#ga106c894da18b56f40b841b356d7c0ae5">globus_error_wrap_openssl_error</a> (globus_module_descriptor_t *base_source, int error_type, const char *source_file, const char *source_func, int source_line, const char *format,...) </ul> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>Utility functions that deal with Globus OpenSSL Error objects. </p> <p>This section defines utility function for Globus OpenSSL Error objects. </p> <hr/><h2>Function Documentation</h2> <a class="anchor" id="ga944c2c110759c9d3857561beb2a33bc6"></a><!-- doxytag: member="globus_error_openssl.c::globus_error_match_openssl_error" ref="ga944c2c110759c9d3857561beb2a33bc6" args="(globus_object_t *error, unsigned long library, unsigned long function, unsigned long reason)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">globus_bool_t globus_error_match_openssl_error </td> <td>(</td> <td class="paramtype">globus_object_t * </td> <td class="paramname"><em>error</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned long </td> <td class="paramname"><em>library</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned long </td> <td class="paramname"><em>function</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned long </td> <td class="paramname"><em>reason</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Check whether the error originated from a specific library, from a specific function and is of a specific type. </p> <p>This function checks whether the error or any of it's causative errors originated from a specific library, specific function and is of a specific type.</p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">error</td><td>The error object for which to perform the check </td></tr> <tr><td class="paramname">library</td><td>The library to check for </td></tr> <tr><td class="paramname">function</td><td>The function to check for </td></tr> <tr><td class="paramname">reason</td><td>The type to check for </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>GLOBUS_TRUE - the error matched GLOBUS_FALSE - the error failed to match </dd></dl> </div> </div> <a class="anchor" id="ga106c894da18b56f40b841b356d7c0ae5"></a><!-- doxytag: member="globus_error_openssl.c::globus_error_wrap_openssl_error" ref="ga106c894da18b56f40b841b356d7c0ae5" args="(globus_module_descriptor_t *base_source, int error_type, const char *source_file, const char *source_func, int source_line, const char *format,...)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">globus_object_t* globus_error_wrap_openssl_error </td> <td>(</td> <td class="paramtype">globus_module_descriptor_t * </td> <td class="paramname"><em>base_source</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>error_type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>source_file</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>source_func</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>source_line</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>format</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname"><em>...</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Wrap the OpenSSL error and create a wrapped globus error object from the error. </p> <p>This function gets all the openssl errors from the error list, and chains them using the globus error string object. The resulting globus error object is a wrapper to the openssl error at the end of the chain.</p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">base_source</td><td>The module that the error was generated from </td></tr> <tr><td class="paramname">error_type</td><td>The type of error encapsulating the openssl error </td></tr> <tr><td class="paramname">source_file</td><td>Name of file. Use __FILE__ </td></tr> <tr><td class="paramname">source_func</td><td>Name of function. Use _globus_func_name and declare your func with GlobusFuncName(<name>) </td></tr> <tr><td class="paramname">source_line</td><td>Line number. Use __LINE__ </td></tr> <tr><td class="paramname">format</td><td>format string for the description of the error entry point where the openssl error occurred, should be followed by parameters to fill the format string (like in printf). </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>The globus error object. A globus_result_t object can be created using the globus_error_put function</dd></dl> <dl class="see"><dt><b>See also:</b></dt><dd>globus_error_put() </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>