From 2569c82cdb60e344145a636062259dadd6bbba10 Mon Sep 17 00:00:00 2001 From: Geoff Voelker Date: Fri, 3 May 1996 18:29:10 +0000 Subject: Initial revision --- nt/inc/arpa/inet.h | 1 + nt/inc/netdb.h | 1 + nt/inc/netinet/in.h | 1 + nt/inc/sys/socket.h | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++ nt/inc/sys/time.h | 18 ++++++++ nt/inc/unistd.h | 1 + 6 files changed, 141 insertions(+) create mode 100644 nt/inc/arpa/inet.h create mode 100644 nt/inc/netdb.h create mode 100644 nt/inc/netinet/in.h create mode 100644 nt/inc/sys/socket.h create mode 100644 nt/inc/sys/time.h create mode 100644 nt/inc/unistd.h (limited to 'nt/inc') diff --git a/nt/inc/arpa/inet.h b/nt/inc/arpa/inet.h new file mode 100644 index 00000000000..f5d197c06e1 --- /dev/null +++ b/nt/inc/arpa/inet.h @@ -0,0 +1 @@ +/* null version of - has everything */ diff --git a/nt/inc/netdb.h b/nt/inc/netdb.h new file mode 100644 index 00000000000..5bf232e7f5c --- /dev/null +++ b/nt/inc/netdb.h @@ -0,0 +1 @@ +/* null version of - has everything */ diff --git a/nt/inc/netinet/in.h b/nt/inc/netinet/in.h new file mode 100644 index 00000000000..46fb0faccea --- /dev/null +++ b/nt/inc/netinet/in.h @@ -0,0 +1 @@ +/* null version of - has everything */ diff --git a/nt/inc/sys/socket.h b/nt/inc/sys/socket.h new file mode 100644 index 00000000000..4ea1e44cd12 --- /dev/null +++ b/nt/inc/sys/socket.h @@ -0,0 +1,119 @@ +/* Workable version of based on winsock.h */ + +#ifndef _SOCKET_H_ +#define _SOCKET_H_ + +/* defeat the multiple include protection */ +#ifdef _WINSOCKAPI_ +#undef _WINSOCKAPI_ +#endif + +/* avoid confusion with our version of select */ +#ifdef select +#undef select +#define MUST_REDEF_SELECT +#endif + +/* avoid clashing with our version of FD_SET if already defined */ +#ifdef FD_SET +#undef FD_SET +#undef FD_CLR +#undef FD_ISSET +#undef FD_ZERO +#endif + +/* allow us to provide our own version of fd_set */ +#define fd_set ws_fd_set + +/* avoid duplicate definition of timeval */ +#ifdef HAVE_TIMEVAL +#define timeval ws_timeval +#endif + +#include + +/* redefine select to reference our version */ +#ifdef MUST_REDEF_SELECT +#define select sys_select +#undef MUST_REDEF_SELECT +#endif + +/* revert to our version of FD_SET */ +#undef FD_SET +#undef FD_CLR +#undef FD_ISSET +#undef FD_ZERO +#undef fd_set +#include "nt.h" + +#ifdef HAVE_TIMEVAL +#undef timeval +#endif + +/* shadow functions where we provide our own wrapper */ +#define socket sys_socket +#define bind sys_bind +#define connect sys_connect +#define htons sys_htons +#define ntohs sys_ntohs +#define inet_addr sys_inet_addr +#define gethostname sys_gethostname +#define gethostbyname sys_gethostbyname +#define getservbyname sys_getservbyname + +int sys_socket(int af, int type, int protocol); +int sys_bind (int s, const struct sockaddr *addr, int namelen); +int sys_connect (int s, const struct sockaddr *addr, int namelen); +u_short sys_htons (u_short hostshort); +u_short sys_ntohs (u_short netshort); +unsigned long sys_inet_addr (const char * cp); +int sys_gethostname (char * name, int namelen); +struct hostent * sys_gethostbyname(const char * name); +struct servent * sys_getservbyname(const char * name, const char * proto); + +/* we are providing a real h_errno variable */ +#undef h_errno +extern int h_errno; + +/* map winsock error codes to standard names */ +#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 + +#endif /* _SOCKET_H_ */ + +/* end of socket.h */ diff --git a/nt/inc/sys/time.h b/nt/inc/sys/time.h new file mode 100644 index 00000000000..dc270998609 --- /dev/null +++ b/nt/inc/sys/time.h @@ -0,0 +1,18 @@ +/* + * sys/time.h doesn't exist on NT + */ + +struct timeval + { + long tv_sec; /* seconds */ + long tv_usec; /* microseconds */ + }; +struct timezone + { + int tz_minuteswest; /* minutes west of Greenwich */ + int tz_dsttime; /* type of dst correction */ + }; + +void gettimeofday (struct timeval *, struct timezone *); + +/* end of sys/time.h */ diff --git a/nt/inc/unistd.h b/nt/inc/unistd.h new file mode 100644 index 00000000000..c1caa77a697 --- /dev/null +++ b/nt/inc/unistd.h @@ -0,0 +1 @@ +/* Fake unistd.h: config.h already provides most of the relevant things. */ -- cgit v1.2.1