+2001-07-30 Jeff Sturm <jsturm@one-point.com>
+
+ * java/net/natPlainDatagramSocketImpl.cc: Undefine bind if defined.
+ (_Jv_bind): New static function.
+ (bind): Use _Jv_bind.
+ * java/net/natPlainSocketImpl.cc: Undefine bind, connect if defined.
+ (_Jv_bind, _Jv_connect): New static functions.
+ (bind): Use _Jv_bind.
+ (connect): Use _Jv_connect.
+
2001-07-30 Tom Tromey <tromey@redhat.com>
Corey Minyard <minyard@acm.org>
#include <bstring.h>
#endif
+// Avoid macro definitions of bind from system headers, e.g. on
+// Solaris 7 with _XOPEN_SOURCE. FIXME
+static inline int
+_Jv_bind (int fd, struct sockaddr *addr, int addrlen)
+{
+ return ::bind (fd, addr, addrlen);
+}
+
+#ifdef bind
+#undef bind
+#endif
+
#include <gcj/cni.h>
#include <java/io/IOException.h>
#include <java/io/FileDescriptor.h>
else
throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
- if (::bind (fnum, ptr, len) == 0)
+ if (_Jv_bind (fnum, ptr, len) == 0)
{
socklen_t addrlen = sizeof(u);
if (lport != 0)
#include <bstring.h>
#endif
+// Avoid macro definitions of bind, connect from system headers, e.g. on
+// Solaris 7 with _XOPEN_SOURCE. FIXME
+static inline int
+_Jv_bind (int fd, struct sockaddr *addr, int addrlen)
+{
+ return ::bind (fd, addr, addrlen);
+}
+
+#ifdef bind
+#undef bind
+#endif
+
+static inline int
+_Jv_connect (int fd, struct sockaddr *addr, int addrlen)
+{
+ return ::connect (fd, addr, addrlen);
+}
+
+#ifdef connect
+#undef connect
+#endif
+
#include <gcj/cni.h>
#include <gcj/javaprims.h>
#include <java/io/IOException.h>
// Enable SO_REUSEADDR, so that servers can reuse ports left in TIME_WAIT.
::setsockopt(fnum, SOL_SOCKET, SO_REUSEADDR, (char *) &i, sizeof(i));
- if (::bind (fnum, ptr, len) == 0)
+ if (_Jv_bind (fnum, ptr, len) == 0)
{
address = host;
socklen_t addrlen = sizeof(u);
else
throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
- if (::connect (fnum, ptr, len) != 0)
+ if (_Jv_connect (fnum, ptr, len) != 0)
goto error;
address = host;
port = rport;