00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00022 #ifndef GLOBUS_ERROR_ERRNO_H
00023 #define GLOBUS_ERROR_ERRNO_H
00024
00041 #include "globus_common_include.h"
00042 #include "globus_object.h"
00043 #include "globus_module.h"
00044
00045 #ifdef __cplusplus
00046 extern "C" {
00047 #endif
00048
00064 #define GLOBUS_ERROR_TYPE_ERRNO (&GLOBUS_ERROR_TYPE_ERRNO_DEFINITION)
00065
00066 extern const globus_object_type_t GLOBUS_ERROR_TYPE_ERRNO_DEFINITION;
00067
00068 #ifndef DOXYGEN
00069
00070 globus_object_t *
00071 globus_error_construct_errno_error(
00072 globus_module_descriptor_t * base_source,
00073 globus_object_t * base_cause,
00074 const int system_errno);
00075
00076 globus_object_t *
00077 globus_error_initialize_errno_error(
00078 globus_object_t * error,
00079 globus_module_descriptor_t * base_source,
00080 globus_object_t * base_cause,
00081 const int system_errno);
00082
00083 #endif
00084
00095 #ifndef DOXYGEN
00096
00097 int
00098 globus_error_errno_get_errno(
00099 globus_object_t * error);
00100
00101 void
00102 globus_error_errno_set_errno(
00103 globus_object_t * error,
00104 const int system_errno);
00105
00106 #endif
00107
00118 #ifndef DOXYGEN
00119
00120 globus_bool_t
00121 globus_error_errno_match(
00122 globus_object_t * error,
00123 globus_module_descriptor_t * module,
00124 int system_errno);
00125
00126 int
00127 globus_error_errno_search(
00128 globus_object_t * error);
00129
00130 globus_object_t *
00131 globus_error_wrap_errno_error(
00132 globus_module_descriptor_t * base_source,
00133 int system_errno,
00134 int type,
00135 const char * source_file,
00136 const char * source_func,
00137 int source_line,
00138 const char * short_desc_format,
00139 ...);
00140
00141 #endif
00142
00143 #ifdef __cplusplus
00144 }
00145 #endif
00146
00147 #endif