Grid Community Toolkit
6.2.1607800521 (tag: v6.2.20201212)
|
Error Object Helper Functions. More...
Functions | |
globus_bool_t | globus_error_match_openssl_error (globus_object_t *error, unsigned long library, unsigned long function, unsigned long reason) |
globus_object_t * | globus_error_wrap_openssl_error (globus_module_descriptor_t *base_source, int error_type, const char *source_file, const char *source_func, int source_line, const char *format,...) |
Error Object Helper Functions.
The functions in the Error Object Helper Functions section deal with Globus error objects constructed with OpenSSL error data. These functions manipulate the generic globus_object_t representation of an OpenSSL error.
globus_bool_t globus_error_match_openssl_error | ( | globus_object_t * | error, |
unsigned long | library, | ||
unsigned long | function, | ||
unsigned long | reason | ||
) |
Check whether the error originated from a specific library, from a specific function and is of a specific type.
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.
error | The error object for which to perform the check |
library | The library to check for |
function | The function to check for |
reason | The type to check for |
GLOBUS_TRUE | Error matched |
GLOBUS_FALSE | Error failed to match |
globus_object_t* globus_error_wrap_openssl_error | ( | globus_module_descriptor_t * | base_source, |
int | error_type, | ||
const char * | source_file, | ||
const char * | source_func, | ||
int | source_line, | ||
const char * | format, | ||
... | |||
) |
Wrap the OpenSSL error and create a wrapped globus error object from the error.
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.
base_source | The module that the error was generated from |
error_type | The type of error encapsulating the OpenSSL error |
source_file | Name of file. Use FILE |
source_func | Name of function. Use _globus_func_name and declare your func with GlobusFuncName(<name>) |
source_line | Line number. Use LINE |
format | 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). |