United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6342561 Doesn't work with bindv6only turned on
JDK-6342561 : Doesn't work with bindv6only turned on

Details
Type:
Enhancement
Submit Date:
2005-10-27
Status:
Closed
Updated Date:
2011-02-16
Project Name:
JDK
Resolved Date:
2010-09-09
Component:
deploy
OS:
linux
Sub-Component:
plugin
CPU:
x86
Priority:
P4
Resolution:
Duplicate
Affected Versions:
5.0
Fixed Versions:
7-pool

Related Reports
Duplicate:

Sub Tasks

Description
FULL PRODUCT VERSION :
$ java -version
java version "1.5.0_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_04-b05)
Java HotSpot(TM) Client VM (build 1.5.0_04-b05, mixed mode, sharing)


ADDITIONAL OS VERSION INFORMATION :
$ cat /etc/debian_version
testing/unstable
$ uname -a
Linux Solo 2.6.13 #1 Sun Sep 4 14:39:54 CEST 2005 i686 GNU/Linux


EXTRA RELEVANT SYSTEM CONFIGURATION :
IPv6 in module, bindv6only on

A DESCRIPTION OF THE PROBLEM :
With sysctl net.ipv6.bindv6only plugin can't download applet from IPv4 servers. Strace says, that it tries to connect to something like ::ffff:192.168.0.1, which fails. Downloading applets from IPv6 servers or using file:// works fine. Downloading applet from server with both A and AAAA entries in DNS fails. Removing all IPv6 addresses or doing echo 0 > /proc/sys/net/ipv6/bindv6only helps, but is unacceptable for me.

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1. Mount procfs (important)
2. Turn IPv6 on
3. Set IPv6 addresses
4. echo 1 > /proc/sys/net/ipv6/bindv6only
5. mozilla-firefox http://some.ipv4.server/page


EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Applet is downloading from server and starts.
ACTUAL -
Applet doesn't start. Logs from www server and proxy server (if connecting via proxy) says, that it wasn't tried to download. Strace says, that it tries to connect to ::ffff:192.168.0.1, which fails. Browser says: "Loading Java Applet Failed..."

ERROR MESSAGES/STACK TRACES THAT OCCUR :
  From java console:
Java Plug-in 1.5.0_04
Using JRE version 1.5.0_04 Java HotSpot(TM) Client VM
User home directory = /home/jarek


----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
l:   dump classloader list
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
x:   clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------

java.lang.InterruptedException: sleep interrupted
	at java.lang.Thread.sleep(Native Method)
	at com.topcoder.client.contestApplet.widgets.MoveFocus$1.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
load: class IRCApplet.class not found.
java.lang.ClassNotFoundException: IRCApplet.class
	at sun.applet.AppletClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.applet.AppletClassLoader.loadCode(Unknown Source)
	at sun.applet.AppletPanel.createApplet(Unknown Source)
	at sun.plugin.AppletViewer.createApplet(Unknown Source)
	at sun.applet.AppletPanel.runLoader(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: open HTTP connection failed.
	at sun.applet.AppletClassLoader.getBytes(Unknown Source)
	at sun.applet.AppletClassLoader.access$100(Unknown Source)
	at sun.applet.AppletClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	... 10 more
Exception in thread "Thread-18" java.lang.NullPointerException
	at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
	at sun.plugin.AppletViewer.showAppletException(Unknown Source)
	at sun.applet.AppletPanel.runLoader(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
	at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
	at sun.plugin.AppletViewer.showAppletStatus(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Exception in thread "thread applet-IRCApplet.class" java.lang.NullPointerException
	at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)
	at sun.plugin.AppletViewer.showAppletException(Unknown Source)
	at sun.applet.AppletPanel.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)


REPRODUCIBILITY :
This bug can be reproduced always.

---------- BEGIN SOURCE ----------
Every java applet on IPv4 server. For example http://www.vilo.bydgoszcz.pl/chat.php
---------- END SOURCE ----------

CUSTOMER SUBMITTED WORKAROUND :
echo 0 > /proc/sys/net/ipv6/bindv6only or run in chroot without procfs.

                                    

Comments
EVALUATION

The corresponding JDK for this issue is 6882910.
                                     
2010-07-28



Hardware and Software, Engineered to Work Together