[kaffe] CVS kaffe (robilad): resynced with gnu classpath

Kaffe CVS cvs-commits at kaffe.org
Tue May 23 09:43:23 PDT 2006


PatchSet 7294 
Date: 2006/05/23 16:27:27
Author: robilad
Branch: HEAD
Tag: (none) 
Log:
resynced with gnu classpath

Members: 
	ChangeLog:1.4798->1.4799 
	external/gcc/fastjar/fastjar.1:1.2->1.3 
	libraries/clib/nio/Makefile.am:1.20->1.21 
	libraries/clib/nio/Makefile.in:1.102->1.103 
	libraries/clib/nio/gnu_java_nio_VMChannel.c:INITIAL->1.1 
	libraries/clib/target/generic/target_generic_network.h:1.3->1.4 
	libraries/javalib/Makefile.am:1.427->1.428 
	libraries/javalib/Makefile.in:1.533->1.534 
	libraries/javalib/external/classpath/ChangeLog:1.27->1.28 
	libraries/javalib/external/classpath/INSTALL:1.3->1.4 
	libraries/javalib/external/classpath/NEWS:1.10->1.11 
	libraries/javalib/external/classpath/README:1.1->1.2 
	libraries/javalib/external/classpath/THANKYOU:1.1->1.2 
	libraries/javalib/external/classpath/aclocal.m4:1.16->1.17 
	libraries/javalib/external/classpath/config.guess:1.19->1.20 
	libraries/javalib/external/classpath/config.sub:1.33->1.34 
	libraries/javalib/external/classpath/configure:1.26->1.27 
	libraries/javalib/external/classpath/ltmain.sh:1.19->1.20 
	libraries/javalib/external/classpath/doc/hacking.info:1.6->1.7 
	libraries/javalib/external/classpath/doc/tools.info:1.1->1.2 
	libraries/javalib/external/classpath/doc/tools.texinfo:1.1->1.2 
	libraries/javalib/external/classpath/doc/vmintegration.info:1.13->1.14 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/AttributeList.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/Attributes.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ContentHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/DTDHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/DocumentHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/EntityResolver.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ErrorHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/HandlerBase.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/InputSource.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/Locator.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/Parser.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/SAXException.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/SAXNotRecognizedException.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/SAXNotSupportedException.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/SAXParseException.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/XMLFilter.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/XMLReader.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/package.html:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/Attributes2.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/Attributes2Impl.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/DeclHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/DefaultHandler2.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/EntityResolver2.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/LexicalHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/Locator2.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/Locator2Impl.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/ext/package.html:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/AttributeListImpl.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/AttributesImpl.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/DefaultHandler.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/LocatorImpl.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/NamespaceSupport.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/NewInstance.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/ParserAdapter.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/ParserFactory.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/XMLFilterImpl.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/XMLReaderAdapter.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/XMLReaderFactory.java:1.27->1.28 
	libraries/javalib/external/classpath/external/sax/org/xml/sax/helpers/package.html:1.27->1.28 
	libraries/javalib/external/classpath/gnu/java/awt/font/opentype/NameDecoder.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/awt/java2d/AbstractGraphics2D.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/awt/peer/gtk/GdkFontPeer.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/java/awt/peer/gtk/GdkGraphics.java:1.5->1.6 
	libraries/javalib/external/classpath/gnu/java/awt/print/JavaPrinterGraphics.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/awt/print/JavaPrinterJob.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/awt/print/PostScriptGraphics2D.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/IndexListParser.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/net/loader/FileResource.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/FileURLLoader.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/JarURLLoader.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/JarURLResource.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/RemoteResource.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/RemoteURLLoader.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/Resource.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/URLLoader.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/net/loader/URLStreamHandlerCache.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/nio/PipeImpl.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/nio/SelectorImpl.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/java/nio/SocketChannelSelectionKeyImpl.java:INITIAL->1.1 
	libraries/javalib/external/classpath/gnu/java/nio/channels/FileChannelImpl.java:1.3->1.4 
	libraries/javalib/external/classpath/gnu/java/security/OID.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/java/security/hash/MD4.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/java/security/prng/PRNGFactory.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/javax/crypto/jce/keyring/GnuKeyring.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/Entry.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/EnvelopeEntry.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/GnuPrivateKeyring.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/GnuPublicKeyring.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/MaskableEnvelopeEntry.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/PasswordAuthenticatedEntry.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/PasswordEncryptedEntry.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/javax/crypto/keyring/PrivateKeyEntry.java:1.2->1.3 
	libraries/javalib/external/classpath/gnu/javax/imageio/jpeg/DCT.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/javax/imageio/jpeg/YCbCr_ColorSpace.java:1.1->1.2 
	libraries/javalib/external/classpath/gnu/javax/imageio/jpeg/ZigZag.java:1.1->1.2 
	libraries/javalib/external/classpath/include/gnu_java_awt_peer_gtk_GdkFontPeer.h:1.1->1.2 
	libraries/javalib/external/classpath/include/gnu_java_nio_VMChannel.h:INITIAL->1.1 
	libraries/javalib/external/classpath/java/awt/Font.java:1.1->1.2 
	libraries/javalib/external/classpath/java/awt/Graphics2D.java:1.1->1.2 
	libraries/javalib/external/classpath/java/awt/GraphicsConfiguration.java:1.2->1.3 
	libraries/javalib/external/classpath/java/awt/LightweightDispatcher.java:1.3->1.4 
	libraries/javalib/external/classpath/java/awt/TexturePaint.java:1.2->1.3 
	libraries/javalib/external/classpath/java/awt/Toolkit.java:1.5->1.6 
	libraries/javalib/external/classpath/java/awt/Window.java:1.5->1.6 
	libraries/javalib/external/classpath/java/awt/font/GlyphMetrics.java:1.2->1.3 
	libraries/javalib/external/classpath/java/awt/font/GlyphVector.java:1.2->1.3 
	libraries/javalib/external/classpath/java/awt/font/GraphicAttribute.java:1.2->1.3 
	libraries/javalib/external/classpath/java/awt/font/ImageGraphicAttribute.java:1.2->1.3 
	libraries/javalib/external/classpath/java/awt/font/ShapeGraphicAttribute.java:1.2->1.3 
	libraries/javalib/external/classpath/java/beans/beancontext/BeanContextSupport.java:1.4->1.5 
	libraries/javalib/external/classpath/java/io/ObjectInputStream.java:1.4->1.5 
	libraries/javalib/external/classpath/java/io/ObjectOutputStream.java:1.7->1.8 
	libraries/javalib/external/classpath/java/io/ObjectStreamClass.java:1.4->1.5 
	libraries/javalib/external/classpath/java/io/ObjectStreamConstants.java:1.2->1.3 
	libraries/javalib/external/classpath/java/io/OutputStream.java:1.1->1.2 
	libraries/javalib/external/classpath/java/lang/Thread.java:1.6->1.7 
	libraries/javalib/external/classpath/java/net/URLClassLoader.java:1.8->1.9 
	libraries/javalib/external/classpath/java/nio/CharBuffer.java:1.1->1.2 
	libraries/javalib/external/classpath/java/nio/channels/FileChannel.java:1.2->1.3 
	libraries/javalib/external/classpath/java/text/NumberFormat.java:1.1->1.2 
	libraries/javalib/external/classpath/java/util/jar/JarOutputStream.java:1.1->1.2 
	libraries/javalib/external/classpath/java/util/jar/Manifest.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/imageio/stream/ImageInputStreamImpl.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/imageio/stream/MemoryCacheImageInputStream.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/naming/Context.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/ContextNotEmptyException.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/naming/InitialContext.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/NameParser.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/NamingEnumeration.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/PartialResultException.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/naming/Reference.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/naming/Referenceable.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/SizeLimitExceededException.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/naming/spi/InitialContextFactory.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/spi/InitialContextFactoryBuilder.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/spi/NamingManager.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/spi/ObjectFactory.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/spi/ObjectFactoryBuilder.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/spi/ResolveResult.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/naming/spi/Resolver.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/naming/spi/StateFactory.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/swing/CellRendererPane.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/DefaultButtonModel.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/swing/DefaultDesktopManager.java:1.4->1.5 
	libraries/javalib/external/classpath/javax/swing/JCheckBoxMenuItem.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/swing/JComponent.java:1.12->1.13 
	libraries/javalib/external/classpath/javax/swing/JFileChooser.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/JLabel.java:1.4->1.5 
	libraries/javalib/external/classpath/javax/swing/JList.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/JMenu.java:1.6->1.7 
	libraries/javalib/external/classpath/javax/swing/JMenuItem.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/JOptionPane.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/JPopupMenu.java:1.4->1.5 
	libraries/javalib/external/classpath/javax/swing/JTabbedPane.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/JTable.java:1.9->1.10 
	libraries/javalib/external/classpath/javax/swing/KeyboardManager.java:1.2->1.3 
	libraries/javalib/external/classpath/javax/swing/ProgressMonitor.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/RepaintManager.java:1.9->1.10 
	libraries/javalib/external/classpath/javax/swing/border/AbstractBorder.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/border/BevelBorder.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/border/CompoundBorder.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/border/TitledBorder.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicComboBoxUI.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicComboPopup.java:1.6->1.7 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicInternalFrameUI.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicSliderUI.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicTableHeaderUI.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicTableUI.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicTextUI.java:1.10->1.11 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicToolBarUI.java:1.4->1.5 
	libraries/javalib/external/classpath/javax/swing/plaf/basic/BasicTreeUI.java:1.8->1.9 
	libraries/javalib/external/classpath/javax/swing/plaf/metal/MetalBorders.java:1.6->1.7 
	libraries/javalib/external/classpath/javax/swing/plaf/metal/MetalButtonUI.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/plaf/metal/MetalLookAndFeel.java:1.8->1.9 
	libraries/javalib/external/classpath/javax/swing/plaf/metal/MetalSliderUI.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/table/AbstractTableModel.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/swing/table/DefaultTableModel.java:1.3->1.4 
	libraries/javalib/external/classpath/javax/swing/table/TableCellEditor.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/swing/table/TableCellRenderer.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/swing/text/AbstractDocument.java:1.9->1.10 
	libraries/javalib/external/classpath/javax/swing/text/AbstractWriter.java:1.1->1.2 
	libraries/javalib/external/classpath/javax/swing/text/FieldView.java:1.6->1.7 
	libraries/javalib/external/classpath/javax/swing/text/GapContent.java:1.8->1.9 
	libraries/javalib/external/classpath/javax/swing/text/JTextComponent.java:1.7->1.8 
	libraries/javalib/external/classpath/javax/swing/text/StyleContext.java:1.5->1.6 
	libraries/javalib/external/classpath/javax/swing/text/html/HTMLDocument.java:1.9->1.10 
	libraries/javalib/external/classpath/javax/swing/text/html/MinimalHTMLWriter.java:INITIAL->1.1 
	libraries/javalib/external/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c:1.4->1.5 
	libraries/javalib/external/classpath/native/jni/java-net/javanet.c:1.4->1.5 
	libraries/javalib/external/classpath/native/jni/java-nio/Makefile.am:1.2->1.3 
	libraries/javalib/external/classpath/native/jni/java-nio/Makefile.in:1.20->1.21 
	libraries/javalib/external/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c:INITIAL->1.1 
	libraries/javalib/external/classpath/native/target/generic/target_generic_network.h:1.2->1.3 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/getopt/Messages.properties:INITIAL->1.1 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/jar/messages.properties:INITIAL->1.1 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/jarsigner/MessageBundle.properties:1.1->1.2(DEAD) 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/jarsigner/messages.properties:INITIAL->1.1 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/keytool/MessageBundle.properties:1.1->1.2(DEAD) 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/keytool/messages.properties:INITIAL->1.1 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/native2ascii/messages.properties:INITIAL->1.1 
	libraries/javalib/external/classpath/resource/gnu/classpath/tools/serialver/messages.properties:INITIAL->1.1 
	libraries/javalib/external/classpath/resource/gnu/regexp/MessagesBundle_it.properties:1.27->1.28 
	libraries/javalib/external/classpath/scripts/classpath.spec.in:1.27->1.28 
	libraries/javalib/external/classpath/tools/Makefile.am:1.5->1.6 
	libraries/javalib/external/classpath/tools/Makefile.in:1.8->1.9 
	libraries/javalib/external/classpath/tools/jarsigner.sh.in:1.1->1.2(DEAD) 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/getopt/ClasspathToolParser.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/getopt/FileArgumentCallback.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/getopt/Messages.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/getopt/Option.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/getopt/Parser.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Action.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Creator.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Extractor.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Indexer.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Lister.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Main.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Messages.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/Updater.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jar/WorkSet.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jarsigner/Main.java:1.3->1.4 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/jarsigner/Messages.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/CertReqCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/Command.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/DeleteCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/ExportCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/GenKeyCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/IdentityDBCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/ImportCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/KeyCloneCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/KeyPasswdCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/ListCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/Main.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/Messages.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/PrintCertCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/SelfCertCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/StorePasswdCmd.java:1.1->1.2 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/keytool/keytool.txt:1.1->1.2(DEAD) 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/native2ascii/Messages.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/native2ascii/Native2ASCII.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/serialver/Messages.java:INITIAL->1.1 
	libraries/javalib/external/classpath/tools/gnu/classpath/tools/serialver/SerialVer.java:INITIAL->1.1 
	libraries/javalib/external/classpath/vm/reference/gnu/java/nio/VMChannel.java:INITIAL->1.1 
	libraries/javalib/vmspecific/gnu/java/nio/VMChannel.java:INITIAL->1.1 
	scripts/ltmain.sh:1.23->1.24 

Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4798 kaffe/ChangeLog:1.4799
--- kaffe/ChangeLog:1.4798	Mon May 22 15:21:38 2006
+++ kaffe/ChangeLog	Tue May 23 16:27:27 2006
@@ -1,3 +1,15 @@
+2006-05-23  Dalibor Topic  <robilad at kaffe.org>
+
+	* libraries/clib/nio/Makefile.am(libjavanio_la_SOURCES):
+	Added gnu_java_nio_VMChannel.c.
+
+	* libraries/clib/nio/gnu_java_nio_VMChannel.c: New file, taken
+	from GNU Classpath.
+
+ 	* libraries/clib/target/generic/target_generic_network.h,
+	libraries/javalib/external/classpath/:
+	Resynced with GNU Classpath.
+
 2006-05-22  Dalibor Topic  <robilad at kaffe.org>
 
 	* TODO: Updated after the last Classpath merge.
