mirror of
https://github.com/mackron/miniaudio.git
synced 2026-04-23 16:54:03 +02:00
Add early experimental support for Cosmopolitan.
Public issue https://github.com/mackron/miniaudio/issues/495
This commit is contained in:
+402
-401
@@ -6288,7 +6288,7 @@ This section contains the APIs for device playback and capture. Here is where yo
|
|||||||
#endif
|
#endif
|
||||||
#if defined(MA_UNIX) && !defined(MA_ORBIS) && !defined(MA_PROSPERO)
|
#if defined(MA_UNIX) && !defined(MA_ORBIS) && !defined(MA_PROSPERO)
|
||||||
#if defined(MA_LINUX)
|
#if defined(MA_LINUX)
|
||||||
#if !defined(MA_ANDROID) /* ALSA is not supported on Android. */
|
#if !defined(MA_ANDROID) && !defined(__COSMOPOLITAN__) /* ALSA is not supported on Android. */
|
||||||
#define MA_SUPPORT_ALSA
|
#define MA_SUPPORT_ALSA
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
@@ -11378,7 +11378,7 @@ IMPLEMENTATION
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Intrinsics Support */
|
/* Intrinsics Support */
|
||||||
#if defined(MA_X64) || defined(MA_X86)
|
#if (defined(MA_X64) || defined(MA_X86)) && !defined(__COSMOPOLITAN__)
|
||||||
#if defined(_MSC_VER) && !defined(__clang__)
|
#if defined(_MSC_VER) && !defined(__clang__)
|
||||||
/* MSVC. */
|
/* MSVC. */
|
||||||
#if _MSC_VER >= 1400 && !defined(MA_NO_SSE2) /* 2005 */
|
#if _MSC_VER >= 1400 && !defined(MA_NO_SSE2) /* 2005 */
|
||||||
@@ -11815,7 +11815,7 @@ static MA_INLINE unsigned int ma_disable_denormals()
|
|||||||
}
|
}
|
||||||
#elif defined(MA_X86) || defined(MA_X64)
|
#elif defined(MA_X86) || defined(MA_X64)
|
||||||
{
|
{
|
||||||
#if defined(__SSE2__) && !(defined(__TINYC__) || defined(__WATCOMC__)) /* <-- Add compilers that lack support for _mm_getcsr() and _mm_setcsr() to this list. */
|
#if defined(__SSE2__) && !(defined(__TINYC__) || defined(__WATCOMC__) || defined(__COSMOPOLITAN__)) /* <-- Add compilers that lack support for _mm_getcsr() and _mm_setcsr() to this list. */
|
||||||
{
|
{
|
||||||
prevState = _mm_getcsr();
|
prevState = _mm_getcsr();
|
||||||
_mm_setcsr(prevState | MA_MM_DENORMALS_ZERO_MASK | MA_MM_FLUSH_ZERO_MASK);
|
_mm_setcsr(prevState | MA_MM_DENORMALS_ZERO_MASK | MA_MM_FLUSH_ZERO_MASK);
|
||||||
@@ -11855,7 +11855,7 @@ static MA_INLINE void ma_restore_denormals(unsigned int prevState)
|
|||||||
}
|
}
|
||||||
#elif defined(MA_X86) || defined(MA_X64)
|
#elif defined(MA_X86) || defined(MA_X64)
|
||||||
{
|
{
|
||||||
#if defined(__SSE2__) && !(defined(__TINYC__) || defined(__WATCOMC__)) /* <-- Add compilers that lack support for _mm_getcsr() and _mm_setcsr() to this list. */
|
#if defined(__SSE2__) && !(defined(__TINYC__) || defined(__WATCOMC__) || defined(__COSMOPOLITAN__)) /* <-- Add compilers that lack support for _mm_getcsr() and _mm_setcsr() to this list. */
|
||||||
{
|
{
|
||||||
_mm_setcsr(prevState);
|
_mm_setcsr(prevState);
|
||||||
}
|
}
|
||||||
@@ -12573,403 +12573,404 @@ MA_API wchar_t* ma_copy_string_w(const wchar_t* src, const ma_allocation_callbac
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
static ma_result ma_result_from_errno(int e)
|
static ma_result ma_result_from_errno(int e)
|
||||||
{
|
{
|
||||||
switch (e)
|
if (e == 0) {
|
||||||
{
|
return MA_SUCCESS;
|
||||||
case 0: return MA_SUCCESS;
|
}
|
||||||
#ifdef EPERM
|
#ifdef EPERM
|
||||||
case EPERM: return MA_INVALID_OPERATION;
|
else if (e == EPERM) { return MA_INVALID_OPERATION; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOENT
|
#ifdef ENOENT
|
||||||
case ENOENT: return MA_DOES_NOT_EXIST;
|
else if (e == ENOENT) { return MA_DOES_NOT_EXIST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESRCH
|
#ifdef ESRCH
|
||||||
case ESRCH: return MA_DOES_NOT_EXIST;
|
else if (e == ESRCH) { return MA_DOES_NOT_EXIST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EINTR
|
#ifdef EINTR
|
||||||
case EINTR: return MA_INTERRUPT;
|
else if (e == EINTR) { return MA_INTERRUPT; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EIO
|
#ifdef EIO
|
||||||
case EIO: return MA_IO_ERROR;
|
else if (e == EIO) { return MA_IO_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENXIO
|
#ifdef ENXIO
|
||||||
case ENXIO: return MA_DOES_NOT_EXIST;
|
else if (e == ENXIO) { return MA_DOES_NOT_EXIST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef E2BIG
|
#ifdef E2BIG
|
||||||
case E2BIG: return MA_INVALID_ARGS;
|
else if (e == E2BIG) { return MA_INVALID_ARGS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOEXEC
|
#ifdef ENOEXEC
|
||||||
case ENOEXEC: return MA_INVALID_FILE;
|
else if (e == ENOEXEC) { return MA_INVALID_FILE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADF
|
#ifdef EBADF
|
||||||
case EBADF: return MA_INVALID_FILE;
|
else if (e == EBADF) { return MA_INVALID_FILE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECHILD
|
#ifdef ECHILD
|
||||||
case ECHILD: return MA_ERROR;
|
else if (e == ECHILD) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EAGAIN
|
#ifdef EAGAIN
|
||||||
case EAGAIN: return MA_UNAVAILABLE;
|
else if (e == EAGAIN) { return MA_UNAVAILABLE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOMEM
|
#ifdef ENOMEM
|
||||||
case ENOMEM: return MA_OUT_OF_MEMORY;
|
else if (e == ENOMEM) { return MA_OUT_OF_MEMORY; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EACCES
|
#ifdef EACCES
|
||||||
case EACCES: return MA_ACCESS_DENIED;
|
else if (e == EACCES) { return MA_ACCESS_DENIED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EFAULT
|
#ifdef EFAULT
|
||||||
case EFAULT: return MA_BAD_ADDRESS;
|
else if (e == EFAULT) { return MA_BAD_ADDRESS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTBLK
|
#ifdef ENOTBLK
|
||||||
case ENOTBLK: return MA_ERROR;
|
else if (e == ENOTBLK) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBUSY
|
#ifdef EBUSY
|
||||||
case EBUSY: return MA_BUSY;
|
else if (e == EBUSY) { return MA_BUSY; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EEXIST
|
#ifdef EEXIST
|
||||||
case EEXIST: return MA_ALREADY_EXISTS;
|
else if (e == EEXIST) { return MA_ALREADY_EXISTS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EXDEV
|
#ifdef EXDEV
|
||||||
case EXDEV: return MA_ERROR;
|
else if (e == EXDEV) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENODEV
|
#ifdef ENODEV
|
||||||
case ENODEV: return MA_DOES_NOT_EXIST;
|
else if (e == ENODEV) { return MA_DOES_NOT_EXIST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTDIR
|
#ifdef ENOTDIR
|
||||||
case ENOTDIR: return MA_NOT_DIRECTORY;
|
else if (e == ENOTDIR) { return MA_NOT_DIRECTORY; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EISDIR
|
#ifdef EISDIR
|
||||||
case EISDIR: return MA_IS_DIRECTORY;
|
else if (e == EISDIR) { return MA_IS_DIRECTORY; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EINVAL
|
#ifdef EINVAL
|
||||||
case EINVAL: return MA_INVALID_ARGS;
|
else if (e == EINVAL) { return MA_INVALID_ARGS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENFILE
|
#ifdef ENFILE
|
||||||
case ENFILE: return MA_TOO_MANY_OPEN_FILES;
|
else if (e == ENFILE) { return MA_TOO_MANY_OPEN_FILES; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EMFILE
|
#ifdef EMFILE
|
||||||
case EMFILE: return MA_TOO_MANY_OPEN_FILES;
|
else if (e == EMFILE) { return MA_TOO_MANY_OPEN_FILES; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTTY
|
#ifdef ENOTTY
|
||||||
case ENOTTY: return MA_INVALID_OPERATION;
|
else if (e == ENOTTY) { return MA_INVALID_OPERATION; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ETXTBSY
|
#ifdef ETXTBSY
|
||||||
case ETXTBSY: return MA_BUSY;
|
else if (e == ETXTBSY) { return MA_BUSY; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EFBIG
|
#ifdef EFBIG
|
||||||
case EFBIG: return MA_TOO_BIG;
|
else if (e == EFBIG) { return MA_TOO_BIG; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOSPC
|
#ifdef ENOSPC
|
||||||
case ENOSPC: return MA_NO_SPACE;
|
else if (e == ENOSPC) { return MA_NO_SPACE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESPIPE
|
#ifdef ESPIPE
|
||||||
case ESPIPE: return MA_BAD_SEEK;
|
else if (e == ESPIPE) { return MA_BAD_SEEK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EROFS
|
#ifdef EROFS
|
||||||
case EROFS: return MA_ACCESS_DENIED;
|
else if (e == EROFS) { return MA_ACCESS_DENIED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EMLINK
|
#ifdef EMLINK
|
||||||
case EMLINK: return MA_TOO_MANY_LINKS;
|
else if (e == EMLINK) { return MA_TOO_MANY_LINKS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EPIPE
|
#ifdef EPIPE
|
||||||
case EPIPE: return MA_BAD_PIPE;
|
else if (e == EPIPE) { return MA_BAD_PIPE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EDOM
|
#ifdef EDOM
|
||||||
case EDOM: return MA_OUT_OF_RANGE;
|
else if (e == EDOM) { return MA_OUT_OF_RANGE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ERANGE
|
#ifdef ERANGE
|
||||||
case ERANGE: return MA_OUT_OF_RANGE;
|
else if (e == ERANGE) { return MA_OUT_OF_RANGE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EDEADLK
|
#ifdef EDEADLK
|
||||||
case EDEADLK: return MA_DEADLOCK;
|
else if (e == EDEADLK) { return MA_DEADLOCK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENAMETOOLONG
|
#ifdef ENAMETOOLONG
|
||||||
case ENAMETOOLONG: return MA_PATH_TOO_LONG;
|
else if (e == ENAMETOOLONG) { return MA_PATH_TOO_LONG; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOLCK
|
#ifdef ENOLCK
|
||||||
case ENOLCK: return MA_ERROR;
|
else if (e == ENOLCK) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOSYS
|
#ifdef ENOSYS
|
||||||
case ENOSYS: return MA_NOT_IMPLEMENTED;
|
else if (e == ENOSYS) { return MA_NOT_IMPLEMENTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTEMPTY
|
#ifdef ENOTEMPTY
|
||||||
case ENOTEMPTY: return MA_DIRECTORY_NOT_EMPTY;
|
else if (e == ENOTEMPTY) { return MA_DIRECTORY_NOT_EMPTY; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELOOP
|
#ifdef ELOOP
|
||||||
case ELOOP: return MA_TOO_MANY_LINKS;
|
else if (e == ELOOP) { return MA_TOO_MANY_LINKS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOMSG
|
#ifdef ENOMSG
|
||||||
case ENOMSG: return MA_NO_MESSAGE;
|
else if (e == ENOMSG) { return MA_NO_MESSAGE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EIDRM
|
#ifdef EIDRM
|
||||||
case EIDRM: return MA_ERROR;
|
else if (e == EIDRM) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECHRNG
|
#ifdef ECHRNG
|
||||||
case ECHRNG: return MA_ERROR;
|
else if (e == ECHRNG) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EL2NSYNC
|
#ifdef EL2NSYNC
|
||||||
case EL2NSYNC: return MA_ERROR;
|
else if (e == EL2NSYNC) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EL3HLT
|
#ifdef EL3HLT
|
||||||
case EL3HLT: return MA_ERROR;
|
else if (e == EL3HLT) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EL3RST
|
#ifdef EL3RST
|
||||||
case EL3RST: return MA_ERROR;
|
else if (e == EL3RST) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELNRNG
|
#ifdef ELNRNG
|
||||||
case ELNRNG: return MA_OUT_OF_RANGE;
|
else if (e == ELNRNG) { return MA_OUT_OF_RANGE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EUNATCH
|
#ifdef EUNATCH
|
||||||
case EUNATCH: return MA_ERROR;
|
else if (e == EUNATCH) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOCSI
|
#ifdef ENOCSI
|
||||||
case ENOCSI: return MA_ERROR;
|
else if (e == ENOCSI) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EL2HLT
|
#ifdef EL2HLT
|
||||||
case EL2HLT: return MA_ERROR;
|
else if (e == EL2HLT) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADE
|
#ifdef EBADE
|
||||||
case EBADE: return MA_ERROR;
|
else if (e == EBADE) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADR
|
#ifdef EBADR
|
||||||
case EBADR: return MA_ERROR;
|
else if (e == EBADR) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EXFULL
|
#ifdef EXFULL
|
||||||
case EXFULL: return MA_ERROR;
|
else if (e == EXFULL) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOANO
|
#ifdef ENOANO
|
||||||
case ENOANO: return MA_ERROR;
|
else if (e == ENOANO) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADRQC
|
#ifdef EBADRQC
|
||||||
case EBADRQC: return MA_ERROR;
|
else if (e == EBADRQC) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADSLT
|
#ifdef EBADSLT
|
||||||
case EBADSLT: return MA_ERROR;
|
else if (e == EBADSLT) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBFONT
|
#ifdef EBFONT
|
||||||
case EBFONT: return MA_INVALID_FILE;
|
else if (e == EBFONT) { return MA_INVALID_FILE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOSTR
|
#ifdef ENOSTR
|
||||||
case ENOSTR: return MA_ERROR;
|
else if (e == ENOSTR) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENODATA
|
#ifdef ENODATA
|
||||||
case ENODATA: return MA_NO_DATA_AVAILABLE;
|
else if (e == ENODATA) { return MA_NO_DATA_AVAILABLE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ETIME
|
#ifdef ETIME
|
||||||
case ETIME: return MA_TIMEOUT;
|
else if (e == ETIME) { return MA_TIMEOUT; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOSR
|
#ifdef ENOSR
|
||||||
case ENOSR: return MA_NO_DATA_AVAILABLE;
|
else if (e == ENOSR) { return MA_NO_DATA_AVAILABLE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENONET
|
#ifdef ENONET
|
||||||
case ENONET: return MA_NO_NETWORK;
|
else if (e == ENONET) { return MA_NO_NETWORK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOPKG
|
#ifdef ENOPKG
|
||||||
case ENOPKG: return MA_ERROR;
|
else if (e == ENOPKG) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EREMOTE
|
#ifdef EREMOTE
|
||||||
case EREMOTE: return MA_ERROR;
|
else if (e == EREMOTE) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOLINK
|
#ifdef ENOLINK
|
||||||
case ENOLINK: return MA_ERROR;
|
else if (e == ENOLINK) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EADV
|
#ifdef EADV
|
||||||
case EADV: return MA_ERROR;
|
else if (e == EADV) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESRMNT
|
#ifdef ESRMNT
|
||||||
case ESRMNT: return MA_ERROR;
|
else if (e == ESRMNT) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECOMM
|
#ifdef ECOMM
|
||||||
case ECOMM: return MA_ERROR;
|
else if (e == ECOMM) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EPROTO
|
#ifdef EPROTO
|
||||||
case EPROTO: return MA_ERROR;
|
else if (e == EPROTO) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EMULTIHOP
|
#ifdef EMULTIHOP
|
||||||
case EMULTIHOP: return MA_ERROR;
|
else if (e == EMULTIHOP) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EDOTDOT
|
#ifdef EDOTDOT
|
||||||
case EDOTDOT: return MA_ERROR;
|
else if (e == EDOTDOT) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADMSG
|
#ifdef EBADMSG
|
||||||
case EBADMSG: return MA_BAD_MESSAGE;
|
else if (e == EBADMSG) { return MA_BAD_MESSAGE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EOVERFLOW
|
#ifdef EOVERFLOW
|
||||||
case EOVERFLOW: return MA_TOO_BIG;
|
else if (e == EOVERFLOW) { return MA_TOO_BIG; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTUNIQ
|
#ifdef ENOTUNIQ
|
||||||
case ENOTUNIQ: return MA_NOT_UNIQUE;
|
else if (e == ENOTUNIQ) { return MA_NOT_UNIQUE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EBADFD
|
#ifdef EBADFD
|
||||||
case EBADFD: return MA_ERROR;
|
else if (e == EBADFD) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EREMCHG
|
#ifdef EREMCHG
|
||||||
case EREMCHG: return MA_ERROR;
|
else if (e == EREMCHG) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELIBACC
|
#ifdef ELIBACC
|
||||||
case ELIBACC: return MA_ACCESS_DENIED;
|
else if (e == ELIBACC) { return MA_ACCESS_DENIED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELIBBAD
|
#ifdef ELIBBAD
|
||||||
case ELIBBAD: return MA_INVALID_FILE;
|
else if (e == ELIBBAD) { return MA_INVALID_FILE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELIBSCN
|
#ifdef ELIBSCN
|
||||||
case ELIBSCN: return MA_INVALID_FILE;
|
else if (e == ELIBSCN) { return MA_INVALID_FILE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELIBMAX
|
#ifdef ELIBMAX
|
||||||
case ELIBMAX: return MA_ERROR;
|
else if (e == ELIBMAX) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ELIBEXEC
|
#ifdef ELIBEXEC
|
||||||
case ELIBEXEC: return MA_ERROR;
|
else if (e == ELIBEXEC) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EILSEQ
|
#ifdef EILSEQ
|
||||||
case EILSEQ: return MA_INVALID_DATA;
|
else if (e == EILSEQ) { return MA_INVALID_DATA; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ERESTART
|
#ifdef ERESTART
|
||||||
case ERESTART: return MA_ERROR;
|
else if (e == ERESTART) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESTRPIPE
|
#ifdef ESTRPIPE
|
||||||
case ESTRPIPE: return MA_ERROR;
|
else if (e == ESTRPIPE) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EUSERS
|
#ifdef EUSERS
|
||||||
case EUSERS: return MA_ERROR;
|
else if (e == EUSERS) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTSOCK
|
#ifdef ENOTSOCK
|
||||||
case ENOTSOCK: return MA_NOT_SOCKET;
|
else if (e == ENOTSOCK) { return MA_NOT_SOCKET; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EDESTADDRREQ
|
#ifdef EDESTADDRREQ
|
||||||
case EDESTADDRREQ: return MA_NO_ADDRESS;
|
else if (e == EDESTADDRREQ) { return MA_NO_ADDRESS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EMSGSIZE
|
#ifdef EMSGSIZE
|
||||||
case EMSGSIZE: return MA_TOO_BIG;
|
else if (e == EMSGSIZE) { return MA_TOO_BIG; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EPROTOTYPE
|
#ifdef EPROTOTYPE
|
||||||
case EPROTOTYPE: return MA_BAD_PROTOCOL;
|
else if (e == EPROTOTYPE) { return MA_BAD_PROTOCOL; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOPROTOOPT
|
#ifdef ENOPROTOOPT
|
||||||
case ENOPROTOOPT: return MA_PROTOCOL_UNAVAILABLE;
|
else if (e == ENOPROTOOPT) { return MA_PROTOCOL_UNAVAILABLE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EPROTONOSUPPORT
|
#ifdef EPROTONOSUPPORT
|
||||||
case EPROTONOSUPPORT: return MA_PROTOCOL_NOT_SUPPORTED;
|
else if (e == EPROTONOSUPPORT) { return MA_PROTOCOL_NOT_SUPPORTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESOCKTNOSUPPORT
|
#ifdef ESOCKTNOSUPPORT
|
||||||
case ESOCKTNOSUPPORT: return MA_SOCKET_NOT_SUPPORTED;
|
else if (e == ESOCKTNOSUPPORT) { return MA_SOCKET_NOT_SUPPORTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EOPNOTSUPP
|
#ifdef EOPNOTSUPP
|
||||||
case EOPNOTSUPP: return MA_INVALID_OPERATION;
|
else if (e == EOPNOTSUPP) { return MA_INVALID_OPERATION; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EPFNOSUPPORT
|
#ifdef EPFNOSUPPORT
|
||||||
case EPFNOSUPPORT: return MA_PROTOCOL_FAMILY_NOT_SUPPORTED;
|
else if (e == EPFNOSUPPORT) { return MA_PROTOCOL_FAMILY_NOT_SUPPORTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EAFNOSUPPORT
|
#ifdef EAFNOSUPPORT
|
||||||
case EAFNOSUPPORT: return MA_ADDRESS_FAMILY_NOT_SUPPORTED;
|
else if (e == EAFNOSUPPORT) { return MA_ADDRESS_FAMILY_NOT_SUPPORTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EADDRINUSE
|
#ifdef EADDRINUSE
|
||||||
case EADDRINUSE: return MA_ALREADY_IN_USE;
|
else if (e == EADDRINUSE) { return MA_ALREADY_IN_USE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EADDRNOTAVAIL
|
#ifdef EADDRNOTAVAIL
|
||||||
case EADDRNOTAVAIL: return MA_ERROR;
|
else if (e == EADDRNOTAVAIL) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENETDOWN
|
#ifdef ENETDOWN
|
||||||
case ENETDOWN: return MA_NO_NETWORK;
|
else if (e == ENETDOWN) { return MA_NO_NETWORK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENETUNREACH
|
#ifdef ENETUNREACH
|
||||||
case ENETUNREACH: return MA_NO_NETWORK;
|
else if (e == ENETUNREACH) { return MA_NO_NETWORK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENETRESET
|
#ifdef ENETRESET
|
||||||
case ENETRESET: return MA_NO_NETWORK;
|
else if (e == ENETRESET) { return MA_NO_NETWORK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECONNABORTED
|
#ifdef ECONNABORTED
|
||||||
case ECONNABORTED: return MA_NO_NETWORK;
|
else if (e == ECONNABORTED) { return MA_NO_NETWORK; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECONNRESET
|
#ifdef ECONNRESET
|
||||||
case ECONNRESET: return MA_CONNECTION_RESET;
|
else if (e == ECONNRESET) { return MA_CONNECTION_RESET; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOBUFS
|
#ifdef ENOBUFS
|
||||||
case ENOBUFS: return MA_NO_SPACE;
|
else if (e == ENOBUFS) { return MA_NO_SPACE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EISCONN
|
#ifdef EISCONN
|
||||||
case EISCONN: return MA_ALREADY_CONNECTED;
|
else if (e == EISCONN) { return MA_ALREADY_CONNECTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTCONN
|
#ifdef ENOTCONN
|
||||||
case ENOTCONN: return MA_NOT_CONNECTED;
|
else if (e == ENOTCONN) { return MA_NOT_CONNECTED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESHUTDOWN
|
#ifdef ESHUTDOWN
|
||||||
case ESHUTDOWN: return MA_ERROR;
|
else if (e == ESHUTDOWN) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ETOOMANYREFS
|
#ifdef ETOOMANYREFS
|
||||||
case ETOOMANYREFS: return MA_ERROR;
|
else if (e == ETOOMANYREFS) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ETIMEDOUT
|
#ifdef ETIMEDOUT
|
||||||
case ETIMEDOUT: return MA_TIMEOUT;
|
else if (e == ETIMEDOUT) { return MA_TIMEOUT; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECONNREFUSED
|
#ifdef ECONNREFUSED
|
||||||
case ECONNREFUSED: return MA_CONNECTION_REFUSED;
|
else if (e == ECONNREFUSED) { return MA_CONNECTION_REFUSED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EHOSTDOWN
|
#ifdef EHOSTDOWN
|
||||||
case EHOSTDOWN: return MA_NO_HOST;
|
else if (e == EHOSTDOWN) { return MA_NO_HOST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EHOSTUNREACH
|
#ifdef EHOSTUNREACH
|
||||||
case EHOSTUNREACH: return MA_NO_HOST;
|
else if (e == EHOSTUNREACH) { return MA_NO_HOST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EALREADY
|
#ifdef EALREADY
|
||||||
case EALREADY: return MA_IN_PROGRESS;
|
else if (e == EALREADY) { return MA_IN_PROGRESS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EINPROGRESS
|
#ifdef EINPROGRESS
|
||||||
case EINPROGRESS: return MA_IN_PROGRESS;
|
else if (e == EINPROGRESS) { return MA_IN_PROGRESS; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ESTALE
|
#ifdef ESTALE
|
||||||
case ESTALE: return MA_INVALID_FILE;
|
else if (e == ESTALE) { return MA_INVALID_FILE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EUCLEAN
|
#ifdef EUCLEAN
|
||||||
case EUCLEAN: return MA_ERROR;
|
else if (e == EUCLEAN) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTNAM
|
#ifdef ENOTNAM
|
||||||
case ENOTNAM: return MA_ERROR;
|
else if (e == ENOTNAM) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENAVAIL
|
#ifdef ENAVAIL
|
||||||
case ENAVAIL: return MA_ERROR;
|
else if (e == ENAVAIL) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EISNAM
|
#ifdef EISNAM
|
||||||
case EISNAM: return MA_ERROR;
|
else if (e == EISNAM) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EREMOTEIO
|
#ifdef EREMOTEIO
|
||||||
case EREMOTEIO: return MA_IO_ERROR;
|
else if (e == EREMOTEIO) { return MA_IO_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EDQUOT
|
#ifdef EDQUOT
|
||||||
case EDQUOT: return MA_NO_SPACE;
|
else if (e == EDQUOT) { return MA_NO_SPACE; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOMEDIUM
|
#ifdef ENOMEDIUM
|
||||||
case ENOMEDIUM: return MA_DOES_NOT_EXIST;
|
else if (e == ENOMEDIUM) { return MA_DOES_NOT_EXIST; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EMEDIUMTYPE
|
#ifdef EMEDIUMTYPE
|
||||||
case EMEDIUMTYPE: return MA_ERROR;
|
else if (e == EMEDIUMTYPE) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ECANCELED
|
#ifdef ECANCELED
|
||||||
case ECANCELED: return MA_CANCELLED;
|
else if (e == ECANCELED) { return MA_CANCELLED; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOKEY
|
#ifdef ENOKEY
|
||||||
case ENOKEY: return MA_ERROR;
|
else if (e == ENOKEY) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EKEYEXPIRED
|
#ifdef EKEYEXPIRED
|
||||||
case EKEYEXPIRED: return MA_ERROR;
|
else if (e == EKEYEXPIRED) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EKEYREVOKED
|
#ifdef EKEYREVOKED
|
||||||
case EKEYREVOKED: return MA_ERROR;
|
else if (e == EKEYREVOKED) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EKEYREJECTED
|
#ifdef EKEYREJECTED
|
||||||
case EKEYREJECTED: return MA_ERROR;
|
else if (e == EKEYREJECTED) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EOWNERDEAD
|
#ifdef EOWNERDEAD
|
||||||
case EOWNERDEAD: return MA_ERROR;
|
else if (e == EOWNERDEAD) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENOTRECOVERABLE
|
#ifdef ENOTRECOVERABLE
|
||||||
case ENOTRECOVERABLE: return MA_ERROR;
|
else if (e == ENOTRECOVERABLE) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef ERFKILL
|
#ifdef ERFKILL
|
||||||
case ERFKILL: return MA_ERROR;
|
else if (e == ERFKILL) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
#ifdef EHWPOISON
|
#ifdef EHWPOISON
|
||||||
case EHWPOISON: return MA_ERROR;
|
else if (e == EHWPOISON) { return MA_ERROR; }
|
||||||
#endif
|
#endif
|
||||||
default: return MA_ERROR;
|
else {
|
||||||
|
return MA_ERROR;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user