00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef LIBSTORAGEMGMTERROR_H
00020 #define LIBSTORAGEMGMTERROR_H
00021
00022 #include "libstoragemgmt_common.h"
00023
00024 #ifdef __cplusplus
00025 extern "C" {
00026 #endif
00027
00033 typedef enum {
00034 LSM_ERR_OK = 0,
00036 LSM_ERR_LIB_BUG = 1,
00038 LSM_ERR_PLUGIN_BUG = 2,
00040 LSM_ERR_JOB_STARTED = 7,
00042 LSM_ERR_TIMEOUT = 11,
00044 LSM_ERR_DAEMON_NOT_RUNNING = 12,
00047 LSM_ERR_NAME_CONFLICT = 50,
00049 LSM_ERR_EXISTS_INITIATOR = 52,
00052 LSM_ERR_INVALID_ARGUMENT = 101,
00055 LSM_ERR_NO_STATE_CHANGE = 125,
00058 LSM_ERR_NETWORK_CONNREFUSED = 140,
00059
00061 LSM_ERR_NETWORK_HOSTDOWN = 141,
00063 LSM_ERR_NETWORK_ERROR = 142,
00066 LSM_ERR_NO_MEMORY = 152,
00068 LSM_ERR_NO_SUPPORT = 153,
00071 LSM_ERR_IS_MASKED = 160,
00074 LSM_ERR_NOT_FOUND_ACCESS_GROUP = 200,
00075
00077 LSM_ERR_NOT_FOUND_FS = 201,
00079 LSM_ERR_NOT_FOUND_JOB = 202,
00081 LSM_ERR_NOT_FOUND_POOL = 203,
00083 LSM_ERR_NOT_FOUND_FS_SS = 204,
00085 LSM_ERR_NOT_FOUND_VOLUME = 205,
00087 LSM_ERR_NOT_FOUND_NFS_EXPORT = 206,
00088
00090 LSM_ERR_NOT_FOUND_SYSTEM = 208,
00092 LSM_ERR_NOT_FOUND_DISK = 209,
00093
00094 LSM_ERR_NOT_LICENSED = 226,
00097 LSM_ERR_NO_SUPPORT_ONLINE_CHANGE = 250,
00099 LSM_ERR_NO_SUPPORT_OFFLINE_CHANGE = 251,
00102 LSM_ERR_PLUGIN_AUTH_FAILED = 300,
00103
00105 LSM_ERR_PLUGIN_IPC_FAIL = 301,
00109 LSM_ERR_PLUGIN_SOCKET_PERMISSION = 307,
00110
00112 LSM_ERR_PLUGIN_NOT_EXIST = 311,
00115 LSM_ERR_NOT_ENOUGH_SPACE = 350,
00118 LSM_ERR_TRANSPORT_COMMUNICATION = 400,
00120 LSM_ERR_TRANSPORT_SERIALIZATION = 401,
00122 LSM_ERR_TRANSPORT_INVALID_ARG = 402,
00125 LSM_ERR_LAST_INIT_IN_ACCESS_GROUP = 502,
00126
00127
00128 LSM_ERR_UNSUPPORTED_SEARCH_KEY = 510,
00131 LSM_ERR_EMPTY_ACCESS_GROUP = 511,
00132 LSM_ERR_POOL_NOT_READY = 512,
00133 LSM_ERR_DISK_NOT_FREE = 513,
00134
00135 } lsm_error_number;
00136
00137 typedef struct _lsm_error lsm_error;
00138 typedef lsm_error *lsm_error_ptr;
00139
00146 lsm_error_ptr LSM_DLL_EXPORT lsm_error_last_get(lsm_connect * c);
00147
00153 int LSM_DLL_EXPORT lsm_error_free(lsm_error_ptr err);
00154
00160 lsm_error_number LSM_DLL_EXPORT lsm_error_number_get(lsm_error_ptr e);
00161
00170 char LSM_DLL_EXPORT *lsm_error_message_get(lsm_error_ptr e);
00171
00180 char LSM_DLL_EXPORT *lsm_error_exception_get(lsm_error_ptr e);
00181
00190 char LSM_DLL_EXPORT *lsm_error_debug_get(lsm_error_ptr e);
00191
00201 void LSM_DLL_EXPORT *lsm_error_debug_data_get(lsm_error_ptr e,
00202 uint32_t * size);
00203
00204 #ifdef __cplusplus
00205 }
00206 #endif
00207 #endif