|
Description
|
FULL PRODUCT VERSION :
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1-beta-b14)
Java HotSpot(TM) Client VM (build 1.4.1-beta-b14, mixed mode)
FULL OPERATING SYSTEM VERSION :
Windows NT Version 4.0
A DESCRIPTION OF THE PROBLEM :
It is unclear from the documentation of Socket whether
getInetAddress should return null if a socket is closed.
Presumably closed implies "not connected"--which means null
should be returned--but that is not obvious.
With Java 1.4.0, getInetAddress() never returns null. But
with Java 1.4.1-beta, getInetAddress() returns null if the
socket was created from a channel and then closed; it does
not return null if the socket was created with the old
host/port constructor and then closed. This could be
considered a bug or just a documentation issue.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run the included source code with Java 1.4.0 and 1.4.1-beta
and look at the output. You will need a working network
connection to establish the sockets.
EXPECTED VERSUS ACTUAL BEHAVIOR :
In the example below, I run the test with Java 1.4.1-beta
and 1.4.0. It's not clear whether null should be printed in
the "Channel socket address" line.
% java141 -version
java version "1.4.1-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.4.1-beta-b14)
Java HotSpot(TM) Client VM (build 1.4.1-beta-b14, mixed mode)
% java141 UnboundSocketInetAddress
Simple socket address: www.limewire.com/64.61.25.138
Simple channel address: www.limewire.com/64.61.25.138
Channel socket address: www.limewire.com/64.61.25.138
Channel socket address: null
% java140 -version
java version "1.4.0"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.4.0-b92)
Java HotSpot(TM) Client VM (build 1.4.0-b92, mixed mode)
% java140 UnboundSocketInetAddress
Simple socket address: www.limewire.com/64.61.25.138
Simple channel address: www.limewire.com/64.61.25.138
Channel socket address: www.limewire.com/64.61.25.138
Channel socket address: www.limewire.com/64.61.25.138
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.io.*;
import java.net.*;
import java.nio.channels.*;
/**
* Tries to figure out under what conditions Socket.getInetAddress returns null.
*/
public class UnboundSocketInetAddress {
public static void main(String args[]) {
//Create socket with old-fashioned constructor.
try {
Socket socket=new Socket("www.limewire.com", 80);
System.out.println("Simple socket address: "
+socket.getInetAddress()); //non-null
socket.close();
System.out.println("Simple channel address: "
+socket.getInetAddress()); //non-null
} catch (IOException e) {
System.out.println("Couldn't create socket");
}
//Create socket from channel.
try {
SocketAddress addr=new InetSocketAddress("www.limewire.com", 80);
SocketChannel channel=SocketChannel.open(addr);
Socket socket=channel.socket();
System.out.println("Channel socket address: "
+socket.getInetAddress()); //non-null
socket.close();
System.out.println("Channel socket address: "
+socket.getInetAddress()); //NULL on 1.4.1
} catch (IOException e) {
System.out.println("Couldn't create socket");
}
System.out.println();
}
}
---------- END SOURCE ----------
CUSTOMER WORKAROUND :
Be prepared for null when calling getInetAddress().
Or don't call getInetAddress() if the stream is closed.
(Review ID: 159833)
======================================================================
Posted Date : 2006-07-22 10:19:14.0
|
|
Comments
|
Submitted On 26-OCT-2005
I discovered a bug after downloading a video from limewire
Submitted On 16-MAY-2006
LimeWire version 4.10.9
Java version 1.5.0_06 from Sun Microsystems Inc.
Windows XP v. 5.1 on x86
Free/total memory: 2795272/4128768
com.limegroup.gnutella.gui.GUILoader$StartupFailedException: invalid update.ver
at com.limegroup.gnutella.gui.GUILoader.sanityCheck(GUILoader.java:274)
at com.limegroup.gnutella.gui.GUILoader.load(GUILoader.java:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.limegroup.gnutella.gui.Main.main(Main.java:44)
STARTUP ERROR!
-- listing properties --
FILTER_HASH_QUERIES=true
APP_HEIGHT=728
FRACTIONAL_UPTIME=0.009781049
LAST_EXPIRE_TIME=1147746411812
SESSIONS=2
LAST_ACCEPTABLE_BUG_VERSION=4.10.10
EVIL_HOSTS=BearShare 5.2
DIRECTORY_FOR_SAVING_FILES=C:\Documents and Settings\Juron\Shared
UPDATE_DOWNLOAD_DELAY=10000000
NECTIONS=2
RUN_ONCE=true
COUNTRY=
MIN_CONNECT_TIME=7
CLIENT_ID=4E2C4DDA066E88568C6E3296FEEAEC00
LAST_SHUTDOWN_TIME=1108162449656
EVER_ACCEPTED_INCOMING=true
TREE_NODE_PREFIXES=n
SHARE_DOWNLOADED_FILES_IN_NON_SHARED_DIRECTORIES=false
IDLE_CONNECTIONS=2
DAAP_ENABLED=false
PORT=30204
TOTAL_UPTIME=196049
AVERAGE_UPTIME=98024
UPDATE_GIVEUP_FACTOR=24
UNSET_FIREWALLED_FROM_CONNECTBACK=true
FLUSH_DELAY_TIME=256
INSTALLED=true
MAX_SIM_DOWNLOAD=3
UI_LIBRARY_TREE_DIVIDER_LOCATION=124
LAST_GWEBCACHE_FETCH_TIME=1147175611171
UPDATE_DELAY=252000020
WINDOW_Y=0
WINDOW_X=92
FILES IN CURRENT DIRECTORY:
C:\Program Files\limewire\clink.jar
LAST MODIFIED: 1146834564828
SIZE: 307949
C:\Program Files\limewire\commons-httpclient.jar
LAST MODIFIED: 1146834564890
SIZE: 459988
C:\Program Files\limewire\commons-logging.jar
LAST MODIFIED: 1146834564937
SIZE: 59154
C:\Program Files\limewire\commons-net.jar
LAST MODIFIED: 1146834565000
SIZE: 355370
C:\Program Files\limewire\daap.jar
LAST MODIFIED: 1146834565046
SIZE: 311611
C:\Program Files\limewire\GenericWindowsUtils.dll
LAST MODIFIED: 1140126936078
SIZE: 12279
C:\Program Files\limewire\i18n.jar
LAST MODIFIED: 1146834565109
SIZE: 25678
C:\Program Files\limewire\icu4j.jar
LAST MODIFIED: 1146834565171
SIZE: 741440
C:\Program Files\limewire\id3v2.jar
LAST MODIFIED: 1146834565234
SIZE: 94430
C:\Program Files\limewire\jcraft.jar
LAST MODIFIED: 1146834565281
SIZE: 136693
C:\Program Files\limewire\jl011.jar
LAST MODIFIED: 1146834565343
SIZE: 255016
C:\Program Files\limewire\jmdns.jar
LAST MODIFIED: 1146834565375
SIZE: 69306
C:\Program Files\limewire\LimeWire.exe
LAST MODIFIED: 1140126937718
SIZE: 81920
C:\Program Files\limewire\LimeWire.jar
LAST MODIFIED: 1146834564421
SIZE: 6326769
C:\Program Files\limewire\LimeWire20.dll
LAST MODIFIED: 1140126937531
SIZE: 40960
C:\Program Files\limewire\log4j.jar
LAST MODIFIED: 1146834565468
SIZE: 677952
C:\Program Files\limewire\logicrypto.jar
LAST MODIFIED: 1146834565515
SIZE: 227510
C:\Program Files\limewire\looks.jar
LAST MODIFIED: 1146834565593
SIZE: 630634
C:\Program Files\limewire\MessagesBundles.jar
LAST MODIFIED: 1146834564734
SIZE: 2823898
C:\Program Files\limewire\mp3sp14.jar
LAST MODIFIED: 1146834565640
SIZE: 40064
C:\Program Files\limewire\ProgressTabs.jar
LAST MODIFIED: 1146834564765
SIZE: 5786
C:\Program Files\limewire\themes.jar
LAST MODIFIED: 1146834565687
SIZE: 379049
C:\Program Files\limewire\tritonus.jar
LAST MODIFIED: 1146834565734
SIZE: 152711
C:\Program Files\limewire\vorbis.jar
LAST MODIFIED: 1146834565781
SIZE: 27215
C:\Program Files\limewire\WindowsV5PlusUtils.dll
LAST MODIFIED: 1140126937546
SIZE: 12808
C:\Program Files\limewire\xerces.jar
LAST MODIFIED: 1146834565953
SIZE: 2147687
C:\Program Files\limewire\xml-apis.jar
LAST MODIFIED: 1146834566015
SIZE: 207655
Submitted On 16-MAY-2006
LimeWire version 4.10.9
Java version 1.5.0_06 from Sun Microsystems Inc.
Windows XP v. 5.1 on x86
Free/total memory: 2795272/4128768
com.limegroup.gnutella.gui.GUILoader$StartupFailedException: invalid update.ver
at com.limegroup.gnutella.gui.GUILoader.sanityCheck(GUILoader.java:274)
at com.limegroup.gnutella.gui.GUILoader.load(GUILoader.java:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.limegroup.gnutella.gui.Main.main(Main.java:44)
STARTUP ERROR!
-- listing properties --
FILTER_HASH_QUERIES=true
APP_HEIGHT=728
FRACTIONAL_UPTIME=0.009781049
LAST_EXPIRE_TIME=1147746411812
SESSIONS=2
LAST_ACCEPTABLE_BUG_VERSION=4.10.10
EVIL_HOSTS=BearShare 5.2
DIRECTORY_FOR_SAVING_FILES=C:\Documents and Settings\Juron\Shared
UPDATE_DOWNLOAD_DELAY=10000000
NECTIONS=2
RUN_ONCE=true
COUNTRY=
MIN_CONNECT_TIME=7
CLIENT_ID=4E2C4DDA066E88568C6E3296FEEAEC00
LAST_SHUTDOWN_TIME=1108162449656
EVER_ACCEPTED_INCOMING=true
TREE_NODE_PREFIXES=n
SHARE_DOWNLOADED_FILES_IN_NON_SHARED_DIRECTORIES=false
IDLE_CONNECTIONS=2
DAAP_ENABLED=false
PORT=30204
TOTAL_UPTIME=196049
AVERAGE_UPTIME=98024
UPDATE_GIVEUP_FACTOR=24
UNSET_FIREWALLED_FROM_CONNECTBACK=true
FLUSH_DELAY_TIME=256
INSTALLED=true
MAX_SIM_DOWNLOAD=3
UI_LIBRARY_TREE_DIVIDER_LOCATION=124
LAST_GWEBCACHE_FETCH_TIME=1147175611171
UPDATE_DELAY=252000020
WINDOW_Y=0
WINDOW_X=92
FILES IN CURRENT DIRECTORY:
C:\Program Files\limewire\clink.jar
LAST MODIFIED: 1146834564828
SIZE: 307949
C:\Program Files\limewire\commons-httpclient.jar
LAST MODIFIED: 1146834564890
SIZE: 459988
C:\Program Files\limewire\commons-logging.jar
LAST MODIFIED: 1146834564937
SIZE: 59154
C:\Program Files\limewire\commons-net.jar
LAST MODIFIED: 1146834565000
SIZE: 355370
C:\Program Files\limewire\daap.jar
LAST MODIFIED: 1146834565046
SIZE: 311611
C:\Program Files\limewire\GenericWindowsUtils.dll
LAST MODIFIED: 1140126936078
SIZE: 12279
C:\Program Files\limewire\i18n.jar
LAST MODIFIED: 1146834565109
SIZE: 25678
C:\Program Files\limewire\icu4j.jar
LAST MODIFIED: 1146834565171
SIZE: 741440
C:\Program Files\limewire\id3v2.jar
LAST MODIFIED: 1146834565234
SIZE: 94430
C:\Program Files\limewire\jcraft.jar
LAST MODIFIED: 1146834565281
SIZE: 136693
C:\Program Files\limewire\jl011.jar
LAST MODIFIED: 1146834565343
SIZE: 255016
C:\Program Files\limewire\jmdns.jar
LAST MODIFIED: 1146834565375
SIZE: 69306
C:\Program Files\limewire\LimeWire.exe
LAST MODIFIED: 1140126937718
SIZE: 81920
C:\Program Files\limewire\LimeWire.jar
LAST MODIFIED: 1146834564421
SIZE: 6326769
C:\Program Files\limewire\LimeWire20.dll
LAST MODIFIED: 1140126937531
SIZE: 40960
C:\Program Files\limewire\log4j.jar
LAST MODIFIED: 1146834565468
SIZE: 677952
C:\Program Files\limewire\logicrypto.jar
LAST MODIFIED: 1146834565515
SIZE: 227510
C:\Program Files\limewire\looks.jar
LAST MODIFIED: 1146834565593
SIZE: 630634
C:\Program Files\limewire\MessagesBundles.jar
LAST MODIFIED: 1146834564734
SIZE: 2823898
C:\Program Files\limewire\mp3sp14.jar
LAST MODIFIED: 1146834565640
SIZE: 40064
C:\Program Files\limewire\ProgressTabs.jar
LAST MODIFIED: 1146834564765
SIZE: 5786
C:\Program Files\limewire\themes.jar
LAST MODIFIED: 1146834565687
SIZE: 379049
C:\Program Files\limewire\tritonus.jar
LAST MODIFIED: 1146834565734
SIZE: 152711
C:\Program Files\limewire\vorbis.jar
LAST MODIFIED: 1146834565781
SIZE: 27215
C:\Program Files\limewire\WindowsV5PlusUtils.dll
LAST MODIFIED: 1140126937546
SIZE: 12808
C:\Program Files\limewire\xerces.jar
LAST MODIFIED: 1146834565953
SIZE: 2147687
C:\Program Files\limewire\xml-apis.jar
LAST MODIFIED: 1146834566015
SIZE: 207655
PLEASE NOTE: JDK6 is formerly known as Project Mustang
|