Ruby  2.7.2p137(2020-10-01revision5445e0435260b449decf2ac16f9d09bae3cafe72)
Data Structures | Macros | Typedefs | Functions
win32.h File Reference
#include <winsock2.h>
#include <ws2tcpip.h>
#include <iphlpapi.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <direct.h>
#include <process.h>
#include <time.h>
#include <math.h>
#include <signal.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <utime.h>
#include <io.h>
#include <malloc.h>
#include <float.h>
#include <errno.h>

Go to the source code of this file.

Data Structures

struct  stati128
 
struct  iovec
 
struct  msghdr
 
struct  ifaddrs
 
struct  tms
 

Macros

#define WIN32
 
#define _INTPTR_T_DEFINED
 
#define INTPTR_MAX   2147483647
 
#define INTPTR_MIN   (-INTPTR_MAX-1)
 
#define _UINTPTR_T_DEFINED
 
#define UINTPTR_MAX   4294967295U
 
#define mode_t   int
 
#define rb_w32_iswinnt()   TRUE
 
#define rb_w32_iswin95()   FALSE
 
#define WNOHANG   -1
 
#define O_SHARE_DELETE   0x20000000 /* for rb_w32_open(), rb_w32_wopen() */
 
#define CLOCK_REALTIME   0
 
#define CLOCK_MONOTONIC   1
 
#define stat(path, st)   rb_w32_stat(path,st)
 
#define fstat(fd, st)   rb_w32_fstat(fd,st)
 
#define lstat(path, st)   rb_w32_lstati128(path,st)
 
#define access(path, mode)   rb_w32_access(path,mode)
 
#define strcasecmp   _stricmp
 
#define strncasecmp   _strnicmp
 
#define fsync   _commit
 
#define IFNAMSIZ   256
 
#define isnan(x)   _isnan(x)
 
#define copysign(a, b)   _copysign(a, b)
 
#define S_IRUSR   0400
 
#define S_IRGRP   0040
 
#define S_IROTH   0004
 
#define S_IWUSR   0200
 
#define S_IWGRP   0020
 
#define S_IWOTH   0002
 
#define S_IXUSR   0100
 
#define S_IXGRP   0010
 
#define S_IXOTH   0001
 
#define S_IFLNK   0xa000
 
#define SUFFIX
 
#define HAVE_FTRUNCATE   1
 
#define ftruncate   rb_w32_ftruncate
 
#define HAVE_TRUNCATE   1
 
#define truncate   rb_w32_truncate
 
#define PIPE_BUF   1024
 
#define LOCK_SH   1
 
#define LOCK_EX   2
 
#define LOCK_NB   4
 
#define LOCK_UN   8
 
#define SIGINT   2
 
#define SIGKILL   9
 
#define EWOULDBLOCK   WSAEWOULDBLOCK
 
#define EINPROGRESS   WSAEINPROGRESS
 
#define EALREADY   WSAEALREADY
 
#define ENOTSOCK   WSAENOTSOCK
 
#define EDESTADDRREQ   WSAEDESTADDRREQ
 
#define EMSGSIZE   WSAEMSGSIZE
 
#define EPROTOTYPE   WSAEPROTOTYPE
 
#define ENOPROTOOPT   WSAENOPROTOOPT
 
#define EPROTONOSUPPORT   WSAEPROTONOSUPPORT
 
#define ESOCKTNOSUPPORT   WSAESOCKTNOSUPPORT
 
#define EOPNOTSUPP   WSAEOPNOTSUPP
 
#define EPFNOSUPPORT   WSAEPFNOSUPPORT
 
#define EAFNOSUPPORT   WSAEAFNOSUPPORT
 
#define EADDRINUSE   WSAEADDRINUSE
 
#define EADDRNOTAVAIL   WSAEADDRNOTAVAIL
 
#define ENETDOWN   WSAENETDOWN
 
#define ENETUNREACH   WSAENETUNREACH
 
#define ENETRESET   WSAENETRESET
 
#define ECONNABORTED   WSAECONNABORTED
 
#define ECONNRESET   WSAECONNRESET
 
#define ENOBUFS   WSAENOBUFS
 
#define EISCONN   WSAEISCONN
 
#define ENOTCONN   WSAENOTCONN
 
#define ESHUTDOWN   WSAESHUTDOWN
 
#define ETOOMANYREFS   WSAETOOMANYREFS
 
#define ETIMEDOUT   WSAETIMEDOUT
 
#define ECONNREFUSED   WSAECONNREFUSED
 
#define ELOOP   WSAELOOP
 
#define EHOSTDOWN   WSAEHOSTDOWN
 
#define EHOSTUNREACH   WSAEHOSTUNREACH
 
#define EPROCLIM   WSAEPROCLIM
 
#define EUSERS   WSAEUSERS
 
#define EDQUOT   WSAEDQUOT
 
#define ESTALE   WSAESTALE
 
#define EREMOTE   WSAEREMOTE
 
#define F_DUPFD   0
 
#define F_GETFD   1
 
#define F_SETFD   2
 
#define F_SETFL   4
 
#define F_DUPFD_CLOEXEC   67
 
#define FD_CLOEXEC   1 /* F_GETFD, F_SETFD */
 
#define O_NONBLOCK   1
 
#define FD_SET(fd, set)
 
#define FD_CLR(f, s)   rb_w32_fdclr(f, s)
 
#define FD_ISSET(f, s)   rb_w32_fdisset(f, s)
 

Typedefs

typedef int intptr_t
 
typedef unsigned int uintptr_t
 
typedef int clockid_t
 
typedef uintptr_t(* asynchronous_func_t) (uintptr_t self, int argc, uintptr_t *argv)
 

Functions

int rb_w32_stat (const char *, struct stat *)
 
int rb_w32_fstat (int, struct stat *)
 
void rb_w32_sysinit (int *, char ***)
 
DWORD rb_w32_osid (void)
 
rb_pid_t rb_w32_pipe_exec (const char *, const char *, int, int *, int *)
 
int flock (int fd, int oper)
 
int rb_w32_io_cancelable_p (int)
 
