Explorar el Código

Update errno.odin

avanspector hace 9 meses
padre
commit
cb42b88e13
Se han modificado 1 ficheros con 91 adiciones y 6 borrados
  1. 91 6
      core/sys/haiku/errno.odin

+ 91 - 6
core/sys/haiku/errno.odin

@@ -5,6 +5,9 @@ import "core:sys/posix"
 
 foreign import libroot "system:c"
 
+USE_POSITIVE_POSIX_ERRORS :: posix._HAIKU_USE_POSITIVE_POSIX_ERRORS
+POSIX_ERROR_FACTOR        :: posix._POSIX_ERROR_FACTOR
+
 Errno :: enum i32 {
 	// Error baselines
 	GENERAL_ERROR_BASE     = min(i32),
@@ -109,13 +112,95 @@ Errno :: enum i32 {
 	PARTIAL_READ                      = STORAGE_ERROR_BASE + 16,
 	PARTIAL_WRITE                     = STORAGE_ERROR_BASE + 17,
 
+	EIO                          = posix.EIO,
+	EACCES                       = posix.EACCES,
+	EINVAL                       = posix.EINVAL,
+	ETIMEDOUT                    = posix.ETIMEDOUT,
+	EINTR                        = posix.EINTR,
+	EAGAIN                       = posix.EAGAIN,
+	EWOULDBLOCK                  = posix.EWOULDBLOCK,
+	EBUSY                        = posix.EBUSY,
+	EPERM                        = posix.EPERM,
+	EFAULT                       = posix.EFAULT,
+	ENOEXEC                      = posix.ENOEXEC,
+	EBADF                        = posix.EBADF,
+	EEXIST                       = posix.EEXIST,
+	ENOENT                       = posix.ENOENT,
+	ENAMETOOLONG                 = posix.ENAMETOOLONG,
+	ENOTDIR                      = posix.ENOTDIR,
+	ENOTEMPTY                    = posix.ENOTEMPTY,
+	ENOSPC                       = posix.ENOSPC,
+	EROFS                        = posix.EROFS,
+	EISDIR                       = posix.EISDIR,
+	EMFILE                       = posix.EMFILE,
+	EXDEV                        = posix.EXDEV,
+	ELOOP                        = posix.ELOOP,
+	EPIPE                        = posix.EPIPE,
+	ENOMEM                       = posix.ENOMEM,
+	E2BIG                        = posix.E2BIG,
+	ECHILD                       = posix.ECHILD,
+	EDEADLK                      = posix.EDEADLK,
+	EFBIG                        = posix.EFBIG,
+	EMLINK                       = posix.EMLINK,
+	ENFILE                       = posix.ENFILE,
+	ENODEV                       = posix.ENODEV,
+	ENOLCK                       = posix.ENOLCK,
+	ENOSYS                       = posix.ENOSYS,
+	ENOTTY                       = posix.ENOTTY,
+	ENXIO                        = posix.ENXIO,
+	ESPIPE                       = posix.ESPIPE,
+	ESRCH                        = posix.ESRCH,
+	EDOM                         = posix.EDOM,
+	ERANGE                       = posix.ERANGE,
+	EPROTOTYPE                   = posix.EPROTOTYPE,
+	EPROTONOSUPPORT              = posix.EPROTONOSUPPORT,
+	EAFNOSUPPORT                 = posix.EAFNOSUPPORT,
+	EADDRINUSE                   = posix.EADDRINUSE,
+	EADDRNOTAVAIL                = posix.EADDRNOTAVAIL,
+	ENETDOWN                     = posix.ENETDOWN,
+	ENETUNREACH                  = posix.ENETUNREACH,
+	ENETRESET                    = posix.ENETRESET,
+	ECONNABORTED                 = posix.ECONNABORTED,
+	ECONNRESET                   = posix.ECONNRESET,
+	EISCONN                      = posix.EISCONN,
+	ENOTCONN                     = posix.ENOTCONN,
+	ECONNREFUSED                 = posix.ECONNREFUSED,
+	EHOSTUNREACH                 = posix.EHOSTUNREACH,
+	ENOPROTOOPT                  = posix.ENOPROTOOPT,
+	ENOBUFS                      = posix.ENOBUFS,
+	EINPROGRESS                  = posix.EINPROGRESS,
+	EALREADY                     = posix.EALREADY,
+	EILSEQ                       = posix.EILSEQ,
+	ENOMSG                       = posix.ENOMSG,
+	ESTALE                       = posix.ESTALE,
+	EOVERFLOW                    = posix.EOVERFLOW,
+	EMSGSIZE                     = posix.EMSGSIZE,
+	EOPNOTSUPP                   = posix.EOPNOTSUPP,
+	ENOTSOCK                     = posix.ENOTSOCK,
+	EBADMSG                      = posix.EBADMSG,
+	ECANCELED                    = posix.ECANCELED,
+	EDESTADDRREQ                 = posix.EDESTADDRREQ,
+	EDQUOT                       = posix.EDQUOT,
+	EIDRM                        = posix.EIDRM,
+	EMULTIHOP                    = posix.EMULTIHOP,
+	ENODATA                      = posix.ENODATA,
+	ENOLINK                      = posix.ENOLINK,
+	ENOSR                        = posix.ENOSR,
+	ENOSTR                       = posix.ENOSTR,
+	ENOTSUP                      = posix.ENOTSUP,
+	EPROTO                       = posix.EPROTO,
+	ETIME                        = posix.ETIME,
+	ETXTBSY                      = posix.ETXTBSY,
+	ENOTRECOVERABLE              = posix.ENOTRECOVERABLE,
+	EOWNERDEAD                   = posix.EOWNERDEAD,
+
 	// New error codes that can be mapped to POSIX errors
-	TOO_MANY_ARGS                = posix.E2BIG,
-	FILE_TOO_LARGE               = posix.EFBIG,
-	DEVICE_NOT_FOUND             = posix.ENODEV,
-	RESULT_NOT_REPRESENTABLE     = posix.ERANGE,
-	BUFFER_OVERFLOW              = posix.EOVERFLOW,
-	NOT_SUPPORTED                = posix.EOPNOTSUPP,
+	TOO_MANY_ARGS                = POSIX_ERROR_FACTOR * E2BIG,
+	FILE_TOO_LARGE               = POSIX_ERROR_FACTOR * EFBIG,
+	DEVICE_NOT_FOUND             = POSIX_ERROR_FACTOR * ENODEV,
+	RESULT_NOT_REPRESENTABLE     = POSIX_ERROR_FACTOR * ERANGE,
+	BUFFER_OVERFLOW              = POSIX_ERROR_FACTOR * EOVERFLOW,
+	NOT_SUPPORTED                = POSIX_ERROR_FACTOR * EOPNOTSUPP,
 
 	// Media Kit Errors
 	STREAM_NOT_FOUND             = MEDIA_ERROR_BASE + 0,