|
Ruby
2.7.2p137(2020-10-01revision5445e0435260b449decf2ac16f9d09bae3cafe72)
|
#include "ruby/ruby.h"#include "ruby/encoding.h"#include "ruby/io.h"#include "ruby/util.h"#include <fcntl.h>#include <process.h>#include <sys/stat.h>#include <stdio.h>#include <stdlib.h>#include <errno.h>#include <assert.h>#include <ctype.h>#include <windows.h>#include <winbase.h>#include <wincon.h>#include <share.h>#include <shlobj.h>#include <mbstring.h>#include <shlwapi.h>#include "ruby/win32.h"#include "ruby/vm.h"#include "win32/dir.h"#include "win32/file.h"#include "id.h"#include "internal.h"#include "encindex.h"#include "dln.h"#include "dln_find.c"#include <sys/timeb.h>#include "missing/nextafter.c"Go to the source code of this file.
Data Structures | |
| struct | constat |
| struct | ChildRecord |
| struct | _NtCmdLineElement |
| struct | ioinfo |
| struct | WSAMSG |
| struct | NET_LUID |
| struct | FILE_ID_128 |
| struct | FILE_ID_INFO |
| struct | asynchronous_arg_t |
| struct | w32_io_info_t |
| struct | w32_io_info_args |
Macros | |
| #define | isdirsep(x) ((x) == '/' || (x) == '\\') |
| #define | DLN_FIND_EXTRA_ARG_DECL ,UINT cp |
| #define | DLN_FIND_EXTRA_ARG ,cp |
| #define | rb_w32_stati128(path, st) w32_stati128(path, st, cp, FALSE) |
| #define | getenv(name) w32_getenv(name, cp) |
| #define | CharNext(p) CharNextExA(cp, (p), 0) |
| #define | dln_find_exe_r rb_w32_udln_find_exe_r |
| #define | dln_find_file_r rb_w32_udln_find_file_r |
| #define | dln_find_exe_r(fname, path, buf, size) rb_w32_udln_find_exe_r(fname, path, buf, size, cp) |
| #define | dln_find_file_r(fname, path, buf, size) rb_w32_udln_find_file_r(fname, path, buf, size, cp) |
| #define | ENV_MAX 512 |
| #define | enough_to_get(n) (--(n) >= 0) |
| #define | enough_to_put(n) (--(n) >= 0) |
| #define | Debug(something) /* nothing */ |
| #define | TO_SOCKET(x) _get_osfhandle(x) |
| #define | RUBY_CRITICAL if (0) {} else /* just remark */ |
| #define | ERROR_PIPE_LOCAL 229L |
| #define | map_errno rb_w32_map_errno |
| #define | LK_ERR(f, i) |
| #define | LK_LEN ULONG_MAX |
| #define | CSIDL_LOCAL_APPDATA 28 |
| #define | CSIDL_COMMON_APPDATA 35 |
| #define | CSIDL_WINDOWS 36 |
| #define | CSIDL_SYSTEM 37 |
| #define | CSIDL_PROFILE 40 |
| #define | env wk.val |
| #define | set_env_val(vname) |
| #define | conlist_disabled ((st_table *)-1) |
| #define | MAKE_SOCKDATA(af, fl) ((int)((((int)af)<<4)|((fl)&0xFFFF))) |
| #define | GET_FAMILY(v) ((int)(((v)>>4)&0xFFFF)) |
| #define | GET_FLAGS(v) ((int)((v)&0xFFFF)) |
| #define | MAXCHILDNUM 256 /* max num of child processes */ |
| #define | FOREACH_CHILD(v) |
| #define | END_FOREACH_CHILD } while (0) |
| #define | InternalCmdsMax 8 |
| #define | STRNDUPV(ptr, v, src, len) (((char *)memcpy(((ptr) = ALLOCV((v), (len) + 1)), (src), (len)))[len] = 0) |
| #define | filecp rb_w32_filecp |
| #define | mbstr_to_wstr rb_w32_mbstr_to_wstr |
| #define | wstr_to_mbstr rb_w32_wstr_to_mbstr |
| #define | acp_to_wstr(str, plen) mbstr_to_wstr(CP_ACP, str, -1, plen) |
| #define | wstr_to_acp(str, plen) wstr_to_mbstr(CP_ACP, str, -1, plen) |
| #define | filecp_to_wstr(str, plen) mbstr_to_wstr(filecp(), str, -1, plen) |
| #define | wstr_to_filecp(str, plen) wstr_to_mbstr(filecp(), str, -1, plen) |
| #define | utf8_to_wstr(str, plen) mbstr_to_wstr(CP_UTF8, str, -1, plen) |
| #define | wstr_to_utf8(str, plen) wstr_to_mbstr(CP_UTF8, str, -1, plen) |
| #define | NTGLOB 0x1 |
| #define | NTMALLOC 0x2 |
| #define | NTSTRING 0x4 |
| #define | GetBit(bits, i) ((bits)[(i) / CHAR_BIT] & (1 << (i) % CHAR_BIT)) |
| #define | SetBit(bits, i) ((bits)[(i) / CHAR_BIT] |= (1 << (i) % CHAR_BIT)) |
| #define | BitOfIsDir(n) ((n) * 2) |
| #define | BitOfIsRep(n) ((n) * 2 + 1) |
| #define | DIRENT_PER_CHAR (CHAR_BIT / 2) |
| #define | FILE_COUNT(stream) stream->_cnt |
| #define | FILE_READPTR(stream) stream->_ptr |
| #define | FILE_FILENO(stream) stream->_file |
| #define | _CRTIMP __declspec(dllimport) |
| #define | IOINFO_L2E 5 |
| #define | IOINFO_ARRAY_ELTS (1 << IOINFO_L2E) |
| #define | _osfhnd(i) (_pioinfo(i)->osfhnd) |
| #define | _osfile(i) (_pioinfo(i)->osfile) |
| #define | rb_acrt_lowio_lock_fh(i) EnterCriticalSection(&_pioinfo(i)->lock) |
| #define | rb_acrt_lowio_unlock_fh(i) LeaveCriticalSection(&_pioinfo(i)->lock) |
| #define | pioinfo_extra 0 |
| #define | _set_osfhnd(fh, osfh) (void)(_osfhnd(fh) = osfh) |
| #define | _set_osflags(fh, flags) (_osfile(fh) = (flags)) |
| #define | FOPEN 0x01 /* file handle open */ |
| #define | FEOFLAG 0x02 /* end of file has been encountered */ |
| #define | FPIPE 0x08 /* file handle refers to a pipe */ |
| #define | FNOINHERIT 0x10 /* file handle opened O_NOINHERIT */ |
| #define | FAPPEND 0x20 /* file handle opened O_APPEND */ |
| #define | FDEV 0x40 /* file handle refers to device */ |
| #define | FTEXT 0x80 /* file handle is in text mode */ |
| #define | open_null(fd) |
| #define | ROOT_UID 0 |
| #define | ROOT_GID 0 |
| #define | WSAID_WSARECVMSG {0xf689d7c8,0x6f1f,0x436b,{0x8a,0x53,0xe5,0x4f,0xe3,0x51,0xc3,0x22}} |
| #define | WSAID_WSASENDMSG {0xa441e712,0x754f,0x43ca,{0x84,0xa7,0x0d,0xee,0x44,0xcf,0x60,0x6d}} |
| #define | msghdr_to_wsamsg(msg, wsamsg) |
| #define | hex2byte(str) ((isdigit(*(str)) ? *(str) - '0' : toupper(*(str)) - 'A' + 10) << 4 | (isdigit(*((str) + 1)) ? *((str) + 1) - '0' : toupper(*((str) + 1)) - 'A' + 10)) |
| #define | FILE_DEVICE_FILE_SYSTEM 0x00000009 |
| #define | FSCTL_GET_REPARSE_POINT ((0x9<<16)|(42<<2)) |
| #define | IO_REPARSE_TAG_SYMLINK 0xA000000CL |
| #define | SYMBOLIC_LINK_FLAG_DIRECTORY (0x1) |
| #define | SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE (0x2) |
| #define | COPY_STAT(src, dest, size_cast) |
| #define | FileIdInfo 0x12 |
| #define | yield_once() Sleep(0) |
| #define | yield_until(condition) do yield_once(); while (!(condition)) |
| #define | set_new_std_handle(newfd, handle) |
| #define | set_new_std_fd(newfd) set_new_std_handle(newfd, (HANDLE)rb_w32_get_osfhandle(newfd)) |
| #define | FOREGROUND_MASK (FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY) |
| #define | BACKGROUND_MASK (BACKGROUND_BLUE | BACKGROUND_GREEN | BACKGROUND_RED | BACKGROUND_INTENSITY) |
| #define | constat_attr_color_reverse(attr) |
| #define | COMMON_LVB_UNDERSCORE 0x8000 |
| #define | INVALID_SET_FILE_POINTER ((DWORD)-1) |
Typedefs | |
| typedef struct _NtCmdLineElement | NtCmdLineElement |
| typedef DWORD(WINAPI * | get_final_path_func) (HANDLE, WCHAR *, DWORD, DWORD) |
| typedef DWORD(WINAPI * | cigl_t) (const GUID *, NET_LUID *) |
| typedef DWORD(WINAPI * | cilnA_t) (const NET_LUID *, char *, size_t) |
Enumerations | |
| enum | { NUM_GPR_ARG_REGISTERS = 8, NUM_FPR_ARG_REGISTERS = 13, LINKAGE_AREA_GPRS = 6, JSON_object_first_final = 27, HEAP_PAGE_ALIGN = (1UL << HEAP_PAGE_ALIGN_LOG), HEAP_PAGE_ALIGN_MASK = (~(~0UL << HEAP_PAGE_ALIGN_LOG)), REQUIRED_SIZE_BY_MALLOC = (sizeof(size_t) * 5), HEAP_PAGE_SIZE = (HEAP_PAGE_ALIGN - REQUIRED_SIZE_BY_MALLOC), HEAP_PAGE_OBJ_LIMIT = (unsigned int)((HEAP_PAGE_SIZE - sizeof(struct heap_page_header))/sizeof(struct RVALUE)), HEAP_PAGE_BITMAP_LIMIT = CEILDIV(CEILDIV(HEAP_PAGE_SIZE, sizeof(struct RVALUE)), BITS_BITLENGTH), HEAP_PAGE_BITMAP_SIZE = (BITS_SIZE * HEAP_PAGE_BITMAP_LIMIT), HEAP_PAGE_BITMAP_PLANES = USE_RGENGC ? 4 : 1, cmp_opt_Fixnum, cmp_opt_String, cmp_opt_Float, cmp_optimizable_count, utf_prefix_len = (int)sizeof(utf_prefix) - 1, base_dump_size = 8, TIMER_INTERRUPT_MASK = 0x01, PENDING_INTERRUPT_MASK = 0x02, POSTPONED_JOB_INTERRUPT_MASK = 0x04, TRAP_INTERRUPT_MASK = 0x08, constat_init = -2, constat_esc = -1, constat_seq = 0, SIGEV_SIGNAL = 0, SIGEV_NONE, SIGEV_THREAD } |
Variables | |
| EXTERN_C _CRTIMP ioinfo * | __pioinfo [] |
| VALUE(*const | rb_f_notimplement_ )(int, const VALUE *, VALUE, VALUE) = rb_f_notimplement |
| #define acp_to_wstr | ( | str, | |
| plen | |||
| ) | mbstr_to_wstr(CP_ACP, str, -1, plen) |
| #define BACKGROUND_MASK (BACKGROUND_BLUE | BACKGROUND_GREEN | BACKGROUND_RED | BACKGROUND_INTENSITY) |
| #define COMMON_LVB_UNDERSCORE 0x8000 |
| #define constat_attr_color_reverse | ( | attr | ) |
| #define COPY_STAT | ( | src, | |
| dest, | |||
| size_cast | |||
| ) |
| #define env wk.val |
| #define ERROR_PIPE_LOCAL 229L |
| #define FEOFLAG 0x02 /* end of file has been encountered */ |
| UINT filecp | ( | void | ) | rb_w32_filecp |
Definition at line 1281 of file win32.c.
Referenced by rb_w32_readdir().
| #define filecp_to_wstr | ( | str, | |
| plen | |||
| ) | mbstr_to_wstr(filecp(), str, -1, plen) |
| #define FNOINHERIT 0x10 /* file handle opened O_NOINHERIT */ |
| #define FOREACH_CHILD | ( | v | ) |
| #define FOREGROUND_MASK (FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY) |
| #define hex2byte | ( | str | ) | ((isdigit(*(str)) ? *(str) - '0' : toupper(*(str)) - 'A' + 10) << 4 | (isdigit(*((str) + 1)) ? *((str) + 1) - '0' : toupper(*((str) + 1)) - 'A' + 10)) |
| #define INVALID_SET_FILE_POINTER ((DWORD)-1) |
| #define IOINFO_ARRAY_ELTS (1 << IOINFO_L2E) |
| #define map_errno rb_w32_map_errno |
| #define mbstr_to_wstr rb_w32_mbstr_to_wstr |
| #define msghdr_to_wsamsg | ( | msg, | |
| wsamsg | |||
| ) |
| #define open_null | ( | fd | ) |
| #define set_env_val | ( | vname | ) |
| #define set_new_std_fd | ( | newfd | ) | set_new_std_handle(newfd, (HANDLE)rb_w32_get_osfhandle(newfd)) |
| #define set_new_std_handle | ( | newfd, | |
| handle | |||
| ) |
| #define utf8_to_wstr | ( | str, | |
| plen | |||
| ) | mbstr_to_wstr(CP_UTF8, str, -1, plen) |
| #define WSAID_WSARECVMSG {0xf689d7c8,0x6f1f,0x436b,{0x8a,0x53,0xe5,0x4f,0xe3,0x51,0xc3,0x22}} |
| #define WSAID_WSASENDMSG {0xa441e712,0x754f,0x43ca,{0x84,0xa7,0x0d,0xee,0x44,0xcf,0x60,0x6d}} |
| #define wstr_to_acp | ( | str, | |
| plen | |||
| ) | wstr_to_mbstr(CP_ACP, str, -1, plen) |
| #define wstr_to_filecp | ( | str, | |
| plen | |||
| ) | wstr_to_mbstr(filecp(), str, -1, plen) |
| #define wstr_to_mbstr rb_w32_wstr_to_mbstr |
| #define wstr_to_utf8 | ( | str, | |
| plen | |||
| ) | wstr_to_mbstr(CP_UTF8, str, -1, plen) |
| #define yield_until | ( | condition | ) | do yield_once(); while (!(condition)) |
| typedef struct _NtCmdLineElement NtCmdLineElement |
| anonymous enum |
Definition at line 4652 of file win32.c.
References CLOCK_MONOTONIC, CLOCK_REALTIME, EINVAL, errno, long, map_errno, timespec::tv_nsec, and timespec::tv_sec.
Definition at line 4612 of file win32.c.
References CLOCK_REALTIME.
Referenced by rb_timespec_now().
Definition at line 4282 of file win32.c.
References arg, EBADF, errno, F_SETFL, is_socket, TO_SOCKET, va_arg, va_end, and va_start.
Referenced by dup2(), rb_cloexec_fcntl_dupfd(), rb_maygvl_fd_fix_cloexec(), rsock_detect_cloexec(), and rsock_make_fd_nonblock().
Definition at line 4176 of file win32.c.
References ifaddrs::ifa_addr, ifaddrs::ifa_name, ifaddrs::ifa_next, and ruby_xfree().
Definition at line 4598 of file win32.c.
Referenced by rb_timespec_now(), and rb_w32_select_with_thread().
Definition at line 4931 of file win32.c.
References filecp_to_wstr, free, and NULL.
Referenced by rb_mark_end_proc(), and rb_set_end_proc().
Definition at line 4754 of file win32.c.
References DATA_PTR, Data_Wrap_Struct, NULL, path, Qnil, rb_str_new2, RUBY_DEFAULT_FREE, ruby_getcwd(), strlen(), and xfree.
Definition at line 3274 of file win32.c.
References RUBY_CRITICAL, and TO_SOCKET.
Definition at line 5809 of file win32.c.
References EACCES, errno, path, rb_w32_stati128, and stat::st_mode.
Definition at line 1563 of file win32.c.
References argv, and rb_w32_aspawn_flags().
Definition at line 1548 of file win32.c.
Referenced by rb_w32_aspawn().
| 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.
Definition at line 2396 of file win32.c.
References DIR::bits, direct::d_altname, direct::d_name, DIR::dirstr, free, and DIR::start.
Definition at line 3317 of file win32.c.
References EINPROGRESS, err, errno, map_errno, RUBY_CRITICAL, and TO_SOCKET.
| VALUE rb_w32_conv_from_wchar | ( | const WCHAR * | wstr, |
| rb_encoding * | enc | ||
| ) |
Definition at line 2229 of file win32.c.
References ECONV_UNDEF_REPLACE, ENCINDEX_ASCII, ENCINDEX_US_ASCII, ENCINDEX_UTF_16LE, ENCINDEX_UTF_8, len, NULL, Qnil, rb_enc_from_index(), rb_enc_str_new(), rb_enc_to_index(), rb_long2int, rb_str_conv_enc_opts(), RSTRING_PTR, and src.
Referenced by rb_w32_conv_from_wstr().
| char* rb_w32_conv_from_wstr | ( | const WCHAR * | wstr, |
| long * | lenp, | ||
| rb_encoding * | enc | ||
| ) |
Definition at line 2260 of file win32.c.
References len, malloc(), memcpy(), NIL_P, ptr, rb_w32_conv_from_wchar(), RSTRING_LEN, RSTRING_PTR, str, and wstr_to_filecp.
Definition at line 6134 of file win32.c.
References dup2(), and set_new_std_fd.
| void rb_w32_fd_copy | ( | rb_fdset_t * | dst, |
| const fd_set * | src, | ||
| int | max | ||
| ) |
| void rb_w32_fd_dup | ( | rb_fdset_t * | dst, |
| const rb_fdset_t * | src | ||
| ) |
Definition at line 2872 of file win32.c.
References FD_SETSIZE, rb_fdset_t::fdset, memcpy(), src, and xrealloc.
Definition at line 2845 of file win32.c.
References RUBY_CRITICAL, and TO_SOCKET.
Definition at line 3861 of file win32.c.
References errno, gethostname(), len, map_errno, name, and RUBY_CRITICAL.
Definition at line 6087 of file win32.c.
Referenced by rb_w32_pipe().
| struct protoent* WSAAPI rb_w32_getprotobynumber | ( | int | num | ) |
Definition at line 3353 of file win32.c.
References RUBY_CRITICAL, and TO_SOCKET.
| WCHAR* rb_w32_home_dir | ( | void | ) |
Definition at line 7503 of file win32.c.
References filecp_to_wstr, NULL, and path.
Definition at line 2166 of file win32.c.
References filecp_to_wstr, and NULL.
Definition at line 6412 of file win32.c.
References _set_osfhnd, _set_osflags, EMFILE, err, errno, FALSE, FNOINHERIT, FOPEN, FPIPE, h, int, map_errno, memcpy(), name, NULL, PRI_PIDT_PREFIX, rb_acrt_lowio_lock_fh, rb_acrt_lowio_unlock_fh, rb_pid_t, rb_w32_close(), rb_w32_getpid(), RUBY_CRITICAL, and snprintf().
Definition at line 6981 of file win32.c.
References _osfile, _set_osflags, buf, err, FALSE, FEOFLAG, FTEXT, is_socket, len, rb_acrt_lowio_lock_fh, rb_acrt_lowio_unlock_fh, rb_w32_recv(), read(), size, TO_SOCKET, and wait().
| int rb_w32_read_reparse_point | ( | const WCHAR * | path, |
| rb_w32_reparse_buffer_t * | rp, | ||
| size_t | bufsize, | ||
| WCHAR ** | result, | ||
| DWORD * | len | ||
| ) |
Definition at line 5012 of file win32.c.
Referenced by rb_w32_reparse_symlink_p().
| struct direct* rb_w32_readdir | ( | DIR * | dirp, |
| rb_encoding * | enc | ||
| ) |
Definition at line 2337 of file win32.c.
References ENCINDEX_ASCII, filecp, and rb_enc_to_index().
Definition at line 3555 of file win32.c.
Referenced by rb_w32_read().
Definition at line 5333 of file win32.c.
References filecp_to_wstr, free, and NULL.
Definition at line 4987 of file win32.c.
References ALLOCV, ALLOCV_END, FALSE, len, path, rb_w32_read_reparse_point(), rb_w32_reparse_buffer_size, rp, size, and TRUE.
Definition at line 2384 of file win32.c.
References DIR::curr, DIR::loc, and DIR::start.
Referenced by rb_w32_seekdir().
Definition at line 7538 of file win32.c.
References filecp_to_wstr, NULL, and path.
Definition at line 2369 of file win32.c.
References DIR::curr, DIR::loc, and rb_w32_rewinddir().
| int WSAAPI rb_w32_select | ( | int | nfds, |
| fd_set * | rd, | ||
| fd_set * | wr, | ||
| fd_set * | ex, | ||
| struct timeval * | timeout | ||
| ) |
Definition at line 3250 of file win32.c.
References rb_w32_select_with_thread().
| int rb_w32_select_with_thread | ( | int | nfds, |
| fd_set * | rd, | ||
| fd_set * | wr, | ||
| fd_set * | ex, | ||
| struct timeval * | timeout, | ||
| void * | th | ||
| ) |
Definition at line 3113 of file win32.c.
References EINVAL, errno, gettimeofday(), NULL, rb_fd_init(), timeval::tv_sec, and timeval::tv_usec.
Referenced by rb_w32_select().
Definition at line 3570 of file win32.c.
Referenced by rb_w32_write().
Definition at line 4390 of file win32.c.
References rb_w32_set_nonblock2(), and TRUE.
Definition at line 4359 of file win32.c.
References is_socket, and TO_SOCKET.
Referenced by rb_w32_set_nonblock().
Definition at line 3805 of file win32.c.
References RUBY_CRITICAL.
Definition at line 2706 of file win32.c.
References EADDRINUSE, EWOULDBLOCK, i, int, and sys_nerr.
Definition at line 847 of file win32.c.
Referenced by ruby_sysinit().
| UINT rb_w32_system_tmpdir | ( | WCHAR * | path, |
| UINT | len | ||
| ) |
Definition at line 3074 of file win32.c.
References timeval::tv_sec, timeval::tv_usec, and wait().
Definition at line 5926 of file win32.c.
References exit(), and tms::tms_utime.
Definition at line 5824 of file win32.c.
References EACCES, errno, path, rb_w32_ustati128(), and stat::st_mode.
Definition at line 1570 of file win32.c.
References argv, and rb_w32_uaspawn_flags().
Definition at line 1556 of file win32.c.
Referenced by rb_w32_uaspawn().
Definition at line 4911 of file win32.c.
References free, NULL, and utf8_to_wstr.
Definition at line 7489 of file win32.c.
References NULL, path, and utf8_to_wstr.
Definition at line 7610 of file win32.c.
References filecp_to_wstr, NULL, and path.
Definition at line 2179 of file win32.c.
References NULL, and utf8_to_wstr.
Definition at line 5314 of file win32.c.
References free, NULL, and utf8_to_wstr.
Definition at line 7552 of file win32.c.
References NULL, path, and utf8_to_wstr.
Definition at line 5755 of file win32.c.
Referenced by rb_w32_uaccess().
Definition at line 7388 of file win32.c.
References utimbuf::actime, AT_FDCWD, utimbuf::modtime, path, rb_w32_utimensat(), timespec::tv_nsec, and timespec::tv_sec.
Definition at line 7441 of file win32.c.
References filecp_to_wstr, NULL, and path.
Referenced by rb_w32_utime(), and rb_w32_utimes().
Definition at line 7414 of file win32.c.
References AT_FDCWD, path, rb_w32_utimensat(), timespec::tv_nsec, timeval::tv_sec, timespec::tv_sec, and timeval::tv_usec.
Definition at line 7596 of file win32.c.
References NULL, path, and utf8_to_wstr.
Definition at line 7375 of file win32.c.
References utimbuf::actime, AT_FDCWD, utimbuf::modtime, path, rb_w32_uutimensat(), timespec::tv_nsec, and timespec::tv_sec.
Definition at line 7427 of file win32.c.
References NULL, path, and utf8_to_wstr.
Referenced by rb_w32_uutime(), and rb_w32_uutimes().
Definition at line 7401 of file win32.c.
References AT_FDCWD, path, rb_w32_uutimensat(), timespec::tv_nsec, timeval::tv_sec, timespec::tv_sec, and timeval::tv_usec.
| int ruby_brace_glob_with_enc | ( | const char * | str, |
| int | flags, | ||
| ruby_glob_func * | func, | ||
| VALUE | arg, | ||
| rb_encoding * | enc | ||
| ) |
Definition at line 2646 of file dir.c.
References arg, ruby_glob_funcs_t::error, brace_args::flags, brace_args::funcs, GLOB_VERBOSE, ruby_glob_funcs_t::match, NULL, and brace_args::value.
Referenced by ruby_brace_glob().
| STATIC_ASSERT | ( | std_handle | , |
| (STD_OUTPUT_HANDLE-STD_INPUT_HANDLE) | = =(STD_ERROR_HANDLE-STD_OUTPUT_HANDLE) |
||
| ) |
Definition at line 5189 of file win32.c.
References waitpid().
Referenced by rb_w32_read(), rb_w32_time_subtract(), and rb_w32_write().
| int err |
Definition at line 135 of file win32.c.
Referenced by kill(), onig_compile_ruby(), onig_new(), ossl_raise(), rb_f_exec(), rb_f_raise(), rb_fiber_start(), rb_gc_for_fd(), rb_load_fail(), rb_mutex_unlock(), rb_notify_fd_close(), rb_range_beg_len(), rb_reg_check_preprocess(), rb_reg_match_p(), rb_reg_prepare_re(), rb_set_errinfo(), rb_threadptr_unlock_all_locking_mutexes(), rb_w32_connect(), rb_w32_pipe(), rb_w32_read(), rb_w32_write(), reg_enum_key(), reg_get_val(), reg_get_val2(), rsock_syserr_fail_host_port(), rsock_syserr_fail_path(), rsock_syserr_fail_raddrinfo(), rsock_syserr_fail_raddrinfo_or_sockaddr(), rsock_syserr_fail_sockaddr(), ruby_close(), ruby_float_step_size(), ruby_getpeername(), ruby_getsockname(), ruby_shutdown(), and sdbm_prep().
| DWORD winerr |
Definition at line 134 of file win32.c.
Referenced by rb_w32_map_errno().