diff options
Diffstat (limited to 'ruby_1_8_6/win32/win32.h')
-rw-r--r-- | ruby_1_8_6/win32/win32.h | 560 |
1 files changed, 0 insertions, 560 deletions
diff --git a/ruby_1_8_6/win32/win32.h b/ruby_1_8_6/win32/win32.h deleted file mode 100644 index d3cd0ee21c..0000000000 --- a/ruby_1_8_6/win32/win32.h +++ /dev/null @@ -1,560 +0,0 @@ -#ifndef RUBY_WIN32_H -#define RUBY_WIN32_H - -/* - * Copyright (c) 1993, Intergraph Corporation - * - * You may distribute under the terms of either the GNU General Public - * License or the Artistic License, as specified in the perl README file. - * - */ - -// -// Definitions for NT port of Perl -// - - -// -// Ok now we can include the normal include files. -// - -// #include <stdarg.h> conflict with varargs.h? -// There is function-name conflitct, so we rename it -#if !defined(IN) && !defined(FLOAT) -#define OpenFile WINAPI_OpenFile -#ifdef __BORLANDC__ -#define USE_WINSOCK2 -#endif -#ifdef USE_WINSOCK2 -#include <winsock2.h> -#include <ws2tcpip.h> -#include <windows.h> -#else -#include <windows.h> -#include <winsock.h> -#endif -#undef OpenFile -#endif - -#define NT 1 /* deprecated */ - -#ifdef _WIN32_WCE -#undef CharNext -#define CharNext CharNextA -#endif - -// -// We're not using Microsoft's "extensions" to C for -// Structured Exception Handling (SEH) so we can nuke these -// -#undef try -#undef except -#undef finally -#undef leave - -#if defined(__cplusplus) -extern "C++" { -#endif - -#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> -#if !defined(__BORLANDC__) -# include <sys/utime.h> -#else -# include <utime.h> -#endif -#include <io.h> -#include <malloc.h> - -#if defined(__cplusplus) -} -#endif - -#ifdef _M_IX86 -# define WIN95 1 -#else -# undef WIN95 -#endif - -#ifdef WIN95 -extern DWORD rb_w32_osid(void); -#define rb_w32_iswinnt() (rb_w32_osid() == VER_PLATFORM_WIN32_NT) -#define rb_w32_iswin95() (rb_w32_osid() == VER_PLATFORM_WIN32_WINDOWS) -#else -#define rb_w32_iswinnt() TRUE -#define rb_w32_iswin95() FALSE -#endif - -#define WNOHANG -1 - -#undef getc -#undef putc -#undef fgetc -#undef fputc -#undef getchar -#undef putchar -#undef fgetchar -#undef fputchar -#undef utime -#define getc(_stream) rb_w32_getc(_stream) -#define putc(_c, _stream) rb_w32_putc(_c, _stream) -#define fgetc(_stream) getc(_stream) -#define fputc(_c, _stream) putc(_c, _stream) -#define getchar() rb_w32_getc(stdin) -#define putchar(_c) rb_w32_putc(_c, stdout) -#define fgetchar() getchar() -#define fputchar(_c) putchar(_c) -#define utime(_p, _t) rb_w32_utime(_p, _t) - -#define strcasecmp(s1, s2) stricmp(s1, s2) -#define strncasecmp(s1, s2, n) strnicmp(s1, s2, n) - -#define close(h) rb_w32_close(h) -#define fclose(f) rb_w32_fclose(f) -#define read(f, b, s) rb_w32_read(f, b, s) -#define write(f, b, s) rb_w32_write(f, b, s) -#define getpid() rb_w32_getpid() -#define sleep(x) rb_w32_sleep((x)*1000) -#ifdef __BORLANDC__ -#define creat(p, m) _creat(p, m) -#define eof() _eof() -#define filelength(h) _filelength(h) -#define mktemp(t) _mktemp(t) -#define tell(h) _tell(h) -#define unlink(p) _unlink(p) -#define _open _sopen -#define sopen _sopen -#undef fopen -#define fopen(p, m) rb_w32_fopen(p, m) -#undef fdopen -#define fdopen(h, m) rb_w32_fdopen(h, m) -#undef fsopen -#define fsopen(p, m, sh) rb_w32_fsopen(p, m, sh) -#endif -#define fsync(h) _commit(h) -#undef stat -#define stat(path,st) rb_w32_stat(path,st) -#undef execv -#define execv(path,argv) do_aspawn(P_OVERLAY,path,argv) -#if !defined(__BORLANDC__) && !defined(_WIN32_WCE) -#undef isatty -#define isatty(h) rb_w32_isatty(h) -#endif -#undef mkdir -#define mkdir(p, m) rb_w32_mkdir(p, m) -#undef rmdir -#define rmdir(p) rb_w32_rmdir(p) -#undef unlink -#define unlink(p) rb_w32_unlink(p) - -#ifdef __MINGW32__ -struct timezone { - int tz_minuteswest; - int tz_dsttime; -}; -#undef isascii -#define isascii __isascii -#endif -extern void NtInitialize(int *, char ***); -extern int rb_w32_cmdvector(const char *, char ***); -extern rb_pid_t pipe_exec(char *, int, FILE **, FILE **); -extern int flock(int fd, int oper); -extern int rb_w32_accept(int, struct sockaddr *, int *); -extern int rb_w32_bind(int, struct sockaddr *, int); -extern int rb_w32_connect(int, struct sockaddr *, int); -extern void rb_w32_fdset(int, fd_set*); -extern void rb_w32_fdclr(int, fd_set*); -extern int rb_w32_fdisset(int, fd_set*); -extern long rb_w32_select(int, fd_set *, fd_set *, fd_set *, struct timeval *); -extern int rb_w32_getpeername(int, struct sockaddr *, int *); -extern int rb_w32_getsockname(int, struct sockaddr *, int *); -extern int rb_w32_getsockopt(int, int, int, char *, int *); -extern int rb_w32_ioctlsocket(int, long, u_long *); -extern int rb_w32_listen(int, int); -extern int rb_w32_recv(int, char *, int, int); -extern int rb_w32_recvfrom(int, char *, int, int, struct sockaddr *, int *); -extern int rb_w32_send(int, const char *, int, int); -extern int rb_w32_sendto(int, const char *, int, int, struct sockaddr *, int); -extern int rb_w32_setsockopt(int, int, int, char *, int); -extern int rb_w32_shutdown(int, int); -extern int rb_w32_socket(int, int, int); -extern SOCKET rb_w32_get_osfhandle(int); -extern struct hostent * rb_w32_gethostbyaddr(char *, int, int); -extern struct hostent * rb_w32_gethostbyname(char *); -extern int rb_w32_gethostname(char *, int); -extern struct protoent * rb_w32_getprotobyname(char *); -extern struct protoent * rb_w32_getprotobynumber(int); -extern struct servent * rb_w32_getservbyname(char *, char *); -extern struct servent * rb_w32_getservbyport(int, char *); -extern char * rb_w32_getcwd(char *, int); -extern char * rb_w32_getenv(const char *); -extern int rb_w32_rename(const char *, const char *); -extern int rb_w32_stat(const char *, struct stat *); -extern char **rb_w32_get_environ(void); -extern void rb_w32_free_environ(char **); - -#define vsnprintf(s,n,f,l) rb_w32_vsnprintf(s,n,f,l) -#define snprintf rb_w32_snprintf -extern int rb_w32_vsnprintf(char *, size_t, const char *, va_list); -extern int rb_w32_snprintf(char *, size_t, const char *, ...); - -extern int chown(const char *, int, int); -extern int link(char *, char *); -extern int gettimeofday(struct timeval *, struct timezone *); -extern rb_pid_t waitpid (rb_pid_t, int *, int); -extern int do_spawn(int, char *); -extern int do_aspawn(int, char *, char **); -extern int kill(int, int); -extern int fcntl(int, int, ...); -extern rb_pid_t rb_w32_getpid(void); - -#if !defined(__BORLANDC__) && !defined(_WIN32_WCE) -extern int rb_w32_isatty(int); -#endif -extern int rb_w32_mkdir(const char *, int); -extern int rb_w32_rmdir(const char *); -extern int rb_w32_unlink(const char*); - -#ifdef __BORLANDC__ -extern FILE *rb_w32_fopen(const char *, const char *); -extern FILE *rb_w32_fdopen(int, const char *); -extern FILE *rb_w32_fsopen(const char *, const char *, int); -#endif - -#include <float.h> -#if !defined __MINGW32__ || defined __NO_ISOCEXT -#ifndef isnan -#define isnan(x) _isnan(x) -#endif -#ifndef finite -#define finite(x) _finite(x) -#endif -#ifndef copysign -#define copysign(a, b) _copysign(a, b) -#endif -#ifndef scalb -#define scalb(a, b) _scalb(a, b) -#endif -#endif - -#if !defined S_IFIFO && defined _S_IFIFO -#define S_IFIFO _S_IFIFO -#endif - -#ifdef __BORLANDC__ -#undef S_ISDIR -#undef S_ISFIFO -#undef S_ISBLK -#undef S_ISCHR -#undef S_ISREG -#define S_ISDIR(m) (((unsigned short)(m) & S_IFMT) == S_IFDIR) -#define S_ISFIFO(m) (((unsigned short)(m) & S_IFMT) == S_IFIFO) -#define S_ISBLK(m) (((unsigned short)(m) & S_IFMT) == S_IFBLK) -#define S_ISCHR(m) (((unsigned short)(m) & S_IFMT) == S_IFCHR) -#define S_ISREG(m) (((unsigned short)(m) & S_IFMT) == S_IFREG) -#endif - -#if !defined S_IRUSR && !defined __MINGW32__ -#define S_IRUSR 0400 -#endif -#ifndef S_IRGRP -#define S_IRGRP 0040 -#endif -#ifndef S_IROTH -#define S_IROTH 0004 -#endif - -#if !defined S_IWUSR && !defined __MINGW32__ -#define S_IWUSR 0200 -#endif -#ifndef S_IWGRP -#define S_IWGRP 0020 -#endif -#ifndef S_IWOTH -#define S_IWOTH 0002 -#endif - -#if !defined S_IXUSR && !defined __MINGW32__ -#define S_IXUSR 0100 -#endif -#ifndef S_IXGRP -#define S_IXGRP 0010 -#endif -#ifndef S_IXOTH -#define S_IXOTH 0001 -#endif - -// -// define this so we can do inplace editing -// - -#define SUFFIX - -// -// stubs -// -#if !defined(__BORLANDC__) -extern int ioctl (int, unsigned int, long); -#endif -extern rb_uid_t getuid (void); -extern rb_uid_t geteuid (void); -extern rb_gid_t getgid (void); -extern rb_gid_t getegid (void); -extern int setuid (rb_uid_t); -extern int setgid (rb_gid_t); - -extern char *rb_w32_strerror(int); - -#define strerror(e) rb_w32_strerror(e) - -#define PIPE_BUF 1024 - -#define LOCK_SH 1 -#define LOCK_EX 2 -#define LOCK_NB 4 -#define LOCK_UN 8 - - -#ifndef SIGINT -#define SIGINT 2 -#endif -#ifndef SIGKILL -#define SIGKILL 9 -#endif - - -/* #undef va_start */ -/* #undef va_end */ - -/* winsock error map */ -#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 ENAMETOOLONG WSAENAMETOOLONG*/ -#define EHOSTDOWN WSAEHOSTDOWN -#define EHOSTUNREACH WSAEHOSTUNREACH -/*#define ENOTEMPTY WSAENOTEMPTY*/ -#define EPROCLIM WSAEPROCLIM -#define EUSERS WSAEUSERS -#define EDQUOT WSAEDQUOT -#define ESTALE WSAESTALE -#define EREMOTE WSAEREMOTE - -#define F_SETFL 1 -#define O_NONBLOCK 1 - -#ifdef accept -#undef accept -#endif -#define accept(s, a, l) rb_w32_accept(s, a, l) - -#ifdef bind -#undef bind -#endif -#define bind(s, a, l) rb_w32_bind(s, a, l) - -#ifdef connect -#undef connect -#endif -#define connect(s, a, l) rb_w32_connect(s, a, l) - -#undef FD_SET -#define FD_SET(f, s) rb_w32_fdset(f, s) - -#undef FD_CLR -#define FD_CLR(f, s) rb_w32_fdclr(f, s) - -#undef FD_ISSET -#define FD_ISSET(f, s) rb_w32_fdisset(f, s) - -#undef select -#define select(n, r, w, e, t) rb_w32_select(n, r, w, e, t) - -#ifdef getpeername -#undef getpeername -#endif -#define getpeername(s, a, l) rb_w32_getpeername(s, a, l) - -#ifdef getsockname -#undef getsockname -#endif -#define getsockname(s, a, l) rb_w32_getsockname(s, a, l) - -#ifdef getsockopt -#undef getsockopt -#endif -#define getsockopt(s, v, n, o, l) rb_w32_getsockopt(s, v, n, o, l) - -#ifdef ioctlsocket -#undef ioctlsocket -#endif -#define ioctlsocket(s, c, a) rb_w32_ioctlsocket(s, c, a) - -#ifdef listen -#undef listen -#endif -#define listen(s, b) rb_w32_listen(s, b) - -#ifdef recv -#undef recv -#endif -#define recv(s, b, l, f) rb_w32_recv(s, b, l, f) - -#ifdef recvfrom -#undef recvfrom -#endif -#define recvfrom(s, b, l, f, fr, frl) rb_w32_recvfrom(s, b, l, f, fr, frl) - -#ifdef send -#undef send -#endif -#define send(s, b, l, f) rb_w32_send(s, b, l, f) - -#ifdef sendto -#undef sendto -#endif -#define sendto(s, b, l, f, t, tl) rb_w32_sendto(s, b, l, f, t, tl) - -#ifdef setsockopt -#undef setsockopt -#endif -#define setsockopt(s, v, n, o, l) rb_w32_setsockopt(s, v, n, o, l) - -#ifdef shutdown -#undef shutdown -#endif -#define shutdown(s, h) rb_w32_shutdown(s, h) - -#ifdef socket -#undef socket -#endif -#define socket(s, t, p) rb_w32_socket(s, t, p) - -#ifdef gethostbyaddr -#undef gethostbyaddr -#endif -#define gethostbyaddr(a, l, t) rb_w32_gethostbyaddr(a, l, t) - -#ifdef gethostbyname -#undef gethostbyname -#endif -#define gethostbyname(n) rb_w32_gethostbyname(n) - -#ifdef gethostname -#undef gethostname -#endif -#define gethostname(n, l) rb_w32_gethostname(n, l) - -#ifdef getprotobyname -#undef getprotobyname -#endif -#define getprotobyname(n) rb_w32_getprotobyname(n) - -#ifdef getprotobynumber -#undef getprotobynumber -#endif -#define getprotobynumber(n) rb_w32_getprotobynumber(n) - -#ifdef getservbyname -#undef getservbyname -#endif -#define getservbyname(n, p) rb_w32_getservbyname(n, p) - -#ifdef getservbyport -#undef getservbyport -#endif -#define getservbyport(p, pr) rb_w32_getservbyport(p, pr) - -#ifdef get_osfhandle -#undef get_osfhandle -#endif -#define get_osfhandle(h) rb_w32_get_osfhandle(h) - -#ifdef getcwd -#undef getcwd -#endif -#define getcwd(b, s) rb_w32_getcwd(b, s) - -#ifdef getenv -#undef getenv -#endif -#define getenv(n) rb_w32_getenv(n) - -#ifdef rename -#undef rename -#endif -#define rename(o, n) rb_w32_rename(o, n) - -struct tms { - long tms_utime; - long tms_stime; - long tms_cutime; - long tms_cstime; -}; - -#ifdef times -#undef times -#endif -#define times(t) rb_w32_times(t) -int rb_w32_times(struct tms *); - -/* thread stuff */ -HANDLE GetCurrentThreadHandle(void); -void rb_w32_interrupted(void); -int rb_w32_main_context(int arg, void (*handler)(int)); -int rb_w32_sleep(unsigned long msec); -void rb_w32_enter_critical(void); -void rb_w32_leave_critical(void); -int rb_w32_putc(int, FILE*); -int rb_w32_getc(FILE*); -int rb_w32_close(int); -int rb_w32_fclose(FILE*); -size_t rb_w32_read(int, void *, size_t); -size_t rb_w32_write(int, const void *, size_t); -int rb_w32_utime(const char *, struct utimbuf *); -#define Sleep(msec) (void)rb_w32_sleep(msec) - -/* -== ***CAUTION*** -Since this function is very dangerous, ((*NEVER*)) -* lock any HANDLEs(i.e. Mutex, Semaphore, CriticalSection and so on) or, -* use anything like TRAP_BEG...TRAP_END block structure, -in asynchronous_func_t. -*/ -typedef DWORD (*asynchronous_func_t)(DWORD self, int argc, DWORD* argv); -DWORD rb_w32_asynchronize(asynchronous_func_t func, DWORD self, int argc, DWORD* argv, DWORD intrval); - -#endif |