diff options
Diffstat (limited to 'java/openjdk6/files/icedtea/security/20130416/8003543.patch')
-rw-r--r-- | java/openjdk6/files/icedtea/security/20130416/8003543.patch | 227 |
1 files changed, 0 insertions, 227 deletions
diff --git a/java/openjdk6/files/icedtea/security/20130416/8003543.patch b/java/openjdk6/files/icedtea/security/20130416/8003543.patch deleted file mode 100644 index 8178f0b5eee6..000000000000 --- a/java/openjdk6/files/icedtea/security/20130416/8003543.patch +++ /dev/null @@ -1,227 +0,0 @@ ---- /dev/null 2013-04-25 15:02:13.000000000 -0400 -+++ jaxws/patches/jaxws_src/8003543.patch 2013-04-25 15:03:47.000000000 -0400 -@@ -0,0 +1,224 @@ -+--- src/com/sun/xml/internal/org/jvnet/mimepull/MemoryData.java -++++ src/com/sun/xml/internal/org/jvnet/mimepull/MemoryData.java -+@@ -1,5 +1,5 @@ -+ /* -+- * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. -++ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+@@ -27,6 +27,7 @@ -+ import java.nio.ByteBuffer; -+ import java.io.File; -+ import java.io.IOException; -++import java.util.logging.Level; -+ import java.util.logging.Logger; -+ -+ /** -+@@ -49,41 +50,45 @@ -+ } -+ -+ // size of the chunk given by the parser -++ @Override -+ public int size() { -+ return len; -+ } -+ -++ @Override -+ public byte[] read() { -+ return data; -+ } -+ -++ @Override -+ public long writeTo(DataFile file) { -+ return file.writeTo(data, 0, len); -+ } -+ -+ /** -+- * -+ * @param dataHead -+ * @param buf -+ * @return -+ */ -++ @Override -+ public Data createNext(DataHead dataHead, ByteBuffer buf) { -+ if (!config.isOnlyMemory() && dataHead.inMemory >= config.memoryThreshold) { -+ try { -+ String prefix = config.getTempFilePrefix(); -+ String suffix = config.getTempFileSuffix(); -+- File dir = config.getTempDir(); -+- File tempFile = (dir == null) -+- ? File.createTempFile(prefix, suffix) -+- : File.createTempFile(prefix, suffix, dir); -+- LOGGER.fine("Created temp file = "+tempFile); -++ File tempFile = TempFiles.createTempFile(prefix, suffix, config.getTempDir()); -++ // delete the temp file when VM exits as a last resort for file clean up -++ tempFile.deleteOnExit(); -++ if (LOGGER.isLoggable(Level.FINE)) { -++ LOGGER.log(Level.FINE, "Created temp file = {0}", tempFile); -++ } -+ dataHead.dataFile = new DataFile(tempFile); -+- } catch(IOException ioe) { -++ } catch (IOException ioe) { -+ throw new MIMEParsingException(ioe); -+ } -+ -+ if (dataHead.head != null) { -+- for(Chunk c=dataHead.head; c != null; c=c.next) { -++ for (Chunk c = dataHead.head; c != null; c = c.next) { -+ long pointer = c.data.writeTo(dataHead.dataFile); -+ c.data = new FileData(dataHead.dataFile, pointer, len); -+ } -+@@ -93,4 +98,5 @@ -+ return new MemoryData(buf, config); -+ } -+ } -++ -+ } -+--- /dev/null -++++ src/com/sun/xml/internal/org/jvnet/mimepull/TempFiles.java -+@@ -0,0 +1,144 @@ -++/* -++ * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. -++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -++ * -++ * This code is free software; you can redistribute it and/or modify it -++ * under the terms of the GNU General Public License version 2 only, as -++ * published by the Free Software Foundation. Oracle designates this -++ * particular file as subject to the "Classpath" exception as provided -++ * by Oracle in the LICENSE file that accompanied this code. -++ * -++ * This code 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 -++ * version 2 for more details (a copy is included in the LICENSE file that -++ * accompanied this code). -++ * -++ * You should have received a copy of the GNU General Public License version -++ * 2 along with this work; if not, write to the Free Software Foundation, -++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -++ * -++ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -++ * or visit www.oracle.com if you need additional information or have any -++ * questions. -++ */ -++ -++package com.sun.xml.internal.org.jvnet.mimepull; -++ -++import java.io.File; -++import java.io.IOException; -++import java.lang.reflect.Array; -++import java.lang.reflect.InvocationTargetException; -++import java.lang.reflect.Method; -++import java.util.logging.Level; -++import java.util.logging.Logger; -++ -++/** -++ * Helper utility to support jdk <= jdk1.6. After jdk1.6 EOL reflection can be removed and API can be used directly. -++ */ -++class TempFiles { -++ -++ private static final Logger LOGGER = Logger.getLogger(TempFiles.class.getName()); -++ -++ private static final Class<?> CLASS_FILES; -++ private static final Class<?> CLASS_PATH; -++ private static final Class<?> CLASS_FILE_ATTRIBUTE; -++ private static final Class<?> CLASS_FILE_ATTRIBUTES; -++ private static final Method METHOD_FILE_TO_PATH; -++ private static final Method METHOD_FILES_CREATE_TEMP_FILE; -++ private static final Method METHOD_FILES_CREATE_TEMP_FILE_WITHPATH; -++ -++ private static final Method METHOD_PATH_TO_FILE; -++ -++ private static boolean useJdk6API; -++ -++ static { -++ useJdk6API = isJdk6(); -++ -++ CLASS_FILES = safeGetClass("java.nio.file.Files"); -++ CLASS_PATH = safeGetClass("java.nio.file.Path"); -++ CLASS_FILE_ATTRIBUTE = safeGetClass("java.nio.file.attribute.FileAttribute"); -++ CLASS_FILE_ATTRIBUTES = safeGetClass("[Ljava.nio.file.attribute.FileAttribute;"); -++ METHOD_FILE_TO_PATH = safeGetMethod(File.class, "toPath"); -++ METHOD_FILES_CREATE_TEMP_FILE = safeGetMethod(CLASS_FILES, "createTempFile", String.class, String.class, CLASS_FILE_ATTRIBUTES); -++ METHOD_FILES_CREATE_TEMP_FILE_WITHPATH = safeGetMethod(CLASS_FILES, "createTempFile", CLASS_PATH, String.class, String.class, CLASS_FILE_ATTRIBUTES); -++ METHOD_PATH_TO_FILE = safeGetMethod(CLASS_PATH, "toFile"); -++ } -++ -++ private static boolean isJdk6() { -++ String javaVersion = System.getProperty("java.version"); -++ LOGGER.log(Level.FINEST, "Detected java version = {0}", javaVersion); -++ return javaVersion.startsWith("1.6."); -++ } -++ -++ private static Class<?> safeGetClass(String className) { -++ // it is jdk 6 or something failed already before -++ if (useJdk6API) return null; -++ try { -++ return Class.forName(className); -++ } catch (ClassNotFoundException e) { -++ LOGGER.log(Level.SEVERE, "Exception cought", e); -++ LOGGER.log(Level.WARNING, "Class {0} not found. Temp files will be created using old java.io API.", className); -++ useJdk6API = true; -++ return null; -++ } -++ } -++ -++ private static Method safeGetMethod(Class<?> clazz, String methodName, Class<?>... parameterTypes) { -++ // it is jdk 6 or something failed already before -++ if (useJdk6API) return null; -++ try { -++ return clazz.getMethod(methodName, parameterTypes); -++ } catch (NoSuchMethodException e) { -++ LOGGER.log(Level.SEVERE, "Exception cought", e); -++ LOGGER.log(Level.WARNING, "Method {0} not found. Temp files will be created using old java.io API.", methodName); -++ useJdk6API = true; -++ return null; -++ } -++ } -++ -++ -++ static Object toPath(File f) throws InvocationTargetException, IllegalAccessException { -++ return METHOD_FILE_TO_PATH.invoke(f); -++ } -++ -++ static File toFile(Object path) throws InvocationTargetException, IllegalAccessException { -++ return (File) METHOD_PATH_TO_FILE.invoke(path); -++ } -++ -++ static File createTempFile(String prefix, String suffix, File dir) throws IOException { -++ -++ if (useJdk6API) { -++ LOGGER.log(Level.FINEST, "Jdk6 detected, temp file (prefix:{0}, suffix:{1}) being created using old java.io API.", new Object[]{prefix, suffix}); -++ return File.createTempFile(prefix, suffix, dir); -++ -++ } else { -++ -++ try { -++ if (dir != null) { -++ Object path = toPath(dir); -++ LOGGER.log(Level.FINEST, "Temp file (path: {0}, prefix:{1}, suffix:{2}) being created using NIO API.", new Object[]{dir.getAbsolutePath(), prefix, suffix}); -++ return toFile(METHOD_FILES_CREATE_TEMP_FILE_WITHPATH.invoke(null, path, prefix, suffix, Array.newInstance(CLASS_FILE_ATTRIBUTE, 0))); -++ } else { -++ LOGGER.log(Level.FINEST, "Temp file (prefix:{0}, suffix:{1}) being created using NIO API.", new Object[]{prefix, suffix}); -++ return toFile(METHOD_FILES_CREATE_TEMP_FILE.invoke(null, prefix, suffix, Array.newInstance(CLASS_FILE_ATTRIBUTE, 0))); -++ } -++ -++ } catch (IllegalAccessException e) { -++ LOGGER.log(Level.SEVERE, "Exception caught", e); -++ LOGGER.log(Level.WARNING, "Error invoking java.nio API, temp file (path: {0}, prefix:{1}, suffix:{2}) being created using old java.io API.", -++ new Object[]{dir != null ? dir.getAbsolutePath() : null, prefix, suffix}); -++ return File.createTempFile(prefix, suffix, dir); -++ -++ } catch (InvocationTargetException e) { -++ LOGGER.log(Level.SEVERE, "Exception caught", e); -++ LOGGER.log(Level.WARNING, "Error invoking java.nio API, temp file (path: {0}, prefix:{1}, suffix:{2}) being created using old java.io API.", -++ new Object[]{dir != null ? dir.getAbsolutePath() : null, prefix, suffix}); -++ return File.createTempFile(prefix, suffix, dir); -++ } -++ } -++ -++ } -++ -++ -++} |