* __xmlIOErr: * @code: the error number * @ * @extra: extra information * * Handle an I/O error */
| 135 | * Handle an I/O error |
| 136 | */ |
| 137 | int |
| 138 | __xmlIOErr(int domain, int code, const char *extra) |
| 139 | { |
| 140 | xmlStructuredErrorFunc schannel = NULL; |
| 141 | xmlGenericErrorFunc channel = NULL; |
| 142 | void *data = NULL; |
| 143 | const char *fmt, *arg1, *arg2; |
| 144 | int res; |
| 145 | |
| 146 | if (code == 0) { |
| 147 | if (errno == 0) code = XML_IO_UNKNOWN; |
| 148 | #ifdef EACCES |
| 149 | else if (errno == EACCES) code = XML_IO_EACCES; |
| 150 | #endif |
| 151 | #ifdef EAGAIN |
| 152 | else if (errno == EAGAIN) code = XML_IO_EAGAIN; |
| 153 | #endif |
| 154 | #ifdef EBADF |
| 155 | else if (errno == EBADF) code = XML_IO_EBADF; |
| 156 | #endif |
| 157 | #ifdef EBADMSG |
| 158 | else if (errno == EBADMSG) code = XML_IO_EBADMSG; |
| 159 | #endif |
| 160 | #ifdef EBUSY |
| 161 | else if (errno == EBUSY) code = XML_IO_EBUSY; |
| 162 | #endif |
| 163 | #ifdef ECANCELED |
| 164 | else if (errno == ECANCELED) code = XML_IO_ECANCELED; |
| 165 | #endif |
| 166 | #ifdef ECHILD |
| 167 | else if (errno == ECHILD) code = XML_IO_ECHILD; |
| 168 | #endif |
| 169 | #ifdef EDEADLK |
| 170 | else if (errno == EDEADLK) code = XML_IO_EDEADLK; |
| 171 | #endif |
| 172 | #ifdef EDOM |
| 173 | else if (errno == EDOM) code = XML_IO_EDOM; |
| 174 | #endif |
| 175 | #ifdef EEXIST |
| 176 | else if (errno == EEXIST) code = XML_IO_EEXIST; |
| 177 | #endif |
| 178 | #ifdef EFAULT |
| 179 | else if (errno == EFAULT) code = XML_IO_EFAULT; |
| 180 | #endif |
| 181 | #ifdef EFBIG |
| 182 | else if (errno == EFBIG) code = XML_IO_EFBIG; |
| 183 | #endif |
| 184 | #ifdef EINPROGRESS |
| 185 | else if (errno == EINPROGRESS) code = XML_IO_EINPROGRESS; |
| 186 | #endif |
| 187 | #ifdef EINTR |
| 188 | else if (errno == EINTR) code = XML_IO_EINTR; |
| 189 | #endif |
| 190 | #ifdef EINVAL |
| 191 | else if (errno == EINVAL) code = XML_IO_EINVAL; |
| 192 | #endif |
| 193 | #ifdef EIO |
| 194 | else if (errno == EIO) code = XML_IO_EIO; |
no test coverage detected