natPlainSocketImpl.cc (bind): Don't go to error case when errno not set.
authorTom Tromey <tromey@cygnus.com>
Fri, 11 Aug 2000 03:07:59 +0000 (03:07 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Fri, 11 Aug 2000 03:07:59 +0000 (03:07 +0000)
* java/net/natPlainSocketImpl.cc (bind): Don't go to error case
when errno not set.
(connect): Likewise.
(accept): Likewise.
(getOption): Likewise.
* java/net/natPlainDatagramSocketImpl.cc (bind): Don't go to error
case when errno not set.
(peek): Likewise.
(send): Likewise.
(receive): Likewise.
(mcastGrp): Likewise.
(setOption): Likewise.
(getOption): Likewise.

From-SVN: r35617

libjava/ChangeLog
libjava/java/net/natPlainDatagramSocketImpl.cc
libjava/java/net/natPlainSocketImpl.cc

index f13627296d7b936038b4bff31a628b283a9ec9c0..8d3756fa3a4b579caa139dbe69c85f84158d03dd 100644 (file)
@@ -1,3 +1,19 @@
+2000-08-10  Tom Tromey  <tromey@cygnus.com>
+
+       * java/net/natPlainSocketImpl.cc (bind): Don't go to error case
+       when errno not set.
+       (connect): Likewise.
+       (accept): Likewise.
+       (getOption): Likewise.
+       * java/net/natPlainDatagramSocketImpl.cc (bind): Don't go to error
+       case when errno not set.
+       (peek): Likewise.
+       (send): Likewise.
+       (receive): Likewise.
+       (mcastGrp): Likewise.
+       (setOption): Likewise.
+       (getOption): Likewise.
+
 2000-08-10  Bryce McKinlay  <bryce@albatross.co.nz>
            John Stracke <francis@ecal.com>
 
index fe83b1053f6c0db26a6b44176d07ed6d8d7ee28e..2fac17ed8286b666aecf2b559f200ff418fa4080 100644 (file)
@@ -199,7 +199,8 @@ java::net::PlainDatagramSocketImpl::bind (jint lport,
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
+
   if (::bind (fnum, ptr, len) == 0)
     {
       socklen_t addrlen = sizeof(u);
@@ -245,7 +246,8 @@ java::net::PlainDatagramSocketImpl::peek (java::net::InetAddress *i)
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid family"));
+
   i->address = raddr;
   return rport;
  error:
@@ -281,7 +283,8 @@ java::net::PlainDatagramSocketImpl::send (java::net::DatagramPacket *p)
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
+
   if (::sendto (fnum, (char *) dbytes, p->getLength(), 0, ptr, len) >= 0)
     return;
  error:
@@ -337,7 +340,8 @@ java::net::PlainDatagramSocketImpl::receive (java::net::DatagramPacket *p)
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid family"));
+
   p->setAddress (new InetAddress (raddr, NULL));
   p->setPort (rport);
   p->setLength ((jint) retlen);
@@ -412,7 +416,8 @@ java::net::PlainDatagramSocketImpl::mcastGrp (java::net::InetAddress *inetaddr,
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
+
   if (::setsockopt (fnum, level, opname, ptr, len) == 0)
     return;
  error:
@@ -507,7 +512,9 @@ java::net::PlainDatagramSocketImpl::setOption (jint optID,
          }
 #endif
        else
-         goto error;
+         throw
+           new java::net::SocketException (JvNewStringUTF ("invalid length"));
+
        if (::setsockopt (fnum, level, opname, ptr, len) != 0)
          goto error;
         return;
@@ -576,7 +583,7 @@ java::net::PlainDatagramSocketImpl::getOption (jint optID)
              }
 #endif
            else
-             goto error;
+             throw new java::net::SocketException (JvNewStringUTF ("invalid family"));
            localAddress = new java::net::InetAddress (laddr, NULL);
          }
        return localAddress;  
index 18fd74ba447e03bb995b5552c2beba91b22a2a82..66cbf97db1b64d1b8487f8fb3e276399d0661a52 100644 (file)
@@ -153,7 +153,7 @@ java::net::PlainSocketImpl::bind (java::net::InetAddress *host, jint lport)
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
 
   // Enable SO_REUSEADDR, so that servers can reuse ports left in TIME_WAIT.
   ::setsockopt(fnum, SOL_SOCKET, SO_REUSEADDR, (char *) &i, sizeof(i));
@@ -201,17 +201,20 @@ java::net::PlainSocketImpl::connect (java::net::InetAddress *host, jint rport)
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid length"));
+
   if (::connect (fnum, ptr, len) != 0)
     goto error;
   address = host;
   port = rport;
   // A bind may not have been done on this socket; if so, set localport now.
   if (localport == 0)
-    if (::getsockname (fnum, (sockaddr*) &u, &addrlen) == 0)
-      localport = ntohs (u.address.sin_port);
-    else
-      goto error;
+    {
+      if (::getsockname (fnum, (sockaddr*) &u, &addrlen) == 0)
+       localport = ntohs (u.address.sin_port);
+      else
+       goto error;
+    }
   return;  
  error:
   char* strerr = strerror (errno);
@@ -272,7 +275,8 @@ java::net::PlainSocketImpl::accept (java::net::PlainSocketImpl *s)
     }
 #endif
   else
-    goto error;
+    throw new java::net::SocketException (JvNewStringUTF ("invalid family"));
+
   s->fnum = new_socket;
   s->localport = localport;
   s->address = new InetAddress (raddr, NULL);
@@ -445,7 +449,8 @@ java::net::PlainSocketImpl::getOption (jint optID)
              }
 #endif
            else
-             goto error;
+             throw
+               new java::net::SocketException (JvNewStringUTF ("invalid family"));
            localAddress = new java::net::InetAddress (laddr, NULL);
          }
        return localAddress;