Index: kaffe/external/gcc/fastjar/fastjar.1
diff -u kaffe/external/gcc/fastjar/fastjar.1:1.2 kaffe/external/gcc/fastjar/fastjar.1:1.3
--- kaffe/external/gcc/fastjar/fastjar.1:1.2	Mon Apr  3 22:30:28 2006
+++ kaffe/external/gcc/fastjar/fastjar.1	Tue May 23 16:27:31 2006
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
+.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
 .\"
 .\" Standard preamble:
 .\" ========================================================================
@@ -129,90 +129,4 @@
 .\" ========================================================================
 .\"
 .IX Title "FASTJAR 1"
-.TH FASTJAR 1 "2006-02-28" "gcc-4.1.0" "GNU"
-.SH "NAME"
-fastjar \- archive tool for Java archives
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-fastjar \fB\-ctxu\fR [\fB\s-1OPTIONS\s0\fR] [\fIjar-file\fR] [\fImanifest-file\fR] [\fB\-C\fR \fIdir\fR] \fIfiles\fR...
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-\&\f(CW\*(C`fastjar\*(C'\fR is an implementation of Sun's jar utility that comes with
-the \s-1JDK\s0, written entirely in C, and runs in a fraction of the time while
-being feature compatible.
-.PP
-If any file is a directory then it is processed recursively.  The
-manifest file name and the archive file name needs to be specified in
-the same order the \fB\-m\fR and \fB\-f\fR flags are specified.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-Exactly one of the following actions must be specified:
-.IP "\fB\-c\fR" 4
-.IX Item "-c"
-Create new archive.
-.IP "\fB\-t\fR" 4
-.IX Item "-t"
-List table of contents for archive.
-.IP "\fB\-x\fR" 4
-.IX Item "-x"
-Extract named (or all) files from archive.
-.IP "\fB\-u\fR" 4
-.IX Item "-u"
-Update existing archive.
-.PP
-The following parameters are optional:
-.IP "\fB\-@\fR" 4
-.IX Item "-@"
-Read the names of the files to add to the archive from stdin.  This
-option is supported only in combination with \fB\-c\fR or \fB\-u\fR.
-Non standard option added in the \s-1GCC\s0 version.
-.IP "\fB\-C\fR \fIdirectory\fR" 4
-.IX Item "-C directory"
-Change to the \fIdirectory\fR and include the following file.
-.IP "\fB\-E\fR" 4
-.IX Item "-E"
-Prevent fastjar from reading the content of a directory when specifying
-one (and instead relying on the provided list of files to populate the
-archive with regard to the directory entry). Non standard option added
-in the \s-1GCC\s0 version.
-.IP "\fB\-M\fR" 4
-.IX Item "-M"
-Do not create a manifest file for the entries.
-.IP "\fB\-i\fR" 4
-.IX Item "-i"
-Generate an index of the packages in this jar and its Class-Path
-(currently a no-op for jar command-line compatibility).
-.IP "\fB\-0\fR" 4
-.IX Item "-0"
-Store only; use no \s-1ZIP\s0 compression.
-.IP "\fB\-V\fR" 4
-.IX Item "-V"
-.PD 0
-.IP "\fB\-\-version\fR" 4
-.IX Item "--version"
-.PD
-Display version information.
-.IP "\fB\-f\fR \fIarchive\fR" 4
-.IX Item "-f archive"
-Specify archive file name.
-.IP "\fB\-m\fR \fImanifest\fR" 4
-.IX Item "-m manifest"
-Include manifest information from specified \fImanifest\fR file.
-.IP "\fB\-v\fR" 4
-.IX Item "-v"
-Generate verbose output on standard output.
-.PP
-All remaining options are considered to be names of files.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-\&\fIgcj\fR\|(1), \fIgij\fR\|(1), \fIgrepjar\fR\|(1)
-and the Info entry for \fIgcj\fR.
-.SH "COPYRIGHT"
-.IX Header "COPYRIGHT"
-Copyright (C) 2002 Matthias Klose
-.PP
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the \s-1GNU\s0 General Public License as published by the
-Free Software Foundation; either version 2, or (at your option) any
-later version. A copy of the license is included in the
-man page \fIgpl\fR\|(7).
+.TH FASTJAR 1 "2006-04-04" "gcc- at gcc_version@" "GNU"
Index: kaffe/libraries/clib/nio/Makefile.am
diff -u kaffe/libraries/clib/nio/Makefile.am:1.20 kaffe/libraries/clib/nio/Makefile.am:1.21
--- kaffe/libraries/clib/nio/Makefile.am:1.20	Mon Dec 12 02:36:30 2005
+++ kaffe/libraries/clib/nio/Makefile.am	Tue May 23 16:27:31 2006
@@ -29,6 +29,7 @@
 	gnu_java_nio_charset_iconv_IconvDecoder.c \
 	gnu_java_nio_charset_iconv_IconvEncoder.c \
 	gnu_java_nio_channels_FileChannelImpl.c \
+	gnu_java_nio_VMChannel.c \
 	gnu_java_nio_VMSelector.c \
 	gnu_java_nio_VMPipe.c 
 
Index: kaffe/libraries/clib/nio/Makefile.in
diff -u kaffe/libraries/clib/nio/Makefile.in:1.102 kaffe/libraries/clib/nio/Makefile.in:1.103
--- kaffe/libraries/clib/nio/Makefile.in:1.102	Tue Feb  7 21:47:50 2006
+++ kaffe/libraries/clib/nio/Makefile.in	Tue May 23 16:27:31 2006
@@ -90,6 +90,7 @@
 	libjavanio_la-gnu_java_nio_charset_iconv_IconvDecoder.lo \
 	libjavanio_la-gnu_java_nio_charset_iconv_IconvEncoder.lo \
 	libjavanio_la-gnu_java_nio_channels_FileChannelImpl.lo \
+	libjavanio_la-gnu_java_nio_VMChannel.lo \
 	libjavanio_la-gnu_java_nio_VMSelector.lo \
 	libjavanio_la-gnu_java_nio_VMPipe.lo
 libjavanio_la_OBJECTS = $(am_libjavanio_la_OBJECTS)
@@ -403,6 +404,7 @@
 	gnu_java_nio_charset_iconv_IconvDecoder.c \
 	gnu_java_nio_charset_iconv_IconvEncoder.c \
 	gnu_java_nio_channels_FileChannelImpl.c \
+	gnu_java_nio_VMChannel.c \
 	gnu_java_nio_VMSelector.c \
 	gnu_java_nio_VMPipe.c 
 
@@ -481,6 +483,7 @@
 distclean-compile:
 	-rm -f *.tab.c
 
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libjavanio_la-gnu_java_nio_VMChannel.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libjavanio_la-gnu_java_nio_VMPipe.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libjavanio_la-gnu_java_nio_VMSelector.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libjavanio_la-gnu_java_nio_channels_FileChannelImpl.Plo at am__quote@
@@ -544,6 +547,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gnu_java_nio_channels_FileChannelImpl.c' object='libjavanio_la-gnu_java_nio_channels_FileChannelImpl.lo' libtool=yes @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libjavanio_la_CFLAGS) $(CFLAGS) -c -o libjavanio_la-gnu_java_nio_channels_FileChannelImpl.lo `test -f 'gnu_java_nio_channels_FileChannelImpl.c' || echo '$(srcdir)/'`gnu_java_nio_channels_FileChannelImpl.c
+
+libjavanio_la-gnu_java_nio_VMChannel.lo: gnu_java_nio_VMChannel.c
+ at am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libjavanio_la_CFLAGS) $(CFLAGS) -MT libjavanio_la-gnu_java_nio_VMChannel.lo -MD -MP -MF "$(DEPDIR)/libjavanio_la-gnu_java_nio_VMChannel.Tpo" -c -o libjavanio_la-gnu_java_nio_VMChannel.lo `test -f 'gnu_java_nio_VMChannel.c' || echo '$(srcdir)/'`gnu_java_nio_VMChannel.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libjavanio_la-gnu_java_nio_VMChannel.Tpo" "$(DEPDIR)/libjavanio_la-gnu_java_nio_VMChannel.Plo"; else rm -f "$(DEPDIR)/libjavanio_la-gnu_java_nio_VMChannel.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gnu_java_nio_VMChannel.c' object='libjavanio_la-gnu_java_nio_VMChannel.lo' libtool=yes @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libjavanio_la_CFLAGS) $(CFLAGS) -c -o libjavanio_la-gnu_java_nio_VMChannel.lo `test -f 'gnu_java_nio_VMChannel.c' || echo '$(srcdir)/'`gnu_java_nio_VMChannel.c
 
 libjavanio_la-gnu_java_nio_VMSelector.lo: gnu_java_nio_VMSelector.c
 @am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libjavanio_la_CFLAGS) $(CFLAGS) -MT libjavanio_la-gnu_java_nio_VMSelector.lo -MD -MP -MF "$(DEPDIR)/libjavanio_la-gnu_java_nio_VMSelector.Tpo" -c -o libjavanio_la-gnu_java_nio_VMSelector.lo `test -f 'gnu_java_nio_VMSelector.c' || echo '$(srcdir)/'`gnu_java_nio_VMSelector.c; \
===================================================================
Checking out kaffe/libraries/clib/nio/gnu_java_nio_VMChannel.c
RCS:  /home/cvs/kaffe/kaffe/libraries/clib/nio/gnu_java_nio_VMChannel.c,v
VERS: 1.1
***************
--- /dev/null	Sun Aug  4 19:57:58 2002
+++ kaffe/libraries/clib/nio/gnu_java_nio_VMChannel.c	Tue May 23 16:43:21 2006
@@ -0,0 +1,525 @@
+/* gnu_java_nio_VMChannel.c -
+   Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+#include <config.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+#include <sys/uio.h>
+#include <string.h>
+
+#include <jni.h>
+#include <jcl.h>
+
+#include "gnu_java_nio_VMChannel.h"
+
+#ifdef HAVE_FCNTL_H
+#include <fcntl.h>
+#endif /* HAVE_FCNTL_H */
+
+#define IO_EXCEPTION "java/io/IOException"
+#define NON_READABLE_CHANNEL_EXCEPTION "java/nio/channels/NonReadableChannelException"
+#define NON_WRITABLE_CHANNEL_EXCEPTION "java/nio/channels/NonWritableChannelException"
+
+/*
+ * Limit to maximum of 16 buffers
+ */
+#define JCL_IOV_MAX 16
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+enum JCL_buffer_type { DIRECT, ARRAY, UNKNOWN };
+
+struct JCL_buffer
+{
+  enum JCL_buffer_type type;
+  jbyte *ptr;
+  jint offset;
+  jint position;
+  jint limit;
+  jint count;
+};
+
+jmethodID get_method_id(JNIEnv *, jclass, const char *, const char *);
+void JCL_print_buffer(JNIEnv *, struct JCL_buffer *);
+int JCL_init_buffer(JNIEnv *, struct JCL_buffer *, jobject);
+void JCL_release_buffer(JNIEnv *, struct JCL_buffer *, jobject, jint);
+void JCL_cleanup_buffers(JNIEnv *, struct JCL_buffer *, jint, jobjectArray, jint, jlong);
+
+static jfieldID address_fid;
+static jmethodID get_position_mid;
+static jmethodID set_position_mid;
+static jmethodID get_limit_mid;
+static jmethodID set_limit_mid;
+static jmethodID has_array_mid;
+static jmethodID array_mid;
+static jmethodID array_offset_mid;
+
+jmethodID
+get_method_id(JNIEnv *env,  jclass clazz, const char *name, 
+	          const char *sig)
+{
+  jmethodID mid = (*env)->GetMethodID(env, clazz, name, sig);
+  if (mid == NULL)
+    {
+  	  JCL_ThrowException(env, "java/lang/InternalError", name);
+      return NULL;
+    }
+  
+  return mid;
+}
+
+void
+JCL_print_buffer(JNIEnv *env __attribute__((__unused__)), struct JCL_buffer *buf)
+{
+  fprintf(stdout, "Buffer - type: %d, ptr: %p\n", buf->type, buf->ptr);
+  fflush(stdout);
+}
+
+
+int
+JCL_init_buffer(JNIEnv *env, struct JCL_buffer *buf, jobject bbuf)
+{
+  jobject address = (*env)->GetObjectField(env, bbuf, address_fid);
+  
+  buf->position = (*env)->CallIntMethod(env, bbuf, get_position_mid);
+  buf->limit = (*env)->CallIntMethod(env, bbuf, get_limit_mid);
+  buf->offset = 0;
+  buf->count = 0;
+  buf->type = UNKNOWN;
+    
+  if (address != NULL)
+    {
+      buf->ptr = (jbyte *) JCL_GetRawData(env, address);
+      buf->type = DIRECT;
+      (*env)->DeleteLocalRef(env, address);
+    }
+  else
+    {
+      jboolean has_array;
+      has_array = (*env)->CallBooleanMethod(env, bbuf, has_array_mid);
+      
+      if (has_array == JNI_TRUE)
+        {
+          jbyteArray arr;
+          buf->offset = (*env)->CallIntMethod(env, bbuf, array_offset_mid);
+          arr = (*env)->CallObjectMethod(env, bbuf, array_mid);
+          buf->ptr = (*env)->GetByteArrayElements(env, arr, 0);
+          buf->type = ARRAY;
+          (*env)->DeleteLocalRef(env, arr);
+        }
+      else
+        {
+          return -1;
+        }
+    }
+      
+  return 0;
+}
+
+void
+JCL_release_buffer(JNIEnv *env, struct JCL_buffer *buf, jobject bbuf, 
+    jint action)
+{
+  jbyteArray arr;
+  
+  /* Set the position to the appropriate value */
+  if (buf->count > 0)
+    {
+      jobject bbufTemp;
+      bbufTemp = (*env)->CallObjectMethod(env, bbuf, set_position_mid, 
+                                          buf->position + buf->count);
+      (*env)->DeleteLocalRef(env, bbufTemp);
+    }
+    
+  switch (buf->type)
+    {
+    case DIRECT:
+      break;
+    case ARRAY:
+      arr = (*env)->CallObjectMethod(env, bbuf, array_mid);
+      (*env)->ReleaseByteArrayElements(env, arr, buf->ptr, action);
+      (*env)->DeleteLocalRef(env, arr);
+      break;
+    case UNKNOWN:
+      /* TODO: Handle buffers that are not direct or array backed */
+      break;
+    }
+}
+
+void
+JCL_cleanup_buffers(JNIEnv *env, 
+                    struct JCL_buffer *bi_list, 
+                    jint vec_len, 
+                    jobjectArray bbufs, 
+                    jint offset,
+                    jlong num_bytes)
+{
+  jint i;
+  
+  /* Update all of the bbufs with the approriate information */
+  for (i = 0; i < vec_len; i++)
+    {
+      struct JCL_buffer* buf;
+      jobject bbuf;
+      
+      buf = &bi_list[i];
+      bbuf = (*env)->GetObjectArrayElement(env, bbufs, offset + i);
+
+      if (num_bytes > (buf->limit - buf->position))
+        buf->count = (buf->limit - buf->position);
+      else
+        buf->count = num_bytes;
+        
+      num_bytes -= buf->count;
+      
+      JCL_release_buffer(env, buf, bbuf, JNI_ABORT);
+      (*env)->DeleteLocalRef(env, bbuf);
+    }
+}
+
+
+JNIEXPORT void JNICALL 
+Java_gnu_java_nio_VMChannel_initIDs  (JNIEnv *env, 
+	jclass clazz __attribute__ ((__unused__)))
+{
+  jclass bufferClass = JCL_FindClass(env, "java/nio/Buffer");
+  jclass byteBufferClass = JCL_FindClass(env, "java/nio/ByteBuffer");
+  
+  address_fid = (*env)->GetFieldID(env, bufferClass, "address", 
+                                   "Lgnu/classpath/Pointer;");
+  if (address_fid == NULL)
+    {
+  	  JCL_ThrowException(env, "java/lang/InternalError", 
+  	  	"Unable to find internal field");
+      return;
+    }
+  
+  get_position_mid = get_method_id(env, bufferClass, "position", "()I");
+  set_position_mid = get_method_id(env, bufferClass, "position", 
+                                   "(I)Ljava/nio/Buffer;");
+  get_limit_mid = get_method_id(env, bufferClass, "limit", "()I");
+  set_limit_mid = get_method_id(env, bufferClass, "limit", 
+                                "(I)Ljava/nio/Buffer;");
+  has_array_mid = get_method_id(env, byteBufferClass, "hasArray", "()Z");
+  array_mid = get_method_id(env, byteBufferClass, "array", "()[B");
+  array_offset_mid = get_method_id(env, byteBufferClass, "arrayOffset", "()I");
+}
+
+JNIEXPORT void JNICALL 
+Java_gnu_java_nio_VMChannel_setBlocking (JNIEnv *env, 
+	jobject o __attribute__ ((__unused__)), 
+	jint fd, 
+	jboolean blocking)
+{
+  int opts;
+  
+  opts = fcntl(fd, F_GETFL);
+  if (opts < 0)
+    {
+      JCL_ThrowException(env, IO_EXCEPTION, 
+        "Failed to get flags for file desriptor");
+      return;
+    }
+  
+  if (blocking)
+    opts |= O_NONBLOCK;
+  else
+    opts &= ~(O_NONBLOCK);
+  
+  opts = fcntl(fd, F_SETFL, opts);
+  
+  if (opts < 0)
+    {
+      JCL_ThrowException(env, IO_EXCEPTION, 
+        "Failed to set flags for file desriptor");
+      return;
+    }  
+}
+
+
+JNIEXPORT jint JNICALL 
+Java_gnu_java_nio_VMChannel_read (JNIEnv *env, 
+	jobject o __attribute__ ((__unused__)), 
+	jint fd, 
+	jobject bbuf)
+{
+  jint len;
+  ssize_t result;
+  struct JCL_buffer buf;
+  
+  if (JCL_init_buffer(env, &buf, bbuf) < 0)
+    {
+      /* TODO: Rethrown exception */
+      JCL_ThrowException (env, IO_EXCEPTION, "Buffer initialisation failed");
+      return -1;
+    }
+  
+  len = buf.limit - buf.position;
+  
+  result = read(fd, &(buf.ptr[buf.position + buf.offset]), len);
+  buf.count = result;
+  
+  if (result == 0)
+    result = -1; /* End Of File */
+  else if (result == -1)
+    {
+      buf.count = 0;
+      if (errno == EAGAIN) /* Non-blocking */
+        result = 0;
+      else if (errno == EBADF) /* Bad fd */
+        {
+          JCL_release_buffer(env, &buf, bbuf, JNI_ABORT);
+          JCL_ThrowException (env, NON_READABLE_CHANNEL_EXCEPTION, 
+                              strerror(errno));
+          return -1;
+        }            
+      else
+        {
+          JCL_release_buffer(env, &buf, bbuf, JNI_ABORT);
+      	  JCL_ThrowException (env, IO_EXCEPTION, strerror(errno));
+      	  return -1;
+        }
+    }
+  else 
+    
+  JCL_release_buffer(env, &buf, bbuf, JNI_COMMIT);
+  
+  return result;
+}
+
+JNIEXPORT jint JNICALL 
+Java_gnu_java_nio_VMChannel_write (JNIEnv *env, 
+	jobject o __attribute__ ((__unused__)), 
+	jint fd, 
+	jobject bbuf)
+{
+  jint len;
+  ssize_t result;
+  struct JCL_buffer buf;
+  
+  if (JCL_init_buffer(env, &buf, bbuf) < 0)
+    {
+      /* TODO: Rethrown exception */
+      JCL_ThrowException (env, IO_EXCEPTION, "Buffer initialisation failed");
+      return -1;
+    }
+  
+  len = buf.limit - buf.position;
+  
+  result = write(fd, &(buf.ptr[buf.position + buf.offset]), len);
+  buf.count = result;
+  
+  if (result == -1)
+    {
+      if (errno == EAGAIN) /* Non-blocking */
+          result = 0;
+      else
+        {
+          JCL_release_buffer(env, &buf, bbuf, JNI_ABORT);
+          JCL_ThrowException(env, IO_EXCEPTION, strerror(errno));
+          return -1;
+        }
+    }
+    
+  JCL_release_buffer(env, &buf, bbuf, JNI_ABORT);
+  
+  return result;  
+}
+
+
+/*
+ * Implementation of a scattering read.  Will use the appropriate
+ * vector based read call (currently readv on Linux).
+ * 
+ * This has a limit to the number of buffers that will be read.  It
+ * will not make muliple readv calls.  This is to ensure that operations 
+ * are atomic.  Currently it is limited to 16 buffers.  This is for 
+ * compatibiliy with Sun.
+ */
+JNIEXPORT jlong JNICALL 
+Java_gnu_java_nio_VMChannel_readScattering (JNIEnv *env, 
+	jobject o __attribute__ ((__unused__)), 
+	jint fd, 
+	jobjectArray bbufs, 
+	jint offset, 
+	jint length)
+{
+  jint i;
+/*   jboolean is_error = JNI_FALSE; */
+/*   char *error_msg; */
+  struct iovec buffers[JCL_IOV_MAX];
+  struct JCL_buffer bi_list[JCL_IOV_MAX];
+  ssize_t result;
+  jint vec_len = length < JCL_IOV_MAX ? length : JCL_IOV_MAX;
+  jlong bytes_read = 0;      
+  
+  /* Build the vector of buffers to read into */
+  for (i = 0; i < vec_len; i++)
+    {
+      struct JCL_buffer* buf;
+      jobject bbuf;
+      
+      buf = &bi_list[i];
+      bbuf = (*env)->GetObjectArrayElement(env, bbufs, offset + i);
+      
+      JCL_init_buffer(env, buf, bbuf); 
+      
+      buffers[i].iov_base = &(buf->ptr[buf->position + buf->offset]);
+      buffers[i].iov_len = buf->limit - buf->position;
+      (*env)->DeleteLocalRef(env, bbuf);
+    }
+    
+  /* Work the scattering magic */
+  result = readv(fd, buffers, vec_len);
+  bytes_read = (jlong) result;
+  
+  /* Handle the response */
+  if (result < 0)
+    {
+      if (errno == EAGAIN) /* Non blocking */
+        result = 0;
+      else if (errno == EBADF) /* Bad fd */
+        {
+          JCL_cleanup_buffers(env, bi_list, vec_len, bbufs, offset, bytes_read);
+          JCL_ThrowException (env, NON_READABLE_CHANNEL_EXCEPTION, 
+                              strerror(errno));
+          return -1;
+        } 
+      else
+        {
+          JCL_cleanup_buffers(env, bi_list, vec_len, bbufs, offset, bytes_read);
+          JCL_ThrowException (env, IO_EXCEPTION, strerror(errno));
+          return -1;
+        }
+      bytes_read = 0;
+    }
+  else if (result == 0) /* EOF */
+    {
+      result = -1;
+    }
+    
+  JCL_cleanup_buffers(env, bi_list, vec_len, bbufs, offset, bytes_read);
+                  
+  return (jlong) result;
+}
+
+/*
+ * Implementation of a gathering write.  Will use the appropriate
+ * vector based read call (currently readv on Linux).
+ * 
+ * This has a limit to the number of buffers that will be read.  It
+ * will not make muliple readv calls.  This is to ensure that operations 
+ * are atomic.  Currently it is limited to 16 buffers.  This is for 
+ * compatibiliy with Sun.
+ */
+JNIEXPORT jlong JNICALL 
+Java_gnu_java_nio_VMChannel_writeGathering (JNIEnv *env, 
+	jobject o __attribute__ ((__unused__)), 
+	jint fd, 
+	jobjectArray bbufs, 
+	jint offset, 
+	jint length)
+{
+  int i;
+/*   jboolean is_error = JNI_FALSE; */
+/*   char *error_msg; */
+  struct iovec buffers[JCL_IOV_MAX];
+  struct JCL_buffer bi_list[JCL_IOV_MAX];
+  ssize_t result;
+  jint vec_len = length < JCL_IOV_MAX ? length : JCL_IOV_MAX;
+  jlong bytes_written;
+  
+  
+  /* Build the vector of buffers to read into */
+  for (i = 0; i < vec_len; i++)
+    {
+      struct JCL_buffer* buf;
+      jobject bbuf;
+      
+      buf = &bi_list[i];
+      bbuf = (*env)->GetObjectArrayElement(env, bbufs, offset + i);
+      
+      JCL_init_buffer(env, buf, bbuf); 
+      
+      buffers[i].iov_base = &(buf->ptr[buf->position + buf->offset]);
+      buffers[i].iov_len = buf->limit - buf->position;
+      (*env)->DeleteLocalRef(env, bbuf);
+    }
+    
+  /* Work the gathering magic */
+  result = writev(fd, buffers, vec_len);
+  bytes_written = (jlong) result;
+
+  if (result < 0)
+    {
+      bytes_written = 0;
+      if (errno == EAGAIN) /* Non blocking */
+        result = 0;
+      else if (errno == EBADF) /* Bad fd */
+        {
+          JCL_cleanup_buffers(env, bi_list, vec_len, bbufs, offset, 
+                              bytes_written);
+          JCL_ThrowException (env, NON_WRITABLE_CHANNEL_EXCEPTION, 
+                              strerror(errno));
+          return -1;
+        } 
+      else
+        {
+          JCL_cleanup_buffers(env, bi_list, vec_len, bbufs, offset,
+                              bytes_written);
+          JCL_ThrowException (env, IO_EXCEPTION, strerror(errno));
+          return -1;
+        }
+    }
+  else if (result == 0) /* EOF??  Does this happen on a write */
+    result = -1;
+    
+  JCL_cleanup_buffers(env, bi_list, vec_len, bbufs, offset, bytes_written);    
+  return (jlong) result;
+}
+
+
+
+
+#ifdef __cplusplus
+}
+#endif
Index: kaffe/libraries/clib/target/generic/target_generic_network.h
diff -u kaffe/libraries/clib/target/generic/target_generic_network.h:1.3 kaffe/libraries/clib/target/generic/target_generic_network.h:1.4
--- kaffe/libraries/clib/target/generic/target_generic_network.h:1.3	Mon May 22 15:21:43 2006
+++ kaffe/libraries/clib/target/generic/target_generic_network.h	Tue May 23 16:27:34 2006
@@ -682,8 +682,8 @@
       \
       __value.tv_sec = flag / 1000; \
       __value.tv_usec = (flag % 1000) * 1000; \
-      result = ( setsockopt(socketDescriptor, SOL_SOCKET, SO_SNDTIMEO, &__value, sizeof(__value)) | \
-		setsockopt(socketDescriptor, SOL_SOCKET, SO_RCVTIMEO, &__value, sizeof(__value)) == 0) ? TARGET_NATIVE_OK : TARGET_NATIVE_ERROR; \
+      result = ( (setsockopt(socketDescriptor, SOL_SOCKET, SO_SNDTIMEO, &__value, sizeof(__value)) | \
+		  setsockopt(socketDescriptor, SOL_SOCKET, SO_RCVTIMEO, &__value, sizeof(__value))) == 0) ? TARGET_NATIVE_OK : TARGET_NATIVE_ERROR; \
     } while (0)
 #endif
 
Index: kaffe/libraries/javalib/Makefile.am
diff -u kaffe/libraries/javalib/Makefile.am:1.427 kaffe/libraries/javalib/Makefile.am:1.428
--- kaffe/libraries/javalib/Makefile.am:1.427	Fri Apr 21 01:32:43 2006
+++ kaffe/libraries/javalib/Makefile.am	Tue May 23 16:27:34 2006
@@ -209,11 +209,13 @@
 	vmspecific/gnu/inet/util/SaslOutputStream.java \
 	vmspecific/gnu/inet/util/SaslPlain.java \
 	vmspecific/gnu/inet/util/TraceLevel.java \
+	vmspecific/gnu/java/lang/VMInstrumentationImpl.java \
 	vmspecific/gnu/java/net/DNSJavaInetAddressImpl.java \
 	vmspecific/gnu/java/net/InetAddressImpl.java \
 	vmspecific/gnu/java/net/PlainDatagramSocketImpl.java \
 	vmspecific/gnu/java/net/PlainSocketImpl.java \
 	vmspecific/gnu/java/net/SysInetAddressImpl.java \
+	vmspecific/gnu/java/nio/VMChannel.java \
 	vmspecific/gnu/java/nio/VMPipe.java \
 	vmspecific/gnu/java/nio/VMSelector.java \
 	vmspecific/java/io/VMFile.java \
Index: kaffe/libraries/javalib/Makefile.in

*** Patch too long, truncated ***




More information about the kaffe mailing list