int rb_w32_is_socket (int)
 
int WSAAPI rb_w32_accept (int, struct sockaddr *, int *)
 
int WSAAPI rb_w32_bind (int, const struct sockaddr *, int)
 
int WSAAPI rb_w32_connect (int, const struct sockaddr *, int)
 
void rb_w32_fdset (int, fd_set *)
 
void rb_w32_fdclr (int, fd_set *)
 
int rb_w32_fdisset (int, fd_set *)
 
int WSAAPI rb_w32_select (int, fd_set *, fd_set *, fd_set *, struct timeval *)
 
int WSAAPI rb_w32_getpeername (int, struct sockaddr *, int *)
 
int WSAAPI rb_w32_getsockname (int, struct sockaddr *, int *)
 
int WSAAPI rb_w32_getsockopt (int, int, int, char *, int *)
 
int WSAAPI rb_w32_ioctlsocket (int, long, u_long *)
 
int WSAAPI rb_w32_listen (int, int)
 
int WSAAPI rb_w32_recv (int, char *, int, int)
 
int WSAAPI rb_w32_recvfrom (int, char *, int, int, struct sockaddr *, int *)
 
int WSAAPI rb_w32_send (int, const char *, int, int)
 
int WSAAPI rb_w32_sendto (int, const char *, int, int, const struct sockaddr *, int)
 
int recvmsg (int, struct msghdr *, int)
 
int sendmsg (int, const struct msghdr *, int)
 
int WSAAPI rb_w32_setsockopt (int, int, int, const char *, int)
 
int WSAAPI rb_w32_shutdown (int, int)
 
int WSAAPI rb_w32_socket (int, int, int)
 
SOCKET rb_w32_get_osfhandle (int)
 
struct hostent *WSAAPI rb_w32_gethostbyaddr (const char *, int, int)
 
struct hostent *WSAAPI rb_w32_gethostbyname (const char *)
 
int WSAAPI rb_w32_gethostname (char *, int)
 
struct protoent *WSAAPI rb_w32_getprotobyname (const char *)
 
struct protoent *WSAAPI rb_w32_getprotobynumber (int)
 
struct servent *WSAAPI rb_w32_getservbyname (const char *, const char *)
 
struct servent *WSAAPI rb_w32_getservbyport (int, const char *)
 
int socketpair (int, int, int, int *)
 
int getifaddrs (struct ifaddrs **)
 
void freeifaddrs (struct ifaddrs *)
 
charrb_w32_getcwd (char *, int)
 
charrb_w32_ugetenv (const char *)
 
charrb_w32_getenv (const char *)
 
int rb_w32_rename (const char *, const char *)
 
int rb_w32_urename (const char *, const char *)
 
char ** rb_w32_get_environ (void)
 
void rb_w32_free_environ (char **)
 
int rb_w32_map_errno (DWORD)
 
const char *WSAAPI rb_w32_inet_ntop (int, const void *, char *, size_t)
 
int WSAAPI rb_w32_inet_pton (int, const char *, void *)
 
DWORD rb_w32_osver (void)
 
int chown (const char *, int, int)
 
int rb_w32_uchown (const char *, int, int)
 
int link (const char *, const char *)
 
int rb_w32_ulink (const char *, const char *)
 
ssize_t readlink (const char *, char *, size_t)
 
ssize_t rb_w32_ureadlink (const char *, char *, size_t)
 
ssize_t rb_w32_wreadlink (const WCHAR *, WCHAR *, size_t)
 
int symlink (const char *src, const char *link)
 
int rb_w32_usymlink (const char *src, const char *link)
 
int gettimeofday (struct timeval *, struct timezone *)
 
int clock_gettime (clockid_t, struct timespec *)
 
int clock_getres (clockid_t, struct timespec *)
 
rb_pid_t waitpid (rb_pid_t, int *, int)
 
rb_pid_t rb_w32_spawn (int, const char *, const char *)
 
rb_pid_t rb_w32_aspawn (int, const char *, char *const *)
 
rb_pid_t rb_w32_aspawn_flags (int, const char *, char *const *, DWORD)
 
rb_pid_t rb_w32_uspawn (int, const char *, const char *)
 
rb_pid_t rb_w32_uaspawn (int, const char *, char *const *)
 
rb_pid_t rb_w32_uaspawn_flags (int, const char *, char *const *, DWORD)
 
int kill (int, int)
 
int fcntl (int, int,...)
 
int rb_w32_set_nonblock (int)
 
rb_pid_t rb_w32_getpid (void)
 
rb_pid_t rb_w32_getppid (void)
 
int rb_w32_isatty (int)
 
int rb_w32_uchdir (const char *)
 
int rb_w32_mkdir (const char *, int)
 
int rb_w32_umkdir (const char *, int)
 
int rb_w32_rmdir (const char *)
 
int rb_w32_urmdir (const char *)
 
int rb_w32_unlink (const char *)
 
int rb_w32_uunlink (const char *)
 
int rb_w32_uchmod (const char *, int)
 
int rb_w32_stati128 (const char *, struct stati128 *)
 
int rb_w32_ustati128 (const char *, struct stati128 *)
 
int rb_w32_lstati128 (const char *, struct stati128 *)
 
int rb_w32_ulstati128 (const char *, struct stati128 *)
 
int rb_w32_access (const char *, int)
 
int rb_w32_uaccess (const char *, int)
 
char rb_w32_fd_is_text (int)
 
int rb_w32_fstati128 (int, struct stati128 *)
 
int rb_w32_dup2 (int, int)
 
int rb_w32_ftruncate (int fd, off_t length)
 
int rb_w32_truncate (const char *path, off_t length)
 
int rb_w32_utruncate (const char *path, off_t length)
 
int ioctl (int, int,...)
 
rb_uid_t getuid (void)
 
rb_uid_t geteuid (void)
 
rb_gid_t getgid (void)
 
rb_gid_t getegid (void)
 
int setuid (rb_uid_t)
 
int setgid (rb_gid_t)
 
charrb_w32_strerror (int)
 
int rb_w32_times (struct tms *)
 
struct tmgmtime_r (const time_t *, struct tm *)
 
