|
Packit |
437b5e |
/*
|
|
Packit |
437b5e |
* POSIX library for Lua 5.1, 5.2 & 5.3.
|
|
Packit |
437b5e |
* (c) Gary V. Vaughan <gary@vaughan.pe>, 2013-2015
|
|
Packit |
437b5e |
* (c) Reuben Thomas <rrt@sc3d.org> 2010-2013
|
|
Packit |
437b5e |
* (c) Natanael Copa <natanael.copa@gmail.com> 2008-2010
|
|
Packit |
437b5e |
* Clean up and bug fixes by Leo Razoumov <slonik.az@gmail.com> 2006-10-11
|
|
Packit |
437b5e |
* Luiz Henrique de Figueiredo <lhf@tecgraf.puc-rio.br> 07 Apr 2006 23:17:49
|
|
Packit |
437b5e |
* Based on original by Claudio Terra for Lua 3.x.
|
|
Packit |
437b5e |
* With contributions by Roberto Ierusalimschy.
|
|
Packit |
437b5e |
* With documentation from Steve Donovan 2012
|
|
Packit |
437b5e |
*/
|
|
Packit |
437b5e |
/***
|
|
Packit |
437b5e |
System error codes and messages.
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
Usually, you'll be able to work with the error messages returned as the
|
|
Packit |
437b5e |
second value from failed calls directly, without having to manually save
|
|
Packit |
437b5e |
and stringify the system messages as you would in C. For completeness,
|
|
Packit |
437b5e |
the functions are still available here.
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
@module posix.errno
|
|
Packit |
437b5e |
*/
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
#include <config.h>
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
#include <errno.h>
|
|
Packit |
437b5e |
#include <stdio.h>
|
|
Packit |
437b5e |
#include <string.h>
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
#include "_helpers.c"
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
#ifndef errno
|
|
Packit |
437b5e |
extern int errno;
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
/***
|
|
Packit |
437b5e |
Describe an error code/and or read `errno`
|
|
Packit |
437b5e |
@function errno
|
|
Packit |
437b5e |
@int[opt=current errno] n optional error code
|
|
Packit |
437b5e |
@return description
|
|
Packit |
437b5e |
@return error code
|
|
Packit |
437b5e |
@see strerror(3)
|
|
Packit |
437b5e |
@see errno
|
|
Packit |
437b5e |
@usage
|
|
Packit |
437b5e |
local strerr, nerr = P.errno ()
|
|
Packit |
437b5e |
*/
|
|
Packit |
437b5e |
static int
|
|
Packit |
437b5e |
Perrno(lua_State *L)
|
|
Packit |
437b5e |
{
|
|
Packit |
437b5e |
int n = optint(L, 1, errno);
|
|
Packit |
437b5e |
checknargs(L, 1);
|
|
Packit |
437b5e |
lua_pushstring(L, strerror(n));
|
|
Packit |
437b5e |
lua_pushinteger(L, n);
|
|
Packit |
437b5e |
return 2;
|
|
Packit |
437b5e |
}
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
/***
|
|
Packit |
437b5e |
Set errno.
|
|
Packit |
437b5e |
@function set_errno
|
|
Packit |
437b5e |
@int n error code
|
|
Packit |
437b5e |
@see errno(3)
|
|
Packit |
437b5e |
@usage
|
|
Packit |
437b5e |
P.errno (P.EBADF)
|
|
Packit |
437b5e |
*/
|
|
Packit |
437b5e |
static int
|
|
Packit |
437b5e |
Pset_errno(lua_State *L)
|
|
Packit |
437b5e |
{
|
|
Packit |
437b5e |
errno = checkint(L, 1);
|
|
Packit |
437b5e |
checknargs(L, 1);
|
|
Packit |
437b5e |
return 0;
|
|
Packit |
437b5e |
}
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
static const luaL_Reg posix_errno_fns[] =
|
|
Packit |
437b5e |
{
|
|
Packit |
437b5e |
LPOSIX_FUNC( Perrno ),
|
|
Packit |
437b5e |
LPOSIX_FUNC( Pset_errno ),
|
|
Packit |
437b5e |
{NULL, NULL}
|
|
Packit |
437b5e |
};
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
/***
|
|
Packit |
437b5e |
Constants.
|
|
Packit |
437b5e |
@section constants
|
|
Packit |
437b5e |
*/
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
/***
|
|
Packit |
437b5e |
Error constants.
|
|
Packit |
437b5e |
Any constants not available in the underlying system will be `nil` valued.
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
If you find one of the luaposix APIs returns an error code not listed here,
|
|
Packit |
437b5e |
please raise an issue [here](http://github.com/luaposix/luaposixissues), stating
|
|
Packit |
437b5e |
the symbolic name of the constant (from `/usr/include/errno.h` or equivalent).
|
|
Packit |
437b5e |
@table posix.errno
|
|
Packit |
437b5e |
@int E2BIG argument list too long
|
|
Packit |
437b5e |
@int EACCES permission denied
|
|
Packit |
437b5e |
@int EADDRINUSE address already in use
|
|
Packit |
437b5e |
@int EADDRNOTAVAIL can't assign requested address
|
|
Packit |
437b5e |
@int EAFNOSUPPORT address family not supported by protocol family
|
|
Packit |
437b5e |
@int EAGAIN resource temporarily unavailable
|
|
Packit |
437b5e |
@int EALREADY operation already in progress
|
|
Packit |
437b5e |
@int EBADF bad file descriptor
|
|
Packit |
437b5e |
@int EBADMSG bad message
|
|
Packit |
437b5e |
@int EBUSY resource busy
|
|
Packit |
437b5e |
@int ECANCELED operation canceled
|
|
Packit |
437b5e |
@int ECHILD no child processes
|
|
Packit |
437b5e |
@int ECONNABORTED software caused connection abort
|
|
Packit |
437b5e |
@int ECONNREFUSED connection refused
|
|
Packit |
437b5e |
@int ECONNRESET connection reset by peer
|
|
Packit |
437b5e |
@int EDEADLK resource deadlock avoided
|
|
Packit |
437b5e |
@int EDESTADDRREQ destination address required
|
|
Packit |
437b5e |
@int EDOM numerical argument out of domain
|
|
Packit |
437b5e |
@int EEXIST file exists
|
|
Packit |
437b5e |
@int EFAULT bad address
|
|
Packit |
437b5e |
@int EFBIG file too large
|
|
Packit |
437b5e |
@int EHOSTUNREACH no route to host
|
|
Packit |
437b5e |
@int EIDRM identifier removed
|
|
Packit |
437b5e |
@int EILSEQ illegal byte sequence
|
|
Packit |
437b5e |
@int EINPROGRESS operation now in progress
|
|
Packit |
437b5e |
@int EINTR interrupted system call
|
|
Packit |
437b5e |
@int EINVAL invalid argument
|
|
Packit |
437b5e |
@int EIO input/output error
|
|
Packit |
437b5e |
@int EISCONN socket is already connected
|
|
Packit |
437b5e |
@int EISDIR is a directory
|
|
Packit |
437b5e |
@int ELOOP too many levels of symbolic links
|
|
Packit |
437b5e |
@int EMFILE too many open files
|
|
Packit |
437b5e |
@int EMLINK too many links
|
|
Packit |
437b5e |
@int EMSGSIZE message too long
|
|
Packit |
437b5e |
@int ENAMETOOLONG file name too long
|
|
Packit |
437b5e |
@int ENETDOWN network is down
|
|
Packit |
437b5e |
@int ENETRESET network dropped connection on reset
|
|
Packit |
437b5e |
@int ENETUNREACH network is unreachable
|
|
Packit |
437b5e |
@int ENFILE too many open files in system
|
|
Packit |
437b5e |
@int ENOBUFS no buffer space available
|
|
Packit |
437b5e |
@int ENODEV operation not supported by device
|
|
Packit |
437b5e |
@int ENOENT no such file or directory
|
|
Packit |
437b5e |
@int ENOEXEC exec format error
|
|
Packit |
437b5e |
@int ENOLCK no locks available
|
|
Packit |
437b5e |
@int ENOMEM cannot allocate memory
|
|
Packit |
437b5e |
@int ENOMSG no message of desired type
|
|
Packit |
437b5e |
@int ENOPROTOOPT protocol not available
|
|
Packit |
437b5e |
@int ENOSPC no space left on device
|
|
Packit |
437b5e |
@int ENOSYS function not implemented
|
|
Packit |
437b5e |
@int ENOTCONN socket is not connected
|
|
Packit |
437b5e |
@int ENOTDIR not a directory
|
|
Packit |
437b5e |
@int ENOTEMPTY directory not empty
|
|
Packit |
437b5e |
@int ENOTSOCK socket operation on non-socket
|
|
Packit |
437b5e |
@int ENOTSUP operation not supported
|
|
Packit |
437b5e |
@int ENOTTY inappropriate ioctl for device
|
|
Packit |
437b5e |
@int ENXIO device not configured
|
|
Packit |
437b5e |
@int EOPNOTSUPP operation not supported on socket
|
|
Packit |
437b5e |
@int EOVERFLOW value too large to be stored in data type
|
|
Packit |
437b5e |
@int EPERM operation not permitted
|
|
Packit |
437b5e |
@int EPIPE broken pipe
|
|
Packit |
437b5e |
@int EPROTO protocol error
|
|
Packit |
437b5e |
@int EPROTONOSUPPORT protocol not supported
|
|
Packit |
437b5e |
@int EPROTOTYPE protocol wrong type for socket
|
|
Packit |
437b5e |
@int ERANGE result too large
|
|
Packit |
437b5e |
@int EROFS read-only file system
|
|
Packit |
437b5e |
@int ESPIPE illegal seek
|
|
Packit |
437b5e |
@int ESRCH no such process
|
|
Packit |
437b5e |
@int ETIMEDOUT operation timed out
|
|
Packit |
437b5e |
@int ETXTBSY text file busy
|
|
Packit |
437b5e |
@int EWOULDBLOCK operation would block
|
|
Packit |
437b5e |
@int EXDEV cross-device link
|
|
Packit |
437b5e |
@usage
|
|
Packit |
437b5e |
-- Print errno constants supported on this host.
|
|
Packit |
437b5e |
for name, value in pairs (require "posix.errno") do
|
|
Packit |
437b5e |
if type (value) == "number" then
|
|
Packit |
437b5e |
print (name, value)
|
|
Packit |
437b5e |
end
|
|
Packit |
437b5e |
end
|
|
Packit |
437b5e |
*/
|
|
Packit |
437b5e |
LUALIB_API int
|
|
Packit |
437b5e |
luaopen_posix_errno(lua_State *L)
|
|
Packit |
437b5e |
{
|
|
Packit |
437b5e |
luaL_register(L, "posix.errno", posix_errno_fns);
|
|
Packit |
437b5e |
lua_pushliteral(L, "posix.errno for " LUA_VERSION " / " PACKAGE_STRING);
|
|
Packit |
437b5e |
lua_setfield(L, -2, "version");
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
#ifdef E2BIG
|
|
Packit |
437b5e |
LPOSIX_CONST( E2BIG );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EACCES
|
|
Packit |
437b5e |
LPOSIX_CONST( EACCES );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EADDRINUSE
|
|
Packit |
437b5e |
LPOSIX_CONST( EADDRINUSE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EADDRNOTAVAIL
|
|
Packit |
437b5e |
LPOSIX_CONST( EADDRNOTAVAIL );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EAFNOSUPPORT
|
|
Packit |
437b5e |
LPOSIX_CONST( EAFNOSUPPORT );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EAGAIN
|
|
Packit |
437b5e |
LPOSIX_CONST( EAGAIN );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EALREADY
|
|
Packit |
437b5e |
LPOSIX_CONST( EALREADY );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EBADF
|
|
Packit |
437b5e |
LPOSIX_CONST( EBADF );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EBADMSG
|
|
Packit |
437b5e |
LPOSIX_CONST( EBADMSG );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EBUSY
|
|
Packit |
437b5e |
LPOSIX_CONST( EBUSY );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ECANCELED
|
|
Packit |
437b5e |
LPOSIX_CONST( ECANCELED );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ECHILD
|
|
Packit |
437b5e |
LPOSIX_CONST( ECHILD );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ECONNABORTED
|
|
Packit |
437b5e |
LPOSIX_CONST( ECONNABORTED );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ECONNREFUSED
|
|
Packit |
437b5e |
LPOSIX_CONST( ECONNREFUSED );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ECONNRESET
|
|
Packit |
437b5e |
LPOSIX_CONST( ECONNRESET );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EDEADLK
|
|
Packit |
437b5e |
LPOSIX_CONST( EDEADLK );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EDESTADDRREQ
|
|
Packit |
437b5e |
LPOSIX_CONST( EDESTADDRREQ );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EDOM
|
|
Packit |
437b5e |
LPOSIX_CONST( EDOM );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EEXIST
|
|
Packit |
437b5e |
LPOSIX_CONST( EEXIST );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EFAULT
|
|
Packit |
437b5e |
LPOSIX_CONST( EFAULT );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EFBIG
|
|
Packit |
437b5e |
LPOSIX_CONST( EFBIG );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EHOSTUNREACH
|
|
Packit |
437b5e |
LPOSIX_CONST( EHOSTUNREACH );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EIDRM
|
|
Packit |
437b5e |
LPOSIX_CONST( EIDRM );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EILSEQ
|
|
Packit |
437b5e |
LPOSIX_CONST( EILSEQ );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EINPROGRESS
|
|
Packit |
437b5e |
LPOSIX_CONST( EINPROGRESS );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EINTR
|
|
Packit |
437b5e |
LPOSIX_CONST( EINTR );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EINVAL
|
|
Packit |
437b5e |
LPOSIX_CONST( EINVAL );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EIO
|
|
Packit |
437b5e |
LPOSIX_CONST( EIO );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EISCONN
|
|
Packit |
437b5e |
LPOSIX_CONST( EISCONN );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EISDIR
|
|
Packit |
437b5e |
LPOSIX_CONST( EISDIR );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ELOOP
|
|
Packit |
437b5e |
LPOSIX_CONST( ELOOP );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EMFILE
|
|
Packit |
437b5e |
LPOSIX_CONST( EMFILE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EMLINK
|
|
Packit |
437b5e |
LPOSIX_CONST( EMLINK );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EMSGSIZE
|
|
Packit |
437b5e |
LPOSIX_CONST( EMSGSIZE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENAMETOOLONG
|
|
Packit |
437b5e |
LPOSIX_CONST( ENAMETOOLONG );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENETDOWN
|
|
Packit |
437b5e |
LPOSIX_CONST( ENETDOWN );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENETRESET
|
|
Packit |
437b5e |
LPOSIX_CONST( ENETRESET );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENETUNREACH
|
|
Packit |
437b5e |
LPOSIX_CONST( ENETUNREACH );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENFILE
|
|
Packit |
437b5e |
LPOSIX_CONST( ENFILE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOBUFS
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOBUFS );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENODEV
|
|
Packit |
437b5e |
LPOSIX_CONST( ENODEV );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOENT
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOENT );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOEXEC
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOEXEC );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOLCK
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOLCK );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOMEM
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOMEM );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOMSG
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOMSG );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOPROTOOPT
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOPROTOOPT );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOSPC
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOSPC );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOSYS
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOSYS );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOTCONN
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOTCONN );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOTDIR
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOTDIR );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOTEMPTY
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOTEMPTY );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOTSOCK
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOTSOCK );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOTSUP
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOTSUP );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENOTTY
|
|
Packit |
437b5e |
LPOSIX_CONST( ENOTTY );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ENXIO
|
|
Packit |
437b5e |
LPOSIX_CONST( ENXIO );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EOPNOTSUPP
|
|
Packit |
437b5e |
LPOSIX_CONST( EOPNOTSUPP );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EOVERFLOW
|
|
Packit |
437b5e |
LPOSIX_CONST( EOVERFLOW );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EPERM
|
|
Packit |
437b5e |
LPOSIX_CONST( EPERM );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EPIPE
|
|
Packit |
437b5e |
LPOSIX_CONST( EPIPE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EPROTO
|
|
Packit |
437b5e |
LPOSIX_CONST( EPROTO );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EPROTONOSUPPORT
|
|
Packit |
437b5e |
LPOSIX_CONST( EPROTONOSUPPORT );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EPROTOTYPE
|
|
Packit |
437b5e |
LPOSIX_CONST( EPROTOTYPE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ERANGE
|
|
Packit |
437b5e |
LPOSIX_CONST( ERANGE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EROFS
|
|
Packit |
437b5e |
LPOSIX_CONST( EROFS );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ESPIPE
|
|
Packit |
437b5e |
LPOSIX_CONST( ESPIPE );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ESRCH
|
|
Packit |
437b5e |
LPOSIX_CONST( ESRCH );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ETIMEDOUT
|
|
Packit |
437b5e |
LPOSIX_CONST( ETIMEDOUT );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef ETXTBSY
|
|
Packit |
437b5e |
LPOSIX_CONST( ETXTBSY );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EWOULDBLOCK
|
|
Packit |
437b5e |
LPOSIX_CONST( EWOULDBLOCK );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
#ifdef EXDEV
|
|
Packit |
437b5e |
LPOSIX_CONST( EXDEV );
|
|
Packit |
437b5e |
#endif
|
|
Packit |
437b5e |
|
|
Packit |
437b5e |
return 1;
|
|
Packit |
437b5e |
}
|