Loading...
Searching...
No Matches
Error Object Helper Functions
Globus OpenSSL Error API

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,...)

## Detailed Description

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.

## Function Documentation

## globus_error_match_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.

Parameters

  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

Return values

  GLOBUS_TRUE | Error matched
  GLOBUS_FALSE | Error failed to match

## globus_error_wrap_openssl_error()

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.

Parameters

  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).

Returns
  The globus error object. A globus_result_t object can be created using the globus_error_put function

See also
  globus_error_put()