struct tmlocaltime_r (const time_t *, struct tm *)
 
int rb_w32_sleep (unsigned long msec)
 
int rb_w32_open (const char *, int,...)
 
int rb_w32_uopen (const char *, int,...)
 
int rb_w32_wopen (const WCHAR *, int,...)
 
int rb_w32_close (int)
 
int rb_w32_fclose (FILE *)
 
int rb_w32_pipe (int[2])
 
ssize_t rb_w32_read (int, void *, size_t)
 
ssize_t rb_w32_write (int, const void *, size_t)
 
off_t rb_w32_lseek (int, off_t, int)
 
int rb_w32_utime (const char *, const struct utimbuf *)
 
int rb_w32_uutime (const char *, const struct utimbuf *)
 
int rb_w32_utimes (const char *, const struct timeval *)
 
int rb_w32_uutimes (const char *, const struct timeval *)
 
int rb_w32_utimensat (int, const char *, const struct timespec *, int)
 
int rb_w32_uutimensat (int, const char *, const struct timespec *, int)
 
long rb_w32_write_console (uintptr_t, int)
 
int WINAPI rb_w32_Sleep (unsigned long msec)
 
int rb_w32_wait_events_blocking (HANDLE *events, int num, DWORD timeout)
 
int rb_w32_time_subtract (struct timeval *rest, const struct timeval *wait)
 
int rb_w32_wrap_io_handle (HANDLE, int)
 
int rb_w32_unwrap_io_handle (int)
 
WCHAR * rb_w32_mbstr_to_wstr (UINT, const char *, int, long *)
 
charrb_w32_wstr_to_mbstr (UINT, const WCHAR *, int, long *)
 
uintptr_t rb_w32_asynchronize (asynchronous_func_t func, uintptr_t self, int argc, uintptr_t *argv, uintptr_t intrval)
 

Macro Definition Documentation

◆ _INTPTR_T_DEFINED

#define _INTPTR_T_DEFINED

Definition at line 92 of file win32.h.

◆ _UINTPTR_T_DEFINED

#define _UINTPTR_T_DEFINED

Definition at line 108 of file win32.h.

◆ access

#define access (   path,
  mode 
)    rb_w32_access(path,mode)

Definition at line 212 of file win32.h.

◆ CLOCK_MONOTONIC

#define CLOCK_MONOTONIC   1

Definition at line 134 of file win32.h.

◆ CLOCK_REALTIME

#define CLOCK_REALTIME   0

Definition at line 133 of file win32.h.

◆ copysign

#define copysign (   a,
 
)    _copysign(a, b)

Definition at line 377 of file win32.h.

◆ EADDRINUSE

#define EADDRINUSE   WSAEADDRINUSE

Definition at line 534 of file win32.h.

◆ EADDRNOTAVAIL

#define EADDRNOTAVAIL   WSAEADDRNOTAVAIL

Definition at line 537 of file win32.h.

◆ EAFNOSUPPORT

#define EAFNOSUPPORT   WSAEAFNOSUPPORT

Definition at line 531 of file win32.h.

◆ EALREADY

#define EALREADY   WSAEALREADY

Definition at line 501 of file win32.h.

◆ ECONNABORTED

#define ECONNABORTED   WSAECONNABORTED

Definition at line 549 of file win32.h.

◆ ECONNREFUSED

#define ECONNREFUSED   WSAECONNREFUSED

Definition at line 573 of file win32.h.

◆ ECONNRESET

#define ECONNRESET   WSAECONNRESET

Definition at line 552 of file win32.h.

◆ EDESTADDRREQ

#define EDESTADDRREQ   WSAEDESTADDRREQ

Definition at line 507 of file win32.h.

◆ EDQUOT

#define EDQUOT   WSAEDQUOT

Definition at line 593 of file win32.h.

◆ EHOSTDOWN

#define EHOSTDOWN   WSAEHOSTDOWN

Definition at line 580 of file win32.h.

◆ EHOSTUNREACH

#define EHOSTUNREACH   WSAEHOSTUNREACH

Definition at line 583 of file win32.h.

◆ EINPROGRESS

#define EINPROGRESS   WSAEINPROGRESS

Definition at line 498 of file win32.h.

◆ EISCONN

#define EISCONN   WSAEISCONN

Definition at line 558 of file win32.h.

◆ ELOOP

#define ELOOP   WSAELOOP

Definition at line 576 of file win32.h.

◆ EMSGSIZE

#define EMSGSIZE   WSAEMSGSIZE

Definition at line 510 of file win32.h.

◆ ENETDOWN

#define ENETDOWN   WSAENETDOWN

Definition at line 540 of file win32.h.

◆ ENETRESET

#define ENETRESET   WSAENETRESET

Definition at line 546 of file win32.h.

◆ ENETUNREACH

#define ENETUNREACH   WSAENETUNREACH

Definition at line 543 of file win32.h.

◆ ENOBUFS

#define ENOBUFS   WSAENOBUFS

Definition at line 555 of file win32.h.

◆ ENOPROTOOPT

#define ENOPROTOOPT   WSAENOPROTOOPT

Definition at line 516 of file win32.h.

◆ ENOTCONN

#define ENOTCONN   WSAENOTCONN

Definition at line 561 of file win32.h.

◆ ENOTSOCK

#define ENOTSOCK   WSAENOTSOCK

Definition at line 504 of file win32.h.

◆ EOPNOTSUPP

#define EOPNOTSUPP   WSAEOPNOTSUPP

Definition at line 525 of file win32.h.

◆ EPFNOSUPPORT

#define EPFNOSUPPORT   WSAEPFNOSUPPORT

Definition at line 528 of file win32.h.

◆ EPROCLIM

#define EPROCLIM   WSAEPROCLIM

Definition at line 587 of file win32.h.

◆ EPROTONOSUPPORT

#define EPROTONOSUPPORT   WSAEPROTONOSUPPORT

Definition at line 519 of file win32.h.

◆ EPROTOTYPE

#define EPROTOTYPE   WSAEPROTOTYPE

Definition at line 513 of file win32.h.

