diff options
| author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-11-21 10:08:03 +0000 |
|---|---|---|
| committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-11-21 10:08:03 +0000 |
| commit | 1edcff7525229355222c64a55e84f0c03baca563 (patch) | |
| tree | 795095557dd4555cce7687419b819d95b30d4b74 /libjava/include | |
| parent | 6c70d22bcd19532592fd7e29b0c9345cba060e44 (diff) | |
| download | ppe42-gcc-1edcff7525229355222c64a55e84f0c03baca563.tar.gz ppe42-gcc-1edcff7525229355222c64a55e84f0c03baca563.zip | |
2002-11-21 Michael Koch <konqueror@gmx.de>
* include/posix.h
(_Jv_socket): New method.
(_Jv_connect): New method.
(_Jv_close): New method.
(_Jv_platform_close_on_exec): Prefixed system function with "::".
(_Jv_bind): New method.
(_Jv_listen): New method.
(_Jv_write): New method.
(_Jv_read): New method.
* include/win32.h
(_Jv_socket): New method.
(_Jv_connect): New method.
(_Jv_close): New method.
(_Jv_bind): New method.
(_Jv_listen): New method.
(_Jv_write): New method.
(_Jv_read): New method.
* java/net/natNetworkInterface.cc:
Include platform.h, removed inclusion of socket.h
(getRealNetworkInterfaces): Replaced ::socket() by _Jv_socket() and
::close() by _Jv_close().
* java/net/natPlainDatagramSocketImpl.cc:
Removed include of socket.h, definition of NATIVE_CLOSE and _Jv_bind,
added some new lines to make code more readable.
(create): Replaced ::socket() by _Jv_socket().
(close): Replaced NATIVE_CLOSE() by _Jv_close().
* java/net/natPlainSocketImpl.cc:
Removed definition of NATIVE_CLOSE, _Jv_bind, Jv_connect and _Jv_accept,
removed include of socket.h, removed some windows defines
(now in include/win32.h).
(create): Replaced ::socket() by _Jv_socket().
(close): Replaced NATIVE_CLOSE() by _Jv_close().
(write): Replaced ::read by _Jv_write().
(read): Replaced ::read by _Jv_read().
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59338 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
| -rw-r--r-- | libjava/include/posix.h | 56 | ||||
| -rw-r--r-- | libjava/include/win32.h | 55 |
2 files changed, 110 insertions, 1 deletions
diff --git a/libjava/include/posix.h b/libjava/include/posix.h index 8fa782fc662..975b93c56f4 100644 --- a/libjava/include/posix.h +++ b/libjava/include/posix.h @@ -27,6 +27,10 @@ details. */ #include <sys/select.h> #endif +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif + #ifdef HAVE_UNISTD_H #include <unistd.h> #endif @@ -41,11 +45,61 @@ extern jlong _Jv_platform_gettimeofday (); extern void _Jv_platform_initialize (void); extern void _Jv_platform_initProperties (java::util::Properties*); +static inline int +_Jv_socket (int domain, int type, int protocol) +{ + return ::socket (domain, type, protocol); +} + +inline int +_Jv_connect (jint fd, sockaddr *ptr, int len) +{ + return ::connect (fd, ptr, len); +} + +inline int +_Jv_close (jint fd) +{ + return ::close (fd); +} + inline void _Jv_platform_close_on_exec (jint fd) { // Ignore errors. - fcntl (fd, F_SETFD, FD_CLOEXEC); + ::fcntl (fd, F_SETFD, FD_CLOEXEC); } +// Avoid macro definitions of bind from system headers, e.g. on +// Solaris 7 with _XOPEN_SOURCE. FIXME +inline int +_Jv_bind (int fd, struct sockaddr *addr, int addrlen) +{ + return ::bind (fd, addr, addrlen); +} + +// Same problem with accept on Tru64 UNIX with _POSIX_PII_SOCKET +inline int +_Jv_accept (int fd, struct sockaddr *addr, socklen_t *addrlen) +{ + return ::accept (fd, addr, addrlen); +} + +inline int +_Jv_listen (int fd, int backlog) +{ + return ::listen (fd, backlog); +} + +inline int +_Jv_write(int s, void *buf, int len) +{ + return ::write (s, buf, len); +} + +inline int +_Jv_read(int s, void *buf, int len) +{ + return ::read (s, buf, len); +} #endif diff --git a/libjava/include/win32.h b/libjava/include/win32.h index a035cfc5c13..3965cb2575f 100644 --- a/libjava/include/win32.h +++ b/libjava/include/win32.h @@ -22,16 +22,71 @@ details. */ #include <io.h> +// these errors cannot occur on Win32 +#define ENOTCONN 0 +#define ECONNRESET 0 + +#ifndef ENOPROTOOPT +#define ENOPROTOOPT 109 +#endif + extern void _Jv_platform_initialize (void); extern void _Jv_platform_initProperties (java::util::Properties*); extern jlong _Jv_platform_gettimeofday (); +static inline int +_Jv_socket (int domain, int type, int protocol) +{ + return ::socket (domain, type, protocol); +} + +inline int +_Jv_connect (jint fd, sockaddr *ptr, int len) +{ + return ::connect (fd, ptr, len); +} + +inline int +_Jv_close (jint fd) +{ + return ::closesocket (fd); +} + inline void _Jv_platform_close_on_exec (jint) { // Ignore. } +inline int +_Jv_bind (int fd, struct sockaddr *addr, int addrlen) +{ + return ::bind (fd, addr, addrlen); +} + +inline int +_Jv_accept (int fd, struct sockaddr *addr, socklen_t *addrlen) +{ + return ::accept (fd, addr, addrlen); +} + +inline int +_Jv_listen (int fd, int backlog) +{ + return ::listen (fd, backlog); +} + +inline int +_Jv_write(int s, void *buf, int len) +{ + return ::send (s, (char*) buf, len, 0); +} + +inline int +_Jv_read(int s, void *buf, int len) +{ + return ::recv (s, (char*) buf, len, 0); +} #define HAVE_BACKTRACE /* Store up to SIZE return address of the current program state in |

