Makefile.in: Rebuilt.

* Makefile.in: Rebuilt.
	* Makefile.am (libgcj_la_SOURCES): Added posix.cc.
	* java/net/natPlainSocketImpl.cc: Include posix.h.
	(accept): Use _Jv_select.
	* java/net/natPlainDatagramSocketImpl.cc: Include posix.h.
	(receive): Use _Jv_select.
	* java/io/natFileDescriptorPosix.cc: Include posix.h.
	(available): Use _Jv_select.
	* java/lang/natSystem.cc: Include posix.h.
	(currentTimeMillis): Use _Jv_gettimeofday.
	* include/posix.h: New file.
	* posix.cc: New file.

From-SVN: r35435
This commit is contained in:
Tom Tromey
2000-08-02 21:54:04 +00:00
committed by Tom Tromey
parent 2d57911678
commit f536cd95fb
9 changed files with 159 additions and 56 deletions
+3 -8
View File
@@ -10,16 +10,11 @@ details. */
#include <config.h>
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include "posix.h"
#include <errno.h>
#include <stdio.h>
#include <string.h>
#ifdef HAVE_SYS_TIME_H
#include <sys/time.h>
#endif
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/param.h>
#include <fcntl.h>
@@ -309,7 +304,7 @@ java::io::FileDescriptor::available (void)
struct timeval tv;
tv.tv_sec = 0;
tv.tv_usec = 0;
r = ::select (fd + 1, &rd, NULL, NULL, &tv);
r = _Jv_select (fd + 1, &rd, NULL, NULL, &tv);
if (r == -1)
goto posix_error;
num = r == 0 ? 0 : 1;
+3 -29
View File
@@ -11,16 +11,9 @@ details. */
#include <config.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#ifdef HAVE_SYS_TIME_H
#include <sys/time.h>
#endif
#include "posix.h"
#ifdef HAVE_PWD_H
#include <pwd.h>
@@ -48,10 +41,6 @@ extern java::lang::Class SystemClass;
#if defined (ECOS)
extern "C" unsigned long long _clock (void);
#endif
void
java::lang::System::setErr (java::io::PrintStream *newErr)
{
@@ -152,24 +141,9 @@ java::lang::System::currentTimeMillis (void)
{
jlong r;
#if defined (HAVE_GETTIMEOFDAY)
struct timeval tv;
gettimeofday (&tv, NULL);
r = (jlong) tv.tv_sec * 1000 + tv.tv_usec / 1000;
#elif defined (HAVE_TIME)
r = time (NULL) * 1000;
#elif defined (HAVE_FTIME)
struct timeb t;
ftime (&t);
r = t.time * 1000 + t.millitm;
#elif defined (ECOS)
r = _clock();
#else
// In the absence of any function, time remains forever fixed.
r = 23;
#endif
return r;
_Jv_gettimeofday (&tv);
return (jlong) tv.tv_sec * 1000 + tv.tv_usec / 1000;
}
jint
@@ -17,16 +17,10 @@ details. */
#define ENOPROTOOPT 109
#endif
#else /* USE_WINSOCK */
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#include "posix.h"
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#endif
#include <sys/time.h>
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
@@ -314,7 +308,7 @@ java::net::PlainDatagramSocketImpl::receive (java::net::DatagramPacket *p)
tv.tv_sec = timeout / 1000;
tv.tv_usec = (timeout % 1000) * 1000;
int retval;
if ((retval = select (fnum + 1, &rset, NULL, NULL, &tv)) < 0)
if ((retval = _Jv_select (fnum + 1, &rset, NULL, NULL, &tv)) < 0)
goto error;
else if (retval == 0)
JvThrow (new java::io::InterruptedIOException ());
+3 -7
View File
@@ -1,4 +1,4 @@
/* Copyright (C) 1998, 1999 Free Software Foundation
/* Copyright (C) 1998, 1999, 2000 Free Software Foundation
This file is part of libgcj.
@@ -19,12 +19,8 @@ details. */
#define ENOPROTOOPT 109
#endif
#else /* USE_WINSOCK */
#include <sys/types.h>
#include "posix.h"
#include <sys/socket.h>
#include <sys/time.h>
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
#endif
#include <netinet/in.h>
#include <netinet/tcp.h>
#include <errno.h>
@@ -249,7 +245,7 @@ java::net::PlainSocketImpl::accept (java::net::PlainSocketImpl *s)
tv.tv_sec = timeout / 1000;
tv.tv_usec = (timeout % 1000) * 1000;
int retval;
if ((retval = select (fnum + 1, &rset, NULL, NULL, &tv)) < 0)
if ((retval = _Jv_select (fnum + 1, &rset, NULL, NULL, &tv)) < 0)
goto error;
else if (retval == 0)
JvThrow (new java::io::InterruptedIOException (