◆ EREMOTE

#define EREMOTE   WSAEREMOTE

Definition at line 599 of file win32.h.

◆ ESHUTDOWN

#define ESHUTDOWN   WSAESHUTDOWN

Definition at line 564 of file win32.h.

◆ ESOCKTNOSUPPORT

#define ESOCKTNOSUPPORT   WSAESOCKTNOSUPPORT

Definition at line 522 of file win32.h.

◆ ESTALE

#define ESTALE   WSAESTALE

Definition at line 596 of file win32.h.

◆ ETIMEDOUT

#define ETIMEDOUT   WSAETIMEDOUT

Definition at line 570 of file win32.h.

◆ ETOOMANYREFS

#define ETOOMANYREFS   WSAETOOMANYREFS

Definition at line 567 of file win32.h.

◆ EUSERS

#define EUSERS   WSAEUSERS

Definition at line 590 of file win32.h.

◆ EWOULDBLOCK

#define EWOULDBLOCK   WSAEWOULDBLOCK

Definition at line 495 of file win32.h.

◆ F_DUPFD

#define F_DUPFD   0

Definition at line 602 of file win32.h.

◆ F_DUPFD_CLOEXEC

#define F_DUPFD_CLOEXEC   67

Definition at line 609 of file win32.h.

◆ F_GETFD

#define F_GETFD   1

Definition at line 603 of file win32.h.

◆ F_SETFD

#define F_SETFD   2

Definition at line 604 of file win32.h.

◆ F_SETFL

#define F_SETFL   4

Definition at line 608 of file win32.h.

◆ FD_CLOEXEC

#define FD_CLOEXEC   1 /* F_GETFD, F_SETFD */

Definition at line 610 of file win32.h.

◆ FD_CLR

#define FD_CLR (   f,
 
)    rb_w32_fdclr(f, s)

Definition at line 632 of file win32.h.

◆ FD_ISSET

#define FD_ISSET (   f,
 
)    rb_w32_fdisset(f, s)

Definition at line 635 of file win32.h.

◆ FD_SET

#define FD_SET (   fd,
  set 
)
Value:
do {\
unsigned int i;\
SOCKET s = _get_osfhandle(fd);\
\
for (i = 0; i < (set)->fd_count; i++) {\
if ((set)->fd_array[i] == s) {\
break;\
}\
}\
if (i == (set)->fd_count) {\
if ((set)->fd_count < FD_SETSIZE) {\
(set)->fd_array[i] = s;\
(set)->fd_count++;\
}\
}\
} while(0)

Definition at line 614 of file win32.h.

◆ fstat

#define fstat (   fd,
  st 
)    rb_w32_fstat(fd,st)

Definition at line 207 of file win32.h.

◆ fsync

#define fsync   _commit

Definition at line 216 of file win32.h.

◆ ftruncate

#define ftruncate   rb_w32_ftruncate

Definition at line 439 of file win32.h.

◆ HAVE_FTRUNCATE

#define HAVE_FTRUNCATE   1

Definition at line 435 of file win32.h.

◆ HAVE_TRUNCATE

#define HAVE_TRUNCATE   1

Definition at line 443 of file win32.h.

◆ IFNAMSIZ

#define IFNAMSIZ   256

Definition at line 253 of file win32.h.

◆ INTPTR_MAX

#define INTPTR_MAX   2147483647

Definition at line 98 of file win32.h.

◆ INTPTR_MIN

#define INTPTR_MIN   (-INTPTR_MAX-1)

Definition at line 100 of file win32.h.

◆ isnan

#define isnan (   x)    _isnan(x)

Definition at line 369 of file win32.h.

◆ LOCK_EX

#define LOCK_EX   2

Definition at line 475 of file win32.h.

◆ LOCK_NB

#define LOCK_NB   4

Definition at line 476 of file win32.h.

◆ LOCK_SH

#define LOCK_SH   1

Definition at line 474 of file win32.h.

◆ LOCK_UN

#define LOCK_UN   8

Definition at line 477 of file win32.h.

◆ lstat

#define lstat (   path,
  st 
)    rb_w32_lstati128(path,st)

Definition at line 211 of file win32.h.

◆ mode_t

#define mode_t   int

Definition at line 119 of file win32.h.

◆ O_NONBLOCK

#define O_NONBLOCK   1

Definition at line 611 of file win32.h.

◆ O_SHARE_DELETE

#define O_SHARE_DELETE   0x20000000 /* for rb_w32_open(), rb_w32_wopen() */

Definition at line 130 of file win32.h.

◆ PIPE_BUF

#define PIPE_BUF   1024

Definition at line 472 of file win32.h.

◆ rb_w32_iswin95

#define rb_w32_iswin95 ( )    FALSE

Definition at line 126 of file win32.h.

◆ rb_w32_iswinnt

#define rb_w32_iswinnt ( )    TRUE

Definition at line 125 of file win32.h.

◆ S_IFLNK

#define S_IFLNK   0xa000

Definition at line 422 of file win32.h.

◆ S_IRGRP

#define S_IRGRP   0040

Definition at line 396 of file win32.h.

◆ S_IROTH

#define S_IROTH   0004

Definition at line 399 of file win32.h.

◆ S_IRUSR

#define S_IRUSR   0400

Definition at line 393 of file win32.h.

◆ S_IWGRP

#define S_IWGRP   0020

Definition at line 406 of file win32.h.

◆ S_IWOTH

#define S_IWOTH   0002

Definition at line 409 of file win32.h.

◆ S_IWUSR

#define S_IWUSR   0200

Definition at line 403 of file win32.h.

◆ S_IXGRP

#define S_IXGRP   0010

Definition at line 416 of file win32.h.

◆ S_IXOTH

#define S_IXOTH   0001

Definition at line 419 of file win32.h.

◆ S_IXUSR

#define S_IXUSR   0100

Definition at line 413 of file win32.h.

◆ SIGINT

#define SIGINT   2

Definition at line 481 of file win32.h.

◆ SIGKILL

#define SIGKILL   9

Definition at line 484 of file win32.h.

◆ stat

#define stat (   path,
  st 
)    rb_w32_stat(path,st)

