00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 static const int err_code_from_index[] = {
00023 GPG_ERR_EPERM,
00024 GPG_ERR_ENOENT,
00025 GPG_ERR_ESRCH,
00026 GPG_ERR_EINTR,
00027 GPG_ERR_EIO,
00028 GPG_ERR_ENXIO,
00029 GPG_ERR_E2BIG,
00030 GPG_ERR_ENOEXEC,
00031 GPG_ERR_EBADF,
00032 GPG_ERR_ECHILD,
00033 GPG_ERR_EAGAIN,
00034 GPG_ERR_EWOULDBLOCK,
00035 GPG_ERR_ENOMEM,
00036 GPG_ERR_EACCES,
00037 GPG_ERR_EFAULT,
00038 GPG_ERR_ENOTBLK,
00039 GPG_ERR_EBUSY,
00040 GPG_ERR_EEXIST,
00041 GPG_ERR_EXDEV,
00042 GPG_ERR_ENODEV,
00043 GPG_ERR_ENOTDIR,
00044 GPG_ERR_EISDIR,
00045 GPG_ERR_EINVAL,
00046 GPG_ERR_ENFILE,
00047 GPG_ERR_EMFILE,
00048 GPG_ERR_ENOTTY,
00049 GPG_ERR_ETXTBSY,
00050 GPG_ERR_EFBIG,
00051 GPG_ERR_ENOSPC,
00052 GPG_ERR_ESPIPE,
00053 GPG_ERR_EROFS,
00054 GPG_ERR_EMLINK,
00055 GPG_ERR_EPIPE,
00056 GPG_ERR_EDOM,
00057 GPG_ERR_ERANGE,
00058 GPG_ERR_EDEADLK,
00059 GPG_ERR_EDEADLOCK,
00060 GPG_ERR_ENAMETOOLONG,
00061 GPG_ERR_ENOLCK,
00062 GPG_ERR_ENOSYS,
00063 GPG_ERR_ENOTEMPTY,
00064 GPG_ERR_ELOOP,
00065 GPG_ERR_ENOMSG,
00066 GPG_ERR_EIDRM,
00067 GPG_ERR_ECHRNG,
00068 GPG_ERR_EL2NSYNC,
00069 GPG_ERR_EL3HLT,
00070 GPG_ERR_EL3RST,
00071 GPG_ERR_ELNRNG,
00072 GPG_ERR_EUNATCH,
00073 GPG_ERR_ENOCSI,
00074 GPG_ERR_EL2HLT,
00075 GPG_ERR_EBADE,
00076 GPG_ERR_EBADR,
00077 GPG_ERR_EXFULL,
00078 GPG_ERR_ENOANO,
00079 GPG_ERR_EBADRQC,
00080 GPG_ERR_EBADSLT,
00081 GPG_ERR_EBFONT,
00082 GPG_ERR_ENOSTR,
00083 GPG_ERR_ENODATA,
00084 GPG_ERR_ETIME,
00085 GPG_ERR_ENOSR,
00086 GPG_ERR_ENONET,
00087 GPG_ERR_ENOPKG,
00088 GPG_ERR_EREMOTE,
00089 GPG_ERR_ENOLINK,
00090 GPG_ERR_EADV,
00091 GPG_ERR_ESRMNT,
00092 GPG_ERR_ECOMM,
00093 GPG_ERR_EPROTO,
00094 GPG_ERR_EMULTIHOP,
00095 GPG_ERR_EDOTDOT,
00096 GPG_ERR_EBADMSG,
00097 GPG_ERR_EOVERFLOW,
00098 GPG_ERR_ENOTUNIQ,
00099 GPG_ERR_EBADFD,
00100 GPG_ERR_EREMCHG,
00101 GPG_ERR_ELIBACC,
00102 GPG_ERR_ELIBBAD,
00103 GPG_ERR_ELIBSCN,
00104 GPG_ERR_ELIBMAX,
00105 GPG_ERR_ELIBEXEC,
00106 GPG_ERR_EILSEQ,
00107 GPG_ERR_ERESTART,
00108 GPG_ERR_ESTRPIPE,
00109 GPG_ERR_EUSERS,
00110 GPG_ERR_ENOTSOCK,
00111 GPG_ERR_EDESTADDRREQ,
00112 GPG_ERR_EMSGSIZE,
00113 GPG_ERR_EPROTOTYPE,
00114 GPG_ERR_ENOPROTOOPT,
00115 GPG_ERR_EPROTONOSUPPORT,
00116 GPG_ERR_ESOCKTNOSUPPORT,
00117 GPG_ERR_ENOTSUP,
00118 GPG_ERR_EOPNOTSUPP,
00119 GPG_ERR_EPFNOSUPPORT,
00120 GPG_ERR_EAFNOSUPPORT,
00121 GPG_ERR_EADDRINUSE,
00122 GPG_ERR_EADDRNOTAVAIL,
00123 GPG_ERR_ENETDOWN,
00124 GPG_ERR_ENETUNREACH,
00125 GPG_ERR_ENETRESET,
00126 GPG_ERR_ECONNABORTED,
00127 GPG_ERR_ECONNRESET,
00128 GPG_ERR_ENOBUFS,
00129 GPG_ERR_EISCONN,
00130 GPG_ERR_ENOTCONN,
00131 GPG_ERR_ESHUTDOWN,
00132 GPG_ERR_ETOOMANYREFS,
00133 GPG_ERR_ETIMEDOUT,
00134 GPG_ERR_ECONNREFUSED,
00135 GPG_ERR_EHOSTDOWN,
00136 GPG_ERR_EHOSTUNREACH,
00137 GPG_ERR_EALREADY,
00138 GPG_ERR_EINPROGRESS,
00139 GPG_ERR_ESTALE,
00140 GPG_ERR_EUCLEAN,
00141 GPG_ERR_ENOTNAM,
00142 GPG_ERR_ENAVAIL,
00143 GPG_ERR_EISNAM,
00144 GPG_ERR_EREMOTEIO,
00145 GPG_ERR_EDQUOT,
00146 GPG_ERR_ENOMEDIUM,
00147 GPG_ERR_EMEDIUMTYPE,
00148 GPG_ERR_ECANCELED,
00149 };
00150
00151 #define errno_to_idx(code) (0 ? -1 \
00152 : ((code >= 1) && (code <= 11)) ? (code - 1) \
00153 : ((code >= 11) && (code <= 35)) ? (code - 0) \
00154 : ((code >= 35) && (code <= 40)) ? (code - -1) \
00155 : ((code >= 42) && (code <= 57)) ? (code - 0) \
00156 : ((code >= 59) && (code <= 95)) ? (code - 1) \
00157 : ((code >= 95) && (code <= 125)) ? (code - 0) \
00158 : -1)