libmp/include/error.h

129 lines
4.4 KiB
C
Raw Normal View History

2024-06-20 00:34:32 +00:00
#pragma once
#define lm_strerror_dup() \
{ strdup(lm_strerror()) }
2024-06-20 00:34:32 +00:00
typedef enum lm_error {
LM_ERR_NoError = 0,
LM_ERR_URLBadChar = 1,
LM_ERR_URLBadProtocol = 2,
LM_ERR_URLTooLarge = 3,
LM_ERR_URLHostLarge = 4,
LM_ERR_URLPathLarge = 5,
LM_ERR_URLBadHost = 6,
LM_ERR_URLBadPort = 7,
LM_ERR_URLBadPath = 8,
LM_ERR_URLPortUnknown = 9,
LM_ERR_BadPort = 10,
LM_ERR_BadHost = 11,
LM_ERR_PoolNoSupport = 12,
LM_ERR_URLEnd = 13,
LM_ERR_MPTPBadVersion = 14,
LM_ERR_MPTPBadCode = 15,
LM_ERR_MPTPBadUrl = 16,
LM_ERR_MPTPHostFail = 17,
LM_ERR_MPTPSocketFail = 18,
LM_ERR_MPTPConnectFail = 19,
LM_ERR_MPTPRecvFail = 20,
LM_ERR_MPTPSendFail = 21,
LM_ERR_MPTPBadData = 22,
LM_ERR_MPTPBadHost = 23,
LM_ERR_MPTPSetsockopt = 24,
LM_ERR_MPTPTimeout = 25,
LM_ERR_MPTPBindFail = 26,
LM_ERR_ArgNULL = 27,
LM_ERR_MPTPNotResponse = 28,
LM_ERR_MPTPNotRequest = 29,
LM_ERR_MPTPNotLast = 30,
LM_ERR_NoPort = 31,
LM_ERR_PoolInfoBad = 32,
LM_ERR_ArcWBlockFail = 33,
LM_ERR_ArcRBlockFail = 34,
LM_ERR_ArcOpenFail = 35,
LM_ERR_ArcWHeaderFail = 36,
LM_ERR_ArcWEntryFail = 37,
LM_ERR_ArcNewFail = 38,
LM_ERR_ArcNextHeaderFail = 39,
LM_ERR_GetCwdFail = 39,
LM_ERR_PoolListDirFail = 40,
LM_ERR_PoolListCantRead = 41,
LM_ERR_PoolInfoCantRead = 42,
LM_ERR_PkgBadName = 43,
LM_ERR_PkgDataBad = 44,
LM_ERR_CtxDataNULL = 45,
LM_ERR_CtxTempFail = 46,
LM_ERR_CtxTempNotDir = 47,
LM_ERR_CtxTempNoWrite = 48,
LM_ERR_CtxRootFail = 49,
LM_ERR_CtxRootNotDir = 50,
LM_ERR_CtxRootNoWrite = 51,
LM_ERR_CtxDataNotDir = 52,
LM_ERR_CtxDataNoWrite = 53,
LM_ERR_CtxDataFailMkdir = 54,
LM_ERR_ArcRealpathFail = 55,
LM_ERR_PoolTestNotPong = 56,
LM_ERR_PkgPathsEmpty = 57,
LM_ERR_SendOpenFail = 58,
LM_ERR_RecvDelFail = 59,
LM_ERR_RecvOpenFail = 60,
LM_ERR_RecvBadCode = 61,
LM_ERR_RecvWriteFail = 62,
LM_ERR_PkgNotFound = 63,
LM_ERR_DbCantAccess = 64,
LM_ERR_DbSqlOpenFail = 65,
LM_ERR_DbSqlCreateFail = 66,
LM_ERR_DbSqlPrepareFail = 67,
LM_ERR_DbSqlInsertFail = 68,
LM_ERR_PkgGPGFail = 69,
LM_ERR_PkgGPGSigFail = 70,
LM_ERR_PkgGPGArchiveFail = 71,
LM_ERR_PkgSigNoMatch = 72,
LM_ERR_PkgSigNoResult = 73,
LM_ERR_PoolPathsEmpty = 74,
LM_ERR_PoolNotAvailable = 75,
LM_ERR_PoolUrlEmpty = 76,
LM_ERR_PoolBadDir = 77,
LM_ERR_PoolBadPaths = 78,
LM_ERR_DbFilesNotFound = 79,
LM_ERR_DbFilesOpenFail = 80,
LM_ERR_DbFilesDirFail = 81,
LM_ERR_DbFilesUnlinkFail = 82,
LM_ERR_DbFilesWriteFail = 83,
LM_ERR_DbKeepsNotFound = 84,
LM_ERR_DbKeepsOpenFail = 85,
LM_ERR_DbKeepsDirFail = 86,
LM_ERR_DbKeepsUnlinkFail = 87,
LM_ERR_DbSqlNotFound = 88,
LM_ERR_DependNotFound = 89,
LM_ERR_InstallDownloadFail = 90,
LM_ERR_PkgNotDownloaded = 91,
LM_ERR_PkgRemoveDownloadFail = 92,
LM_ERR_CtxTempNULL = 93,
LM_ERR_CtxRootNULL = 94,
LM_ERR_DstOpenFail = 95,
LM_ERR_SrcOpenFail = 96,
LM_ERR_DstWriteFail = 97,
LM_ERR_CtxTempFailMkdir = 98,
LM_ERR_PkgBadArchive = 99,
LM_ERR_PkgDataNotMatch = 100,
LM_ERR_PkgChangesUpdateFail = 101,
LM_ERR_PkgHashesOpenFail = 102,
LM_ERR_PkgNoPool = 103,
LM_ERR_DbChangesUnlinkFail = 104,
LM_ERR_SendStatFail = 105,
LM_ERR_SendSnprintfFail = 106,
LM_ERR_SendReadFail = 107,
LM_ERR_RecvBadSize = 108,
LM_ERR_RecvNotCompleted = 109,
2024-06-20 00:34:32 +00:00
} lm_error_t;
typedef struct lm_error_desc {
lm_error_t code;
2024-06-20 22:36:56 +00:00
char *desc;
2024-06-20 00:34:32 +00:00
} lm_error_desc_t;
void lm_error_set(lm_error_t code, ...);
void lm_error_clear();
2024-06-20 00:34:32 +00:00
lm_error_t lm_error();
2024-06-20 22:36:56 +00:00
char *lm_strerror();