Definition at line 206 of file win32.h.

◆ strcasecmp

#define strcasecmp   _stricmp

Definition at line 214 of file win32.h.

◆ strncasecmp

#define strncasecmp   _strnicmp

Definition at line 215 of file win32.h.

◆ SUFFIX

#define SUFFIX

Definition at line 428 of file win32.h.

◆ truncate

#define truncate   rb_w32_truncate

Definition at line 447 of file win32.h.

◆ UINTPTR_MAX

#define UINTPTR_MAX   4294967295U

Definition at line 114 of file win32.h.

◆ WIN32

#define WIN32

Definition at line 36 of file win32.h.

◆ WNOHANG

#define WNOHANG   -1

Definition at line 128 of file win32.h.

Typedef Documentation

◆ asynchronous_func_t

typedef uintptr_t(* asynchronous_func_t) (uintptr_t self, int argc, uintptr_t *argv)

Definition at line 777 of file win32.h.

◆ clockid_t

typedef int clockid_t

Definition at line 132 of file win32.h.

◆ intptr_t

typedef int intptr_t

Definition at line 90 of file win32.h.

◆ uintptr_t

Definition at line 106 of file win32.h.

Function Documentation

◆ chown()

int chown ( const char ,
int  ,
int   
)

Definition at line 4763 of file win32.c.

◆ clock_getres()

int clock_getres ( clockid_t  ,
struct timespec  
)

Definition at line 4652 of file win32.c.

◆ clock_gettime()

int clock_gettime ( clockid_t  ,
struct timespec  
)

Definition at line 4612 of file win32.c.

Referenced by rb_timespec_now().

◆ fcntl()

int fcntl ( int  ,
int  ,
  ... 
)

◆ flock()

int flock ( int  fd,
int  oper 
)

Definition at line 125 of file flock.c.

References rb_notimplement().

◆ freeifaddrs()

void freeifaddrs ( struct ifaddrs )

Definition at line 4176 of file win32.c.

References ifaddrs::ifa_addr, ifaddrs::ifa_name, ifaddrs::ifa_next, and ruby_xfree().

◆ getegid()

rb_gid_t getegid ( void  )

Definition at line 2786 of file win32.c.

Referenced by eaccess().

◆ geteuid()

rb_uid_t geteuid ( void  )

Definition at line 2772 of file win32.c.

Referenced by eaccess().

◆ getgid()

rb_gid_t getgid ( void  )

Definition at line 2779 of file win32.c.

Referenced by eaccess().

◆ getifaddrs()

int getifaddrs ( struct ifaddrs **  )

Definition at line 4089 of file win32.c.

◆ gettimeofday()

int gettimeofday ( struct timeval ,
struct timezone  
)

Definition at line 4598 of file win32.c.

Referenced by rb_timespec_now(), and rb_w32_select_with_thread().

◆ getuid()

rb_uid_t getuid ( void  )

Definition at line 2765 of file win32.c.

Referenced by eaccess().

◆ gmtime_r()

struct tm* gmtime_r ( const time_t ,
struct tm  
)

Definition at line 7838 of file win32.c.

◆ ioctl()

int ioctl ( int  ,
int  ,
  ... 
)

Definition at line 2811 of file win32.c.

References EINVAL, and errno.

◆ kill()

int kill ( int  ,
int   
)

Definition at line 4789 of file win32.c.

◆ link()

int link ( const char ,
const char  
)

Definition at line 4931 of file win32.c.

Referenced by rb_mark_end_proc(), and rb_set_end_proc().

◆ localtime_r()

struct tm* localtime_r ( const time_t ,
struct tm  
)

Definition at line 7862 of file win32.c.

◆ rb_w32_accept()

int WSAAPI rb_w32_accept ( int  ,
struct sockaddr *  ,
int  
)

Definition at line 3274 of file win32.c.

References RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_access()

int rb_w32_access ( const char ,
int   
)

Definition at line 5809 of file win32.c.

References EACCES, errno, path, rb_w32_stati128, and stat::st_mode.

◆ rb_w32_aspawn()

rb_pid_t rb_w32_aspawn ( int  ,
const char ,
char *const  
)

Definition at line 1563 of file win32.c.

References argv, and rb_w32_aspawn_flags().

◆ rb_w32_aspawn_flags()

rb_pid_t rb_w32_aspawn_flags ( int  ,
const char ,
char *const ,
DWORD   
)

Definition at line 1548 of file win32.c.

Referenced by rb_w32_aspawn().

◆ rb_w32_asynchronize()

uintptr_t rb_w32_asynchronize ( asynchronous_func_t  func,
uintptr_t  self,
int  argc,
uintptr_t argv,
uintptr_t  intrval 
)

Definition at line 5977 of file win32.c.

References arg, argc, argv, FALSE, asynchronous_arg_t::func, NULL, and RUBY_CRITICAL.

◆ rb_w32_bind()

int WSAAPI rb_w32_bind ( int  ,
const struct sockaddr *  ,
int   
)

Definition at line 3301 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_close()

int rb_w32_close ( int  )

Definition at line 6910 of file win32.c.

References errno, is_socket, LK_LEN, and TO_SOCKET.

Referenced by rb_w32_pipe().

◆ rb_w32_connect()

int WSAAPI rb_w32_connect ( int  ,
const struct sockaddr *  ,
int   
)

Definition at line 3317 of file win32.c.

References EINPROGRESS, err, errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_dup2()

int rb_w32_dup2 ( int  ,
int   
)

Definition at line 6134 of file win32.c.

References dup2(), and set_new_std_fd.

◆ rb_w32_fclose()

int rb_w32_fclose ( FILE )

Definition at line 6389 of file win32.c.

References _set_osfhnd, errno, fclose(), fflush(), fileno(), is_socket, LK_LEN, map_errno, and TO_SOCKET.

◆ rb_w32_fd_is_text()

char rb_w32_fd_is_text ( int  )

Definition at line 7756 of file win32.c.

References _osfile, and FTEXT.

◆ rb_w32_fdclr()

void rb_w32_fdclr ( int  ,
fd_set  
)

