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 globus_object_t *
00127 globus_error_wrap_errno_error(
00128 globus_module_descriptor_t * base_source,
00129 int system_errno,
00130 int type,
00131 const char * source_file,
00132 const char * source_func,
00133 int source_line,
00134 const char * short_desc_format,
00135 ...);
00136
00137 #endif
00138
00139 #ifdef __cplusplus
00140 }
00141 #endif
00142
00143 #endif