[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