Definition at line 2827 of file win32.c.

References i, memmove, and TO_SOCKET.

◆ rb_w32_fdisset()

int rb_w32_fdisset ( int  ,
fd_set  
)

Definition at line 2845 of file win32.c.

References RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_fdset()

void rb_w32_fdset ( int  ,
fd_set  
)

Definition at line 2818 of file win32.c.

References FD_SET.

◆ rb_w32_free_environ()

void rb_w32_free_environ ( char **  )

Definition at line 6077 of file win32.c.

References env, and free.

◆ rb_w32_fstat()

int rb_w32_fstat ( int  ,
struct stat  
)

Definition at line 5398 of file win32.c.

References fstat(), L, NULL, and st.

◆ rb_w32_fstati128()

int rb_w32_fstati128 ( int  ,
struct stati128  
)

Definition at line 5415 of file win32.c.

References COPY_STAT, fstat(), and st.

◆ rb_w32_ftruncate()

int rb_w32_ftruncate ( int  fd,
off_t  length 
)

Definition at line 5904 of file win32.c.

References h.

◆ rb_w32_get_environ()

char** rb_w32_get_environ ( void  )

Definition at line 6040 of file win32.c.

References env, malloc(), NULL, and wstr_to_utf8.

◆ rb_w32_get_osfhandle()

SOCKET rb_w32_get_osfhandle ( int  )

Definition at line 1078 of file win32.c.

◆ rb_w32_getcwd()

char* rb_w32_getcwd ( char ,
int   
)

Definition at line 4731 of file win32.c.

◆ rb_w32_getenv()

char* rb_w32_getenv ( const char )

Definition at line 5237 of file win32.c.

◆ rb_w32_gethostbyaddr()

struct hostent* WSAAPI rb_w32_gethostbyaddr ( const char ,
int  ,
int   
)

Definition at line 3831 of file win32.c.

References errno, len, map_errno, NULL, and RUBY_CRITICAL.

◆ rb_w32_gethostbyname()

struct hostent* WSAAPI rb_w32_gethostbyname ( const char )

Definition at line 3846 of file win32.c.

References errno, map_errno, name, NULL, and RUBY_CRITICAL.

◆ rb_w32_gethostname()

int WSAAPI rb_w32_gethostname ( char ,
int   
)

Definition at line 3861 of file win32.c.

References errno, gethostname(), len, map_errno, name, and RUBY_CRITICAL.

◆ rb_w32_getpeername()

int WSAAPI rb_w32_getpeername ( int  ,
struct sockaddr *  ,
int  
)

Definition at line 3338 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_getpid()

rb_pid_t rb_w32_getpid ( void  )

Definition at line 6087 of file win32.c.

Referenced by rb_w32_pipe().

◆ rb_w32_getppid()

rb_pid_t rb_w32_getppid ( void  )

Definition at line 6095 of file win32.c.

References int, and long.

◆ rb_w32_getprotobyname()

struct protoent* WSAAPI rb_w32_getprotobyname ( const char )

Definition at line 3876 of file win32.c.

References errno, map_errno, name, NULL, and RUBY_CRITICAL.

◆ rb_w32_getprotobynumber()

struct protoent* WSAAPI rb_w32_getprotobynumber ( int  )

Definition at line 3891 of file win32.c.

References errno, map_errno, NULL, and RUBY_CRITICAL.

◆ rb_w32_getservbyname()

struct servent* WSAAPI rb_w32_getservbyname ( const char ,
const char  
)

Definition at line 3906 of file win32.c.

References errno, map_errno, name, NULL, proto, and RUBY_CRITICAL.

◆ rb_w32_getservbyport()

struct servent* WSAAPI rb_w32_getservbyport ( int  ,
const char  
)

Definition at line 3921 of file win32.c.

References errno, map_errno, NULL, proto, and RUBY_CRITICAL.

◆ rb_w32_getsockname()

int WSAAPI rb_w32_getsockname ( int  ,
struct sockaddr *  ,
int  
)

Definition at line 3353 of file win32.c.

References RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_getsockopt()

int WSAAPI rb_w32_getsockopt ( int  ,
int  ,
int  ,
char ,
int  
)

Definition at line 3383 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_inet_ntop()

const char* WSAAPI rb_w32_inet_ntop ( int  ,
const void ,
char ,
size_t   
)

Definition at line 7723 of file win32.c.

◆ rb_w32_inet_pton()

int WSAAPI rb_w32_inet_pton ( int  ,
const char ,
void  
)

Definition at line 7742 of file win32.c.

References int.

◆ rb_w32_io_cancelable_p()

int rb_w32_io_cancelable_p ( int  )

Definition at line 2602 of file win32.c.

References is_socket, and TO_SOCKET.

◆ rb_w32_ioctlsocket()

int WSAAPI rb_w32_ioctlsocket ( int  ,
long  ,
u_long  
)

Definition at line 3398 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_is_socket()

int rb_w32_is_socket ( int  )

Definition at line 2691 of file win32.c.

References is_socket, and TO_SOCKET.

◆ rb_w32_isatty()

int rb_w32_isatty ( int  )

Definition at line 7679 of file win32.c.

References _osfhnd, ENOTTY, and errno.

◆ rb_w32_listen()

int WSAAPI rb_w32_listen ( int  ,
int   
)

Definition at line 3413 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_lseek()

off_t rb_w32_lseek ( int  ,
off_t  ,
int   
)

Definition at line 5797 of file win32.c.

References is_socket, and TO_SOCKET.

◆ rb_w32_lstati128()

int rb_w32_lstati128 ( const char ,
struct stati128  
)

Definition at line 5790 of file win32.c.

◆ rb_w32_map_errno()

int rb_w32_map_errno ( DWORD  )

Definition at line 273 of file win32.c.

References i, int, and winerr.

◆ rb_w32_mbstr_to_wstr()

WCHAR* rb_w32_mbstr_to_wstr ( UINT  ,
const char ,
int  ,
long  
)

Definition at line 2149 of file win32.c.

References len, malloc(), NULL, ptr, and str.

Referenced by dln_load().

◆ rb_w32_mkdir()

int rb_w32_mkdir ( const char ,
int   
)

Definition at line 7503 of file win32.c.

References filecp_to_wstr, NULL, and path.

◆ rb_w32_open()

int rb_w32_open ( const char ,
int  ,
  ... 
)

Definition at line 6181 of file win32.c.

References arg, filecp_to_wstr, NULL, va_arg, va_end, and va_start.

◆ rb_w32_osid()

DWORD rb_w32_osid ( void  )

◆ rb_w32_osver()

DWORD rb_w32_osver ( void  )

Definition at line 319 of file win32.c.

◆ rb_w32_pipe()

int rb_w32_pipe ( int  [2])

◆ rb_w32_pipe_exec()

rb_pid_t rb_w32_pipe_exec ( const char ,
const char ,
int  ,
int ,
int  
)

◆ rb_w32_read()

ssize_t rb_w32_read ( int  ,
void ,
size_t   
)

◆ rb_w32_recv()

int WSAAPI rb_w32_recv ( int  ,
char ,
int  ,
int   
)

Definition at line 3555 of file win32.c.

Referenced by rb_w32_read().

◆ rb_w32_recvfrom()

int WSAAPI rb_w32_recvfrom ( int  ,
char ,
int  ,
int  ,
struct sockaddr *  ,
int  
)

Definition at line 3562 of file win32.c.

◆ rb_w32_rename()

int rb_w32_rename ( const char ,
const char  
)

Definition at line 5333 of file win32.c.

References filecp_to_wstr, free, and NULL.

◆ rb_w32_rmdir()

int rb_w32_rmdir ( const char )

Definition at line 7538 of file win32.c.

References filecp_to_wstr, NULL, and path.

◆ rb_w32_select()

int WSAAPI rb_w32_select ( int  ,
fd_set ,
fd_set ,
fd_set ,
struct timeval  
)

Definition at line 3250 of file win32.c.

References rb_w32_select_with_thread().

◆ rb_w32_send()

int WSAAPI rb_w32_send ( int  ,
const char ,
int  ,
int   
)

Definition at line 3570 of file win32.c.

Referenced by rb_w32_write().

◆ rb_w32_sendto()

int WSAAPI rb_w32_sendto ( int  ,
const char ,
int  ,
int  ,
const struct sockaddr *  ,
int   
)

Definition at line 3577 of file win32.c.

◆ rb_w32_set_nonblock()

int rb_w32_set_nonblock ( int  )

Definition at line 4390 of file win32.c.

References rb_w32_set_nonblock2(), and TRUE.

◆ rb_w32_setsockopt()

int WSAAPI rb_w32_setsockopt ( int  ,
int  ,
int  ,
const char ,
int   
)

Definition at line 3725 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.

◆ rb_w32_shutdown()

int WSAAPI rb_w32_shutdown ( int  ,
int   
)

Definition at line 3740 of file win32.c.

References errno, map_errno, RUBY_CRITICAL, shutdown, and TO_SOCKET.

◆ rb_w32_sleep()

int rb_w32_sleep ( unsigned long  msec)

◆ rb_w32_Sleep()

int WINAPI rb_w32_Sleep ( unsigned long  msec)

◆ rb_w32_socket()

int WSAAPI rb_w32_socket ( int  ,
int  ,
int   
)

Definition at line 3805 of file win32.c.

References RUBY_CRITICAL.

◆ rb_w32_spawn()

rb_pid_t rb_w32_spawn ( int  ,
const char ,
const char  
)

Definition at line 1460 of file win32.c.

◆ rb_w32_stat()

int rb_w32_stat ( const char ,
struct stat  
)

Definition at line 5687 of file win32.c.

References COPY_STAT, path, rb_w32_stati128, and st.

◆ rb_w32_stati128()

int rb_w32_stati128 ( const char ,
struct stati128  
)

Definition at line 5762 of file win32.c.

◆ rb_w32_strerror()

char* rb_w32_strerror ( int  )

Definition at line 2706 of file win32.c.

References EADDRINUSE, EWOULDBLOCK, i, int, and sys_nerr.

◆ rb_w32_sysinit()

void rb_w32_sysinit ( int ,
char ***   
)

Definition at line 847 of file win32.c.

Referenced by ruby_sysinit().

◆ rb_w32_time_subtract()

int rb_w32_time_subtract ( struct timeval rest,
const struct timeval wait 
)

Definition at line 3074 of file win32.c.

References timeval::tv_sec, timeval::tv_usec, and wait().

◆ rb_w32_times()

int rb_w32_times ( struct tms )

Definition at line 5926 of file win32.c.

References exit(), and tms::tms_utime.

◆ rb_w32_truncate()

int rb_w32_truncate ( const char path,
off_t  length 
)

Definition at line 5897 of file win32.c.

◆ rb_w32_uaccess()

int rb_w32_uaccess ( const char ,
int   
)

Definition at line 5824 of file win32.c.

References EACCES, errno, path, rb_w32_ustati128(), and stat::st_mode.

◆ rb_w32_uaspawn()

rb_pid_t rb_w32_uaspawn ( int  ,
const char ,
char *const  
)

Definition at line 1570 of file win32.c.

References argv, and rb_w32_uaspawn_flags().

◆ rb_w32_uaspawn_flags()

rb_pid_t rb_w32_uaspawn_flags ( int  ,
const char ,
char *const ,
DWORD   
)

Definition at line 1556 of file win32.c.

Referenced by rb_w32_uaspawn().

◆ rb_w32_uchdir()

int rb_w32_uchdir ( const char )

Definition at line 7455 of file win32.c.

References free, NULL, path, and utf8_to_wstr.

◆ rb_w32_uchmod()

int rb_w32_uchmod ( const char ,
int   
)

Definition at line 7624 of file win32.c.

References free, NULL, path, and utf8_to_wstr.

◆ rb_w32_uchown()

int rb_w32_uchown ( const char ,
int  ,
int   
)

Definition at line 4770 of file win32.c.

◆ rb_w32_ugetenv()

char* rb_w32_ugetenv ( const char )

Definition at line 5230 of file win32.c.

◆ rb_w32_ulink()

int rb_w32_ulink ( const char ,
const char  
)

Definition at line 4911 of file win32.c.

References free, NULL, and utf8_to_wstr.

◆ rb_w32_ulstati128()

int rb_w32_ulstati128 ( const char ,
struct stati128  
)

Definition at line 5783 of file win32.c.

◆ rb_w32_umkdir()

int rb_w32_umkdir ( const char ,
int   
)

Definition at line 7489 of file win32.c.

References NULL, path, and utf8_to_wstr.

◆ rb_w32_unlink()

int rb_w32_unlink ( const char )

Definition at line 7610 of file win32.c.

References filecp_to_wstr, NULL, and path.

◆ rb_w32_unwrap_io_handle()

int rb_w32_unwrap_io_handle ( int  )

Definition at line 7908 of file win32.c.

References _set_osfhnd, is_socket, LK_LEN, and TO_SOCKET.

◆ rb_w32_uopen()

int rb_w32_uopen ( const char ,
int  ,
  ... 
)

Definition at line 6147 of file win32.c.

References arg, NULL, utf8_to_wstr, va_arg, va_end, and va_start.

◆ rb_w32_ureadlink()

ssize_t rb_w32_ureadlink ( const char ,
char ,
size_t   
)

Definition at line 5092 of file win32.c.

◆ rb_w32_urename()

int rb_w32_urename ( const char ,
const char  
)

Definition at line 5314 of file win32.c.

References free, NULL, and utf8_to_wstr.

◆ rb_w32_urmdir()

int rb_w32_urmdir ( const char )

Definition at line 7552 of file win32.c.

References NULL, path, and utf8_to_wstr.

◆ rb_w32_uspawn()

rb_pid_t rb_w32_uspawn ( int  ,
const char ,
const char  
)

Definition at line 1468 of file win32.c.

◆ rb_w32_ustati128()

int rb_w32_ustati128 ( const char ,
struct stati128  
)

Definition at line 5755 of file win32.c.

Referenced by rb_w32_uaccess().

◆ rb_w32_usymlink()

int rb_w32_usymlink ( const char src,
const char link 
)

Definition at line 5175 of file win32.c.

◆ rb_w32_utime()

int rb_w32_utime ( const char ,
const struct utimbuf  
)

◆ rb_w32_utimensat()

int rb_w32_utimensat ( int  ,
const char ,
const struct timespec ,
int   
)

Definition at line 7441 of file win32.c.

References filecp_to_wstr, NULL, and path.

Referenced by rb_w32_utime(), and rb_w32_utimes().

◆ rb_w32_utimes()

int rb_w32_utimes ( const char ,
const struct timeval  
)

◆ rb_w32_utruncate()

int rb_w32_utruncate ( const char path,
off_t  length 
)

Definition at line 5890 of file win32.c.

◆ rb_w32_uunlink()

int rb_w32_uunlink ( const char )

Definition at line 7596 of file win32.c.

References NULL, path, and utf8_to_wstr.

◆ rb_w32_uutime()

int rb_w32_uutime ( const char ,
const struct utimbuf  
)

◆ rb_w32_uutimensat()

int rb_w32_uutimensat ( int  ,
const char ,
const struct timespec ,
int   
)

Definition at line 7427 of file win32.c.

References NULL, path, and utf8_to_wstr.

Referenced by rb_w32_uutime(), and rb_w32_uutimes().

◆ rb_w32_uutimes()

int rb_w32_uutimes ( const char ,
const struct timeval  
)

◆ rb_w32_wait_events_blocking()

int rb_w32_wait_events_blocking ( HANDLE *  events,
int  num,
DWORD  timeout 
)

◆ rb_w32_wopen()

int rb_w32_wopen ( const WCHAR *  ,
int  ,
  ... 
)

Definition at line 6201 of file win32.c.

References arg, va_arg, va_end, and va_start.

◆ rb_w32_wrap_io_handle()

int rb_w32_wrap_io_handle ( HANDLE  ,
int   
)

Definition at line 7886 of file win32.c.

References f, h, len, and O_NONBLOCK.

◆ rb_w32_wreadlink()

ssize_t rb_w32_wreadlink ( const WCHAR *  ,
WCHAR *  ,
size_t   
)

◆ rb_w32_write()

ssize_t rb_w32_write ( int  ,
const void ,
size_t   
)

◆ rb_w32_write_console()

long rb_w32_write_console ( uintptr_t  ,
int   
)

Definition at line 7225 of file win32.c.

References _osfhnd, L, len, ptr, and str.

◆ rb_w32_wstr_to_mbstr()

char* rb_w32_wstr_to_mbstr ( UINT  ,
const WCHAR *  ,
int  ,
long  
)

Definition at line 2133 of file win32.c.

References len, malloc(), NULL, and ptr.

◆ readlink()

ssize_t readlink ( const char ,
char ,
size_t   
)

Definition at line 5099 of file win32.c.

◆ recvmsg()

int recvmsg ( int  ,
struct msghdr ,
int   
)

Definition at line 3621 of file win32.c.

◆ sendmsg()

int sendmsg ( int  ,
const struct msghdr ,
int   
)

Definition at line 3676 of file win32.c.

◆ setgid()

int setgid ( rb_gid_t  )

Definition at line 2800 of file win32.c.

References ROOT_GID.

◆ setuid()

int setuid ( rb_uid_t  )

Definition at line 2793 of file win32.c.

References ROOT_UID.

◆ socketpair()

int socketpair ( int  ,
int  ,
int  ,
int  
)

Definition at line 4022 of file win32.c.

◆ symlink()

int symlink ( const char src,
const char link 
)

Definition at line 5182 of file win32.c.

◆ waitpid()

rb_pid_t waitpid ( rb_pid_t  ,
int ,
int   
)

Definition at line 4476 of file win32.c.

Referenced by wait().

i
uint32_t i
Definition: rb_mjit_min_header-2.7.2.h:5460
FD_SETSIZE
#define FD_SETSIZE
Definition: rb_mjit_min_header-2.7.